Add function to the room manager to update a specific light source
Relates to #48
Hello! This one comes as advertised, just a function to actually update the existing light data, which might come in handy. Bye! 🙂
Ramblings about hobbyist game development
Add function to the room manager to update a specific light source
Relates to #48
Hello! This one comes as advertised, just a function to actually update the existing light data, which might come in handy. Bye! 🙂
Update the light room assignments when adding/removing walls
Relates to #48
Hi! Not much to add to this, another missing piece done. Hopefully working, the first full integration will show. 🙂
Add support for adding/removing light sources to the room manager (WiP, untested and does not react to wall changes yet)
Relates to #48
Hello! After struggling quite a bit with some unintended changes in my local build environment as well as a slightly demotivating type of tasks to conquer that next milestone this one took a while. However, while it does not look like much (in fact, there is no visual change whatsoever) there is now logic in place to add and remove dynamic light sources. The bad news is, that data isn’t used anywhere yet, let’s see if we can make that happen sometime soon. 🙂
Remove the global ambient light information as this is handled per tile and rename/refactor some structs/members to more acurately reflect their purpose
Hello! Just some more preparation work for more in-depth changes to the ongoing lighting work. In order to keep things at least in the spirit of being atomic this work was done in its own separate commit.
Add version header and a mechanism to add the current git commit hash when building from gitlab
Hi! Unlike the original plan another small feature was added today: commit hashes in the builds (which will dutifully report this as part of the version number now).
That being said, the version number is now also advertised, which is currently at 0.0.2, which in itself does not have any actual meaning yet. The plan is to jump to 0.0.3 as soon as the light topic comes to a close, as that will make OLives look significantly better, but let’s see about that.
Anyway, the reported version number in all its glory:
Riveting!
Fix start-up on Nvidia GPUs
Hello! As mentioned previously OLives would not start up on Windows, however as it turns out that was not really due to Windows, but rather due the Nvidia GPUs being a little less lenient than Intel ones when it comes to creating buffers.
After giving the dev environment on Windows a bit of a refresh I went to debugging and could find a workaround for that rather easily, so here we go again:
That being said, let’s see if we can go back to the topic of “light” again soon 🙂
Show picked device and some further debugging output to the renderer
Resolves #54
Hi! Unfortunately I noticed some issues trying to start the Windows build that it dies when trying to allocate a buffer. Without doing some proper debugging however it is basically impossible to say what is happening, as such I add some more debugging output to the renderer.
Riveting stuff. Let’s hope it will help to narrow the problem down!
Apply local light levels to objects (WiP)
Relates to #45
Hello! After doing the same for both the floor tiles and wall pieces, the same technique is now applied to generic models. As is visible in the video below, this is done on a per-vertex basis and not for an entire object, as otherwise models that are in-between two tiles with substantially different lighting information would look more than a little odd (looking specifically at you here, door and window models).
The whole thing comes with the big caveat, that this still only supports a single set of light information per tile and obviously the calculation of these light values per room is still little more than a stub.
Be that as it may, it still is a nice step forward and doesn’t look too bad either 🙂