Much of AndEngine is implemented in Java, which means that we can implement our own features on top of AndEngine's existing functionality, or even override the said functionality with our own code. When we implemented the rendering of 3D meshes in Chapter 2, Replacing 2D Sprites with 3D Models, we used the existing functionality, including the rendering pipeline.
What we added there was an extension that triggered a new rendering pipeline, which would render the 3D meshes registered with it, to then set its changes back to the original state and return control to AndEngine's rendering pipeline. By implementing things in this manner, we added a significant feature to the engine without touching a single line of code.
The basic way in which class inheritance works is shown in the following graphic. A new class (B) derives from an existing class (A), while choosing to either use the existing methods in the original class (indicated by the linking arrow), or override them (no...