youtube.com/vercidium
This was also initially buggy, producing some strange images:
This was also initially buggy, producing some strange images:
I added a new 'Spotlight' shadow system, which only renders the scene to one depth texture.
I messed up some OpenGL calls which led to these strange glitches:
I added a new 'Spotlight' shadow system, which only renders the scene to one depth texture.
I messed up some OpenGL calls which led to these strange glitches:
All these blocks were being rendered one at a time, which was very slow!
I changed to an instanced rendering system, which brought it up from 48 up to 560 FPS.
All these blocks were being rendered one at a time, which was very slow!
I changed to an instanced rendering system, which brought it up from 48 up to 560 FPS.
I'm using these wooden buildings to highlight issues with classic 'room-based' audio environments.
Check out the thread for the making-of:
I'm using these wooden buildings to highlight issues with classic 'room-based' audio environments.
Check out the thread for the making-of:
I'll definitely need to add some underwater vegetation next
I'll definitely need to add some underwater vegetation next
Before the world was going completely dark at the same time the sun set, when in reality that doesn't happen until after sunset.
#gamedev
Before the world was going completely dark at the same time the sun set, when in reality that doesn't happen until after sunset.
#gamedev
I talk about it more in this free article: www.patreon.com/posts/118330...
#gamedev
I talk about it more in this free article: www.patreon.com/posts/118330...
#gamedev
Using a forward renderer (no more deferred rendering!) and the improved shadows from my last post, I’m at around 370 FPS on average
Using a forward renderer (no more deferred rendering!) and the improved shadows from my last post, I’m at around 370 FPS on average
I changed it to use one HDR gColour buffer like in this article: learnopengl.com/Guest-Articl...
I changed it to use one HDR gColour buffer like in this article: learnopengl.com/Guest-Articl...
It uses a HDR colour buffer, which can store colours greater than 255. If a colour is 300 or brighter, it is extracted into a separate buffer, then downsampled 8 times and upsampled 8 times
When applied to the scene at 10% strength, metal surfaces are nice and shiny:
It uses a HDR colour buffer, which can store colours greater than 255. If a colour is 300 or brighter, it is extracted into a separate buffer, then downsampled 8 times and upsampled 8 times
When applied to the scene at 10% strength, metal surfaces are nice and shiny:
Shadows and clip/light/view space have always confused me. And they still do.
#gamedev
Shadows and clip/light/view space have always confused me. And they still do.
#gamedev
This refactor would take so long without it!
#gamedev
This refactor would take so long without it!
#gamedev
Bindless textures would also solve this, but I'd like to maintain support for older GPUs
Bindless textures would also solve this, but I'd like to maintain support for older GPUs
This uniform class is the only time that glActiveTexture is called, which means uniforms and textures will never be out of sync.
This uniform class is the only time that glActiveTexture is called, which means uniforms and textures will never be out of sync.