![Page 1: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/1.jpg)
© Copyright Khronos Group, 2006 - Page 1
Open Source ProjectsOpen Source Projectsaround the OpenGL ES APIaround the OpenGL ES API
Hans-Martin WillProject Lead, Vincent
![Page 2: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/2.jpg)
© Copyright Khronos Group, 2006 - Page 2
OverviewOverview• Applications of OpenGL ES API
- Application Programs- Games & Game Engines- Libraries and Wappers
• Vincent Project- OpenGL ES 1.x API- OpenGL ES 2.x API
• Q & A
![Page 3: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/3.jpg)
© Copyright Khronos Group, 2006 - Page 3
Pocket BlenderPocket Blender• Port of Blender 3D modeling
application• Windows Mobile
• Case-study for porting legacy OpenGL application to ES:
- Use OpenGL emulation layer to get started - In thise case: Klimt ES
- Convert to OpenGL ES API
• Binary License and GPL• http://russose.free.fr/BlenderPocket/
![Page 4: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/4.jpg)
© Copyright Khronos Group, 2006 - Page 4
Quake 3 ArenaQuake 3 Arena• Port of Quake 3 Arena to Pocket PC• Windows Mobile 2003, 5 in the works
• Code base converted to fixed point!- And many other profile-guided changes- Case study for porting AAA title to mobile
• Playable frame-rates on hardware OpenGL ES implementation
• GPL
• http://www.noctemware.com/q3ce.html
![Page 5: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/5.jpg)
© Copyright Khronos Group, 2006 - Page 5
OGRE Game EngineOGRE Game Engine• Port of OGRE to PocketPCs• Windows Mobile
• Considered one of the best OSS game engines out there
• Great asset tool chain (Collada, Blender, 3dsmax, Maya, …)
• Porting process described in- http://www.gprt.ufpe.br/~grvm/pdfs/
ArtigosCompletos/2006/SVR2006_Limaetal.pdf
• LGPL• Siggraph:
- BOF Thu at 2 pm, #213
• http://www.cin.ufpe.br/~grvm/• http://www.manifestgames.com/
![Page 6: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/6.jpg)
© Copyright Khronos Group, 2006 - Page 6
Torus 3D EngineTorus 3D Engine• Game engine specifically developed for mobile
devices• BREW
• BSP-based• Small footprint, fixed-point math• Exporters for 3dsmax
• BSD License
• http://www.imersiva.com/torus3d.php
• http://sourceforge.net/projects/torus-3d
![Page 7: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/7.jpg)
© Copyright Khronos Group, 2006 - Page 7
Cube EngineCube Engine• Single- and multi-player FPS engine• Simple, but not necessarily resource-conscious
• Windows Mobile, Intel XScale• Zlib/libpng License
• http://www.cubeengine.com/cube_intel_pda/
![Page 8: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/8.jpg)
© Copyright Khronos Group, 2006 - Page 8
GLUT ESGLUT ES• Port of freeglut implementation; most of
GLUT v.3• WinCE and Win32
• Great to get started with OpenGL ES programming
• ZeusCMD Tutorials
• BSD-style license• http://glutes.sourceforge.net
![Page 9: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/9.jpg)
© Copyright Khronos Group, 2006 - Page 9
OpenGL ES 1.0 Sample Reference OpenGL ES 1.0 Sample Reference ImplementationImplementation• Implements OpenGL ES 1.0 API on top of desktop OpenGL 1.3 impl. • Linux
• For development and testing of OpenGL ES 1.0 software on desktop computer
• Not a registered OpenGL ES implementation, but tested against OpenGL ES conformance tests.
• BSD License• http://www.khronos.org/opengles/documentation/gles-1.0c.tgz
![Page 10: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/10.jpg)
© Copyright Khronos Group, 2006 - Page 10
Desktop OpenGL ESDesktop OpenGL ES• Implements OpenGL ES 1.1 API on top of desktop OpenGL 1.5 impl.• Linux, Windows XP, FreeBSD, Mac OS X
• For development and testing of OpenGL ES 1.1 software on desktop computer
• Not a registered OpenGL ES implementation, but tested against OpenGL ES conformance tests.
• BSD License• http://developer.hybrid.fi/dgles/index.html• http://sourceforge.net/projects/dgles
![Page 11: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/11.jpg)
© Copyright Khronos Group, 2006 - Page 11
Misc. Applications & LibrariesMisc. Applications & Libraries• Khronos Coding Contest Entries
- http://www.khronos.org/developers/resources/opengles/
• Fogron- Tron-style game- http://www.podvlivem.net/fogron
• DOGLESS- OpenGL wrapper on top of OpenGL ES API- http://opensource.dylogic.com/DOGLESS/Articles/About.html
• Klimt ES- OpenGL wrapper on top of OpenGL ES API, used by PocketBlender- Contact Daniel Wagner
![Page 12: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/12.jpg)
© Copyright Khronos Group, 2006 - Page 12
![Page 13: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/13.jpg)
© Copyright Khronos Group, 2006 - Page 13
Vincent 3D Rendering Library for Vincent 3D Rendering Library for Mobile DevicesMobile Devices• Provides implementation of OpenGL ES 1.1 API; Common Lite
(fixed point)• Windows Mobile, ARM Linux
• Project created in Aug. 2003 right after release of OpenGL ES specification
• Conformance submission January 2006
• http://sourceforge.net/projects/ogl-es• BSD License
![Page 14: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/14.jpg)
© Copyright Khronos Group, 2006 - Page 14
Project AdoptionProject Adoption
~2000 downloads of binaries for last release;2/3 Windows, 1/3 Linux
All time 24,669 downloads
![Page 15: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/15.jpg)
© Copyright Khronos Group, 2006 - Page 15
Dynamic Compilation TechnologyDynamic Compilation Technology
![Page 16: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/16.jpg)
© Copyright Khronos Group, 2006 - Page 16
What is it used for?What is it used for?
• Learning tool for OpenGL ES API- Windows Mobile is popular!
• Academic research- Mochocki, Lahiri & Cadambi (2006) Power
analysis of mobile 3D graphics, IEEE-CS\DATC- Nadalutti, Chittaro, Buttussi (2006) Rendering of
X3D content of mobile devices with OpenGL ES, Proc. 11th int. conf. on 3D Web Tech.
- Student/thesis projects
• Navigation systems- Based on support requests- Example: MagicMaps2Go
![Page 17: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/17.jpg)
© Copyright Khronos Group, 2006 - Page 17
Vincent3D Rendering LibraryVincent3D Rendering Library• Goal: Develop OSS implementation of OpenGL ES 2.x API• Platform-independent C, later Verilog• Includes GL SL ES to C compiler
• Reference, content development, research• Comes with unit testing framework
• wxWindows Licence (LGPL + distribution)• http://sourceforge.net/projects/ogles2
![Page 18: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/18.jpg)
© Copyright Khronos Group, 2006 - Page 18
Refresher: OpenGL ES 2.x PipelineRefresher: OpenGL ES 2.x Pipeline
![Page 19: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/19.jpg)
© Copyright Khronos Group, 2006 - Page 19
Compilation ProcessCompilation Process
![Page 20: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/20.jpg)
© Copyright Khronos Group, 2006 - Page 20
What’s next?What’s next?• Timeline
Alpha release of runtime Siggraph- Integrate shader language compiler 3Q06- Fully stable release 1Q07
• Outlook - Piecewise conversion to system model- Verilog
• Interested?Get involved!http://ogles2.sourceforge.net
![Page 21: Open Source Projects around the OpenGL ES API](https://reader035.vdocument.in/reader035/viewer/2022062519/56815221550346895dc066ec/html5/thumbnails/21.jpg)
© Copyright Khronos Group, 2006 - Page 21
Questions?Questions?
http://ogl-es.sourceforge.net
http://ogles2.sourceforge.net