Jon liang stepped in to pinch hit on two sessions that the presenters had to miss. OpenGL and Acceleromter. Hit it out of the park. Non Game App Dev Track. 360|iDev San Jose 09
1. Introduction to Accelerometers and
OpenGL ES on the iPhone
Jon Liang
●
Mobility Lead – Mobclix
●
http://www.mobclix.com
●
Jeff LaMarche
●
Author - Beginning iPhone Development: Exploring
●
the iPhone SDK
http://iphonedevelopment.blogspot.com/
●
8. Quartz 2D vs. OpenGL for 2D
Quartz 2D
●
Higher Level API
●
Compatible with
–
CoreAnimation
Easier to Display Text
–
Inverted y-axis
●
OpenGL
●
Low Level API
●
More Control
– Source: Apple
Less Overhead
–
3D
●
9. iPhone Limitations
24 MB of Memory for textures and surfaces.
●
The maximum texture size is 1024 x 1024.
●
2D texture targets are supported; other texture
●
targets are not.
Stencil buffers aren’t available.
●
More Info:
●
http://developer.apple.com/iphone/library/documentation/i
–
Phone/Conceptual/iPhoneOSProgrammingGuide/Graphi
csandDrawing/chapter_6_section_5.html#//apple_ref/doc
/uid/TP40007072-CH10-SW18
10. Open GL → OpenGL ES
Removed glBegin() and glEnd()
●
Use glDrawArrays() or glDrawElements()
●
Added Fixed Point data types
●
Embedded systems often don't have FPU's.
●
Removed convenience functions
●
More lightweight implementation.
●
13. Accelerometer
Hardware
●
3-Axis MEMS Accelerometer
●
Part Number: LIS302DL
–
Max Sample Rate: 400 Hz
–
Max Acceleration: ± 8g
–
No Gyroscope
●
Implications
●
No Direct Angular Acceleration Data
●
Zeroed at Free Fall
●
Limited Amplitude (± 4g per axis)
●
14. Basic Tasks: Signal Processing
Isolating Large Movements
●
Low-Pass Filter:
●
xn = xn-1/2 + x/2
Isolating Small Movements
●
High-Pass Filter:
●
xn = x - xn-1
Sournce: http://jp.physoc.org/content/vol550/issue3/fulltext/873/Figures/HiRes/873-F2.gif