For quite awhile i took a break, getting frustrated with my progress on my framework. recently i've decided to come back with a new plan in mind, get it to the point that it can be used to make something. originally my goal was to fully flesh out each module, while the core and platform modules are mostly done, the original plan was to gnerialize a renderer for DX12, DX11, DX9, OpenGL2.1, OpenGL3.2, OpenGL4.5, OpenGLES2, OpenGLES3, and apple's Metal. this would obviously take awhile, i was also finding problems in unifying the OpenGL and DX api's. finally i've made some decisions to fast track development to the bare minimum of portability. this means that i currently have mostly finished DX11, OpenGL2.1, OpenGL3.2, and ES2 renders. the main goal is to unify these api's into a more generic one that doesn't abstract too much of the underlying graphics concepts(shaders, vertex/uniform/index buffers, framebuffers, textures, etc are all still relevant.) however i do make some alterations to the concept of shaders(rather than being an individual module, a shader is a complete vertex/pixel/geometry unit, and textures/buffers are bound to shaders, not slots.)
overall most of these design requirments have been met, and today i've reached my milestone of supporting iOS, Android, Windows, Mac, and Linux. and as such i have this image:
Each one is now at a point that i can make my game with, granted i only have android to test on(something i coudn't take a pic of since i have no other camera then my android device), so i know that this code might and probably won't work on every possible device out there, but if it hits most of them i'd be happy. my next step is to get the audio module to this point, and finally the network module. once all 5 modules are done, i can make my game, and slowly finish out the framework as i go along. but for now i know that in order for me to find motivation again, i need to get to another project.