9. The Wonderful World of 3D
OpenGL Pixarâs PRMan
Direct X POV
Ogre 3Delight
Quesa Pixie
Aqsis
OSG
VL Lucille
DotC
OpenSG
LuxRender
Mental Ray
3DKit
10. What
⢠A framework for building 3D apps / games,
for Mac & iOS
⢠Common foundation for 3D
⢠Specialized to talk to various libs / tools
⢠Good Cocoa citizen
11. Conceptualizing (a bit)
App ⢠Computer Graphics
Math
Ceed3DGL Ceed3DRenderMan ...
⢠3D Data
Representation(s)
Ceed3D
⢠Object Graph(s)
â˘
GL CeedMath Foundation
Rendering Interfaces
14. Objects Talk Together
Value Sphere A
1.7 Radius
Cube B
Transform
Parent Transform
Cube C
Transform
Size
Style Group 1 Style Group 2
15. Coping with Diversity
⢠Objective-C is high level
⢠Sometimes, subclassing is your enemy
⢠And then, categories are your friend
⢠Renderer interface & ďŹle read/writeâs as
categories of existing classes
17. Focus on OpenGL
⢠Modern OpenGL only (no legacy calls)
⢠Support for OpenGL ES
⢠Sophisticated Shader DeďŹnition
18. Focus on OpenGL
⢠Modern OpenGL only (no legacy calls)
⢠Support for OpenGL ES
⢠Sophisticated Shader DeďŹnition
Ceed3DGL ⢠Thin Objective-C layer for
OpenGL
CeedGL
Ceed3D ⢠Encapsulates GL objects
(texture, buffer, framebuffer, program,
shader...)
GL CeedMath ⢠DeďŹnes Draw Commands
19. Cocoa Interactions
⢠KVO / KVC: easy access to object inputs/outputs
⢠Core Image: CIImage used as textures, CIFilter as post
process ďŹlters on rendered image
⢠Quartz: NSBezierPath used as geometry source, incl. glyphs
⢠Quartz Composer: Ceed3D should be able to render as a
QCPlugin, QC outputs usable as Ceed3D textures
⢠Grand Central Dispatch: Parallelism for computations
⢠OpenCL: Geometry ďŹlters
24. Availability
⢠Work in progress
⢠Low-level, stable parts will be released as
open source soon
⢠We want to release more later...
⢠Stay tuned!