Huge update!
I decided to turn this into a utility library instead of an engine. So, here’s my first update of the new library. Please note that some of the code I’m using I’ve taken from other people over the years. Basically, code hoarding. It’s temporary until I decide to re-write it, but oh well.
Changelog:
------------
Now have:
Camera (interface for easy creation of different types of cameras)
Camera3D (as the name implies, this camera, which implements Camera, is a 3D camera
Color4f (Small color class, nothing special besides pre-made primary colors)
ErrorHandler (the start to my errorhandler class, just prints out statements and will later allow the creation of custom Java errors)
GameLoop (Utility class (dependent upon Time.class) that creates, and runs, a gameloop at a fixed FPS rate. Still needs a little work (pausing and resuming)
Model (Small utility class that holds vertex and normal information for a model)
ModelFace (Small utility class that creates new model face out of triangles)
OBJLoader (Loads an .obj file and is dependent upon Model and ModelFace)
ResourceManager (took the general idea of this class from wessles' engine (sorry!), it holds hashmaps that store data. I added support for adding in your own custom hashmaps, so you aren't stuck with my hard coded ones. Still need to work on it a little and add more stock maps.)
Screen (implements ScreenObject, its an abstract class that holds methods for things such as initialization, rendering updating and disposing. Required by the GameLoop class)
ScreenObject (interface that holds the above mentioned methods, nothing special)
Shader (Reads and stores into memory a vertex and fragment shader. Need to update some more)
ShaderProgram (Dependent upon Shader.class, creates and allows for the usage and deletion of shaders. Need to add the ability to push uniforms, that's coming soon!)
SpriteBatch (Large class, only half complete, that batches geometry together for rendering. It utilizes VBOs and VAs to render static geometry and dynamic geometry, respectfully.)
Texture (Utility class to load and bind textures. Only half done)
Time (Small utility class that gets the current time and handles the delta)
Vector2f (Two dimensional vector. All the math is complete!)
Vector3f (Same as above just three dimensional and with more complex math)
Window (Static utility class that creates, updates and destroys the current OpenGL/Window context. Still need to add support for different display modes and other stuff.)
So, that was a huge list (Looks significantly smaller when actually looking at! it, oh well!) I’ll probably release the first version once the sprite batcher is finished, so maybe in a few days. For now, here’s the repo to go look at all the code! Sorry, its very undocumented!
NEngine
The current code is under GLUtils! Any suggestions are greatly appreciated!