One of the things to note about AndEngine is that it is, in the first place, a 2D game engine. Although meshes got added quite recently, they are basically meant to be used like polygon models, meaning 2D-only. This makes our life somewhat hard when we try to add functionality similar to what was covered in the preceding Android OpenGL application.
Fortunately, we do not have to use all the existing features in AndEngine. We can implement much of our functionality in parallel, interacting with the AndEngine code only where necessary or desirable.
Our starting point is, of course, the same as with any general AndEngine-based application—using a BaseGameActivity
as the foundation. From here, we have to implement our own shape-derived class as well as our own VertexBufferObject
and ShaderProgram-based implementation.
We create the following files in our project:
MainActivity.java
ModelData.java
Scene3D.java
Camera3D.java
Actor3D.java
Mesh3D.java
ShaderProgram3D.java
We also...