adamschackart / AXLE3D

A modular collection of game libraries for Python and/or C++.
20 stars 1 forks source link

gl_core: Modernize OpenGL layer #10

Open adamschackart opened 6 years ago

adamschackart commented 6 years ago

This will be a big deal, as it might involve writing a cross-compiler. Or if we don't want to do that, simply having a prefabricated set of shaders selectable via an enum, or best of all, an ubershader. Also, gl_buffer is definitely in need of vertex buffer objects. Can we implement the particle system in compute???

adamschackart commented 6 years ago

There are also lots of texturing features that will need to be added. Framebuffer/render-to-texture support, mipmapping (we already have a nice image resizing pipeline to help with this), bumpmapping/normal maps, cubemaps, and multitexturing for pre-baked lightmaps. I would also like to add some really stark Doom3-esque stencil shadows, and better depth buffer functionality (whatever that would entail).

adamschackart commented 6 years ago

One issue is where/how to store tangents and bitangents in the Buffer object in a way that makes sense. Should they be added to the ae_vertex interleaved arrays specification, or should they be kept separately (which is kind of awkward conceptually, but probably better implementation-wise).