Bako Nikola 3761808 R Sveuilite u Zagrebu Fakultet
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 ◦ Krajem 2001. godine Don je osnovao firmu Andes Computer Engineering
Open. Scene. Graph � Portable � high level graphics toolkit for the development of high peformance graphics applications ◦ Simulatori leta, igre, prividna stvarnost, znanstvena vizualizacija � Pruža objektno orijentirano okruženje � Oslobađa programera od implementacije i optimizacije poziva grafike niskog nivoa � Pruža mnoge druge Open. Scene. Graph dodatne alate za brz Open. GL razvoj grafičkih aplikacija Jezgra OS, UNIX
Scene Graph �Jednostavan poredak čvorova koji hijerarhijski reprezentira 3 D scenu �Struktura 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 Open. GL aplikacija svaki frame iscrtava ispočetka
Scene Graph … �NIJE! (ali može biti dio) ◦ Game engine ◦ Simulation engine �Primarni fokus mu je reprezentacija 3 D svijeta i njegovo efikasno renderiranje ◦ Fizički modeli, detekcija sudara i zvuk prepušteni su drugima
Performanse [Open. Scene. Graph] �Frustrum culling �Occlusion culling �Small feature culling �Level Of Detail (LOD) nodes �State sorting �Vertex arrays �Display lists (as part of the core scene graph)
Produktivnost [Open. Scene. Graph] �Učahuruje osnovnu Open. GL funkcionalnost �Omogućava optimizaciju iscrtavanja �Brzo kombiniranje nekoliko poziva objekata umjesto više desetaka linija koda sa Open. GL �Uzorak dizajna Composite (struktura stabla) �Proširivost, čistoća koda, laka adaptibilnost, kombiniranje s ostalim bibliotekama i pluginovima
Portabilnost [Open. Scene. Graph] �Dizajniran tako da ima minimalni broj ovisnosti, nešto više nego Standardni C++ i Open. GL IRIX Linu x Wind ows Free BSD MAC OSX Sola ris HPUX Play. Sta tion 2 Skalabilnost �Podržava više grafičkih konteksta (Open. GL Display Lists i objekte teksture)
Biblioteke � Core Libraries ◦ osg- core Open. Scene. Graph library ◦ osg. Util - utility library ◦ osg. DB - database reading and writing library � Nodekits ◦ ◦ ◦ osg. FX - Special effects framework Node. Kit osg. Particle - Particle System Node. Kit osg. Sim - Visual simulation Node. Kit osg. Terrain - Terrain generation Node. Kit osg. Text - True Type text Node. Kit � Windowing Utility libraries ◦ osg. GA - Gui Abstraction library ◦ osg. Producer - Viewer library integrating Open. Scene. Graph with Producer
Open. Scene. Graph 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 3 d database plugins : � 3 dc / ac 3 d / directx / dw / flt / geo / Inventor / ive / lib 3 ds / logo / lws / md 2 / obj / osg / pfb ◦ List of available movie & image plugins � tga / tiff / quicktime / rgb / pic / png / pnm / bmp / dds / gdal / gif / jp 2 / jpeg / mpeg � Stereo visualization
�DEMO, �Q&A primjeri
- Slides: 11