bakoš nikola 37618/08-r

11
Bakoš Nikola 37618/08-R Sveučilište u Zagrebu Fakultet organizacije i informatike Varaždin 19.1.2010

Upload: skyler-barnett

Post on 31-Dec-2015

20 views

Category:

Documents


0 download

DESCRIPTION

Bakoš Nikola 37618/08-R. Sveučilište u Zagrebu Fakultet organizacije i informatike Varaždin. 19.1.2010. Uvod. Povijest 1998. Don Burns Započeo kao hobi projekt: simulator leta zmajem 1999. Robert Osfield Rujan, 1999. open source - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Bakoš Nikola 37618/08-R

Bakoš Nikola37618/08-R

Sveučilište u ZagrebuFakultet organizacije i informatike Varaždin

19.1.2010

Page 2: Bakoš Nikola 37618/08-R

UvodPovijest

◦1998. Don Burns Započeo kao hobi projekt: simulator leta

zmajem

◦1999. Robert Osfield◦Rujan, 1999.

open source

◦Krajem 2001. godine Don je osnovao firmu Andes Computer Engineering

Page 3: Bakoš Nikola 37618/08-R

OpenSceneGraphPortablehigh level graphics toolkit for the

development of high peformance graphics applications ◦ Simulatori leta, igre, prividna stvarnost,

znanstvena vizualizacijaPruža objektno orijentirano okruženjeOslobađa programera od implementacije i

optimizacije poziva grafike niskog nivoaPruža mnoge druge

dodatne alate za brz razvoj grafičkih aplikacija

Jezgra OS, UNIX

OpenSceneGraph

OpenGL

Page 4: Bakoš Nikola 37618/08-R

Scene GraphJednostavan poredak čvorova koji

hijerarhijski reprezentira 3D scenuStruktura stabla

◦Korijen – obuhvaća cijeli virtualni prostor Čvorovi – transformacije i stanja iscrtavanja Listovi – geometrija (… tijela …)

Scene Graph se kreira i održava kroz cijelu aplikaciju (njezin rad) dok se kod OpenGL aplikacija svaki frame iscrtava ispočetka

Page 5: Bakoš Nikola 37618/08-R

Scene Graph …NIJE! (ali može biti dio)

◦Game engine◦Simulation engine

Primarni fokus mu je reprezentacija 3D svijeta i njegovo efikasno renderiranje◦Fizički modeli, detekcija sudara i

zvuk prepušteni su drugima

Page 6: Bakoš Nikola 37618/08-R

Performanse[OpenSceneGraph]

Frustrum cullingOcclusion cullingSmall feature cullingLevel Of Detail (LOD) nodesState sortingVertex arraysDisplay lists (as part of the core scene graph)

Page 7: Bakoš Nikola 37618/08-R

Produktivnost[OpenSceneGraph]

Učahuruje osnovnu OpenGL funkcionalnost

Omogućava optimizaciju iscrtavanjaBrzo kombiniranje nekoliko poziva

objekata umjesto više desetaka linija koda sa OpenGL

Uzorak dizajna Composite (struktura stabla)

Proširivost, čistoća koda, laka adaptibilnost, kombiniranje s ostalim bibliotekama i pluginovima

Page 8: Bakoš Nikola 37618/08-R

Portabilnost[OpenSceneGraph]

Dizajniran tako da ima minimalni broj ovisnosti, nešto više nego Standardni C++ i OpenGL

SkalabilnostPodržava više grafičkih konteksta

(OpenGL Display Lists i objekte teksture)

IRIX

Linux

Windows

FreeBSD

MAC

OSX

Solaris

HP-UX

PlayStation2

Page 9: Bakoš Nikola 37618/08-R

Biblioteke Core Libraries

◦ osg- core OpenSceneGraph library◦ osgUtil - utility library◦ osgDB - database reading and writing library

Nodekits◦ osgFX - Special effects framework NodeKit ◦ osgParticle - Particle System NodeKit ◦ osgSim - Visual simulation NodeKit ◦ osgTerrain - Terrain generation NodeKit ◦ osgText - True Type text NodeKit

Windowing Utility libraries◦ osgGA - Gui Abstraction library ◦ osgProducer - Viewer library integrating

OpenSceneGraph with Producer

Page 10: Bakoš Nikola 37618/08-R

OpenSceneGraph distribucija Aplikacije

◦ osgviewer - scene graph viewer

◦ osgconv - database conversion tool

◦ osgarchive - scene graph archiving tool

◦ osgdem - geospecific terrain database generation tool

Plugins◦ List of available 3d database plugins :

3dc / ac3d / directx / dw / flt / geo / Inventor / ive / lib3ds / logo / lwo / lws / md2 / obj / osg / pfb

◦ List of available movie & image plugins tga / tiff / quicktime / rgb / pic / png / pnm / bmp / dds / gdal / gif / jp2 / jpeg / mpeg

Stereo visualization

Page 11: Bakoš Nikola 37618/08-R

DEMO, primjeri

Q&A