Cocoa Design Patterns
Learning OpenGL ES for iOS
Presentations
Buy at Amazon Now
  • Cocoa Design Patterns
    Cocoa Design Patterns
    by Erik M. Buck, Donald A. Yacktman
  • Learning OpenGL ES for iOS: A Hands-on Guide to Modern 3D Graphics Programming
    Learning OpenGL ES for iOS: A Hands-on Guide to Modern 3D Graphics Programming
    by Erik M. Buck

Errata > Some things

1) Page 82, first paragraph: "GLKTextureEnvModeModulate" needs to be one word, not two.
2) The coordinate systems on page 119 and following: As I learned in school the arrows of a coordinate system define where the higher (positive) numbers are. So making a 3D coordinate system with six arrows makes no sense to me.
3) Page 124 "Orders Matter". In my opinion they don't. They only do if you configure the transformations in a wrong way. If you only change the order of the transformations without changing the values and the axes than you would get a different result, of course. But if you also change the values and the axes than you would get the exact same results. Look at these screenshots of your app:

S1) http://s1.directupload.net/images/130527/j5buo6ha.png
S2) http://s7.directupload.net/images/130527/iefgksqe.png

They produce the same output with switched order.

Have a nice day !
May 27, 2013 | Unregistered CommenterJörg Kirchhof
Thank you for taking the time and interest to submit your observations.

Regarding "The coordinate systems on page 119 and following: As I learned in school the arrows of a coordinate system define where the higher (positive) numbers are."
I suspect different schools and text books may use different styles for diagrams. In this case, the arrows indicate increasing magnitude regardless of sign (as I learned in school). The axis vectors are conceptually no different from other vectors using arrows to indicate direction. A negative vector will have an arrow pointing in the opposite direction of a positive vector. Each cardinal axis extends infinitely in both positive and negative directions.

Regarding "Page 124 'Orders Matter'. In my opinion they don't." Translation applied to a matrix is a "Commutative" operation similar to addition. ( a + b == b + a) Both rotation and scaling applied to a matrix are "Noncommutative" operations like division. (a / b != b / a) There is a nice summary with a matrix example at https://en.wikipedia.org/wiki/Commutative_property.
May 28, 2013 | Registered CommenterErik Buck