Chapter 10. OpenGL ES: Going 3D

Super Jumper worked out rather well with our 2D OpenGL ES rendering engine. Now it's time to go full 3D. We actually already worked in a 3D space when we defined our view frustum and the vertices of our sprites. In the latter case the z-coordinate of each vertex was simply set to zero by default. The difference from 2D rendering isn't all that big, really:

  • Vertices not only have x- and y-coordinates, but also a z-coordinate.

  • Instead of an orthographic projection, we use a perspective projection. Objects further away from the camera will appear smaller.

  • Transformations, such as rotations, translations, and scales, have more degrees of freedom in 3D. Instead of just moving the vertices in the x-y plane we can now move ...

Get Beginning Android Games now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.