26 lines
1.6 KiB
Markdown
26 lines
1.6 KiB
Markdown
# Project update 2023-02-26
|
|
Things are going quite smoothly but I feel like I'm a bit stuck where I am now.
|
|
There are parts of the engine that actually work really great and a few parts
|
|
that do not.
|
|
|
|
Currently, here are the parts of the engine that I think need a total rework, or
|
|
need more work to make good;
|
|
- Fonts. Currently they work "ok" but it's difficult to common font things, and
|
|
they are acting inconsistent. All fonts should "basically be the same", but
|
|
whenever I change fonts the baselines and line heights go WAY off. I also
|
|
believe it should be easier to change font colors, including in the MIDDLE of
|
|
a word. I also still need to handle things like variable replacement mid-text
|
|
so that I can do, say, %playername% or similar.
|
|
- Physics. It is brand new and still generally good how it is, but it will for
|
|
sure need revisiting at some point.
|
|
- State Management. This is more of a conceptual thing but I'd like to make it
|
|
easier for states to be influenced by properties, e.g. changing position can
|
|
be done with a simple += rather than a get() and set().
|
|
- Item Repositories. At the moment Scene items are attached to the scene, and
|
|
then components are attached to those, it should be more performant to simply
|
|
have each scene item type have a repo, and then map sceneitem ids to those.
|
|
That will improve performance of a lot of things, and make the memory
|
|
footprint smaller too.
|
|
- Using std:: methods more. I've learned a tonne of C++ since I started this
|
|
project, I'd love to use std pointers if they weren't a bit annoying, and
|
|
also use the std::function to support anonymous functions. |