You are browsing as a guest. Sign up (or log in) to start making projects!

3h 1m 44s logged

Bugs bugs bugs…

I’ve been working on a demo project to both test the engine properly (looking for bugs and all), and also have something to actually show off made in my engine…
this is the project you’ve been seeing in the last couple logs btw :)

of course… since I’ve been using the editor for actual “work”, I have found a bunch of bugs.

the biggest one being the entity ID situation… or.. disaster?

changes

the entity ID mess

in the past, out of laziness…
entity ID 0 was being used as both a real, valid entity handle and the “no entity / invalid” value depending on where you looked.

which worked fine… mostly because of pure luck.

the annoying part was that after working on this for a while I wasn’t even sure anymore if I was using 0, -1, or something else for invalid entities.. yep..

so I finally cleaned it up

there is now a proper INVALID_ENTITY_ID constant, and entity index 0 is reserved for invalid entities. real entities now start from 1.

went through and replaced a bunch of random == 0 / != 0 checks across ECS, serialization, prefab handling, editor panels, and scripting bindings.

project templates

added support for multiple project templates.

new project creation now scans the Templates/ folder instead of everything being hardcoded to “Default”.

currently has:

  • DemoProject
  • Empty

the demo project is mostly there to show off the newer UI/scripting stuff (the same demo as mentioned before), while Empty is just a completely blank scene.

hierarchy & transforms

fixed entity and UI reparenting.

previously moving something to a new parent could randomly change its position because it was just applying the new local transform

now reparenting keeps the world transform, so dragging things around in the hierarchy behaves properly

UI & text rendering

fixed a bunch of UI text issues.

  • text now centers vertically using actual glyph metrics instead of a random offset I was “pretty sure” was correct

    it was not, in fact, correct

  • button text now scales to fit inside the button
  • fonts can now load directly from VFS memory instead of requiring a real filesystem path

the VFS font loading one was something I completely forgot about when testing outside packaged projects… oops.

packaging

implemented .pakignore

instead of a hardcoded ignore list, the packer now supports gitignore-style patterns in a .pakignore file and properly skips ignored folders/files

also fixed a few smaller packaging issues while testing exported projects.

misc

a bunch of smaller things:

  • map save/load dialogs now default to the project maps folder
  • fixed scene switching bindings in editor play mode
  • fixed a lightmap redraw bug
  • font importer now only accepts .ttf / .otf
  • added a small README with build instructions since im planning on publishing the repo soon (and writing all the docs… scary..)

nothing super flashy this time.. but important

0
8

Comments 0

No comments yet. Be the first!