OpenGL ES for iOS (3D Graphics)
Upcoming SlideShare
Loading in...5
×
 

OpenGL ES for iOS (3D Graphics)

on

  • 2,419 views

 

Statistics

Views

Total Views
2,419
Views on SlideShare
1,869
Embed Views
550

Actions

Likes
0
Downloads
15
Comments
0

13 Embeds 550

http://www.inquinity.com 395
http://www.altmansoftwaredesign.com 67
http://altmansoftwaredesign.com 41
http://inquinity.com 23
http://inquinity.biz 6
http://inquinity.info 5
http://shoshiday 4
http://www.altmansoftware.biz 4
http://translate.googleusercontent.com 1
http://altmansoftware.biz 1
http://robin 1
http://inquinity.mobi 1
http://www.verious.com 1
More...

Accessibility

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • \n
  • \n
  • \n
  • 1. OpenGL: hardware optimized display layer\n2. Desktop vs. Mobile\n3. Different generations\n4. Fixed function simpler\n5. Programmable more powerful\n6. Security Questions: Graphics a the new viruses.\n\n
  • OpenGL on desktop platforms\n
  • OpenGL ES on mobile platforms\n\nSubset of OpenGL\n\nPhone7 supports Direct3D\n
  • Surfaces are defined by vertices\nSurface normals define which way a surface is facing\nSpecialized structure allow re-use of vertices to minimize data size\nTextures are samples of material which are applied to surfaces\n\nMain operations: Translation, Rotation, Scaling.\nLighting: sources, position, intensity, color, type\n\n
  • Surfaces are defined by vertices\nSurface normals define which way a surface is facing\nSpecialized structure allow re-use of vertices to minimize data size\nTextures are samples of material which are applied to surfaces\n\nMain operations: Translation, Rotation, Scaling.\nLighting: sources, position, intensity, color, type\n\n
  • Demo apps\nWritten by Nate Robins, http://user.xmission.com/~nate/tutors.html\nOld Projects\nSource in C (Visual Studio 6, Visual Studio.NET, OS/X (PowerPC)\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • 1. UI operation\n2. Select objects\n3. Object grouping\n4. Window split/merge\n\n
  • Wavefront OBJ is very common\nCollada is one of many interchange formats\nPOD = Plain Old Data\n\nConversion scripts\nImport from \n
  • camera.mtl\ncamera.obj\n\ncamera.h\n\nobj2opengl\nCollada2POD\nCollada2PODGUI\n
  • \n
  • \n
  • Demo App\n
  • \n
  • \n

OpenGL ES for iOS (3D Graphics) OpenGL ES for iOS (3D Graphics) Presentation Transcript

  • 3D Graphics
  • Robert Altman Software Entrepreneur Altman Software Design, LLC Lead iOS Developer, Telvent DTNrobert@AltmanSoftwareDesign.com @mStyle www.inquinity.com
  • Tuesday(7:40-9AM(•(Benchmark(Learning,(Edina(
  • OpenGLHardware optimized 3D rendering engineOpenGL ES (Mobile) and OpenGL (Desktop) OpenGL ES 1.0 == OpenGL 1.3 -- Fixed function (integer) OpenGL ES 1.1 == OpenGL 1.5 -- Fixed function OpenGL ES 2.0 == OpenGL 2.0 -- Programmable pipeline
  • Open GL
  • Open GL ES
  • 3D Data Operation Vertices Translation Surfaces RotationSurface Normals ScalingVertex Normals Lighting Materials Shading
  • PolygonsOpenGL supports Triangles and QuadsOpenGL ES supports Triangles Remember this...
  • Demofoglight materiallight positionprojectionshapestexturetransformation
  • iOS and OpenGLOpenGL ES 1.1 supported everywhereOpenGL ES 2.0 supported starting with iPhone 3GS (2009)EAGLView and Xcode template DemoPerformance ToolsApple sample (there is a template!)
  • 3D ModelingModeling and AnimationPlethora of formats (Wavefront OBJ, POD, Collada, Maya)Applications: Commercial, or blenderThriving marketplaces for models
  • blenderFront View Numpad-1Back View Control-Numpad-1Left Side View Numpad-3Right Side View Control-Numpad-3Top View Numpad-7Bottom View Control-Numpad-7Rotate Model Numpad-2, 4, 6, 8Move Model Control-Numpad-2, 4, 6, 8Zoom Model Numpad-Plus and Numpad-MinusToggle Perspective/Orthogonal Numpad-5Toggle Model/Camera View Numpad-0
  • blender !! User preference to “Emulate 3-button mouse” RMB = Two-finger click on track pad Fine control is difficult with mouse or trackpad Multi-touch TrackpadRotate Model Two finger rotateMove Model Two finger dragZoom Model Two finger pinch
  • blenderDemo
  • 3D File FormatsWavefront OBJColladaPOD... Many others!C/C++ header fileWhat will your app support?
  • 3D DataQuick Demo
  • 3D IconPrepare model in blenderExport to PNGPhotoshop iOS icon template (pixelresort)Export multiple sizes of image
  • iPad Application Demo
  • ResourcesManiacDevStackOverflowJeff LaMarchNeHe ProductionsNate Robins “tutors”Any good gaming development sitePhillip Rideout Book
  • OpenGL ES for iOS Robert Altman Software Entrepreneur Altman Software Design, LLC Lead iOS Developer, Telvent DTNrobert@AltmanSoftwareDesign.com @mStyle www.inquinity.comResources, presentation, and other links will be posted on blog