Finally reached the point where I nodded to myself and thought 'Yeh it looks like a game now', so thought I'd share my latest far from finished project (still needs a proper name even):
Loosely maintaining a devlog on itch where you can see how fugly it used to look:
https://bimbam360.itch.io/loftly-project/devlog
Still loads of visual oddities, such as Godray light bleeding at certain angles, seemingly due to the camera FOV (which I don't want to change). Also, the textures in the many places are completely off to what they look like in Blender which is annoying, but I will fiddle with them down the line anyway as 'needs more surface imperfections/grungey decals'. But if your wondering why the ground outside is so bright, this is why lol.
Speaking of outside, while you can't see it in this video, there IS a forest that leads off to a cliff. This is handled by a LOD system I pulled from my previous game (which is on hold) so while inside the house you will only see the outlines/shadows caused by imposter meshes. Get closer and the quality ramps up.
Similarly to keep the frame rate stable(ish), I use a more ugly approach manually defining area nodes to dictate when a room is visible or not.
FrameRates on a RTX2060 are around ~70-90 depending on the room, which is frankly not great considering the relative lack of complexity, but from what I've experienced so far, kinda expected this. Looking forward to Godot 4 and some of that juicy Vulkan goodness!
A fairly large chunk of performance can be gained by simply turning off Godrays and shadows. Godrays and world shadows I'd rather keep, but shadows from the torch are barely visible atm as weirdness occurs when you offset it for some reason, so these can go I imagine.
I did try creating an array of decreasing intensity omnilights along the length of the torchlight using a raycast to define the spacing/end to give more interesting dynamic-esque shadows, which worked to a degree but looked buggy more often than not. I still think it conceptually could work, but would require an array of raycasts across the crosssection of the torchlight to identify the closest item that has received light, at which point performance is gonna start being impacted pretty badly I think.
Also there will be further optimisations down the track bundling textures, chunking stuff more and so on, so not too concerned just yet.
Anywho enough for now. I've got paying work again atm so far less time to spend on this than I would have liked -.-
Thanks and comments/performance suggestions welcome!