I've been fixing a lot of issues over that passed week. First, the editor would crash on exit, due to a memory leak. I fixed this by deleting the ChaiScript object before the main function exited. Another issue was that scenes wouldn't save if you didn't select them first in the Scene Settings. That is also now fixed.
With all the issues and bugs out of the way, I can start working on more interesting stuff.
What I'm going to be working on next:
- The exporting of projects. The way games are run in Crimson at the moment, the game needs the Assets folder to sit right next to the executable. I'll be working over the next couple of days to create a system of packaging all the assets into a single file, which can be unpacked and used by the engine.
- New components, namely:
- Tilemap support. This is pretty much required in any good 2D game engine.
- A new particle system, with more features than the old one.
- Shader support. I'm not sure if this is possible using SFML (the framework I'm using to create this engine) but I would like to have a system where you can write shaders in GLSL (or some other shading language) to apply pretty effects to sprites
- Animated sprites. Again, this is a must-have for a 2D engine.
- A physics engine. I'll have a go at implementing my own solution, and if that fails (likely), then I'll be using Box2D.
- A simple GUI library. While I could just give users access to ImGui (what the editor uses), I would like to have a basic GUI library containing buttons, drop-downs, sliders, and text inputs.
After I've finished (or partly finished) the above things, I'm going to make an itch.io page for the engine, so that I can (hopefully) get some feedback on what improvements need to be made in order to bring this engine to a point where it is usable for creating games.