While the Cardboard Java SDK and OpenGL ES are powerful and robust libraries for mobile VR applications, they're pretty low level. Software development best practices expect that we abstract common programming patterns into new classes and data structures. In Chapter 3, Cardboard Box, we got some hands-on experience with the nitty gritty details. This time, we're revisiting those details while abstracting them into a reusable library that we'll call RenderBox. There'll be vector math, materials, lighting, and more, all rolled up into a neat little package.
In this chapter, you will learn to:
Create a new Cardboard project
Write a
Material
class with shadersExplore our
Math
packageWrite a
Transform
classWrite a
Component
class withRenderObject Cube
,Camera
, andLight
componentsAdd a
Material
class for rendering cubes with vertex colors and lightingWrite a
Time
animation classExport all this into a
RenderBox
library for reuse
The source code for this project can be...