I've implemented basic 3D functionality and made little "2.5D" demo in orthographic projection using OpenGL ES 2 and Box2D.
Now I want to make completely two-dimensional game (using sprites) and consider 2 variants:
- Implement 2D graphics separately from 3D in separate layer, leave 3D stuff in background, draw 2D using various simplified algorithms (disable depth testing, simplified culling etc.)
- Leave everything as is and use billboards for sprites
Currently I use hierarchical system of entities with matrix transformations. I know about computational complexity of 3D and 2D graphics and believe first method should result in faster code, though it's my first engine and my google-fu fails me this time, so I'm not sure about it.
Engine is Desktop/Mobile.
What method would you recommend? Does implementing first method worth it (in performance aspect)?