James Yarwood
@jamesyarwood.bsky.social
Software Engineer and #indiedev. Writing a C++ #gameengine in my spare time.
With most of the pipeline management stuff out of the way, I've started implementing depth buffering support. The difference isn't very obvious in the screenshots!
#Vulkan #gameengine #gamedev #indiedev
#Vulkan #gameengine #gamedev #indiedev
October 12, 2025 at 6:44 PM
With most of the pipeline management stuff out of the way, I've started implementing depth buffering support. The difference isn't very obvious in the screenshots!
#Vulkan #gameengine #gamedev #indiedev
#Vulkan #gameengine #gamedev #indiedev
Not much visual progress this month. I've been working on the beginnings of a render graph system which is progressing nicely. Now it's able to render more than 1 type of mesh/shader to the same render target.
#Vulkan #GameEngine #indiedev #gamedev
#Vulkan #GameEngine #indiedev #gamedev
September 25, 2025 at 7:06 PM
Not much visual progress this month. I've been working on the beginnings of a render graph system which is progressing nicely. Now it's able to render more than 1 type of mesh/shader to the same render target.
#Vulkan #GameEngine #indiedev #gamedev
#Vulkan #GameEngine #indiedev #gamedev
With memory allocation out of the way, I've been working on a custom #glTF loader. It's now able to load basic mesh data, but there is still lot of work to do on it.
For the video, I'm using planet.gltf from the vulkan samples library.
#vulkan #gamedev #gameengine #indiedev
For the video, I'm using planet.gltf from the vulkan samples library.
#vulkan #gamedev #gameengine #indiedev
August 17, 2025 at 8:14 PM
With memory allocation out of the way, I've been working on a custom #glTF loader. It's now able to load basic mesh data, but there is still lot of work to do on it.
For the video, I'm using planet.gltf from the vulkan samples library.
#vulkan #gamedev #gameengine #indiedev
For the video, I'm using planet.gltf from the vulkan samples library.
#vulkan #gamedev #gameengine #indiedev
I've been working on a custom #vulkan memory allocator, for self-teaching. Works better than expected, with block allocation, basic defragmentation, typed memory, virtual map/unmap and more.
But, I recommend using VMA if you want to skip memory management: gpuopen.com/vulkan-memor...
#gamedev
But, I recommend using VMA if you want to skip memory management: gpuopen.com/vulkan-memor...
#gamedev
August 8, 2025 at 4:59 PM
I've been working on a custom #vulkan memory allocator, for self-teaching. Works better than expected, with block allocation, basic defragmentation, typed memory, virtual map/unmap and more.
But, I recommend using VMA if you want to skip memory management: gpuopen.com/vulkan-memor...
#gamedev
But, I recommend using VMA if you want to skip memory management: gpuopen.com/vulkan-memor...
#gamedev
Many hours have gone into implementing automatic shader binding, but it would have been many more without #RenderDoc. This tool helps immensely in finding issues with your vulkan/DX API calls!
It provides a detailed breakdown of the GPU state for any captured frame.
#gamedev #gameengine #vulkan
It provides a detailed breakdown of the GPU state for any captured frame.
#gamedev #gameengine #vulkan
July 13, 2025 at 7:35 PM
Many hours have gone into implementing automatic shader binding, but it would have been many more without #RenderDoc. This tool helps immensely in finding issues with your vulkan/DX API calls!
It provides a detailed breakdown of the GPU state for any captured frame.
#gamedev #gameengine #vulkan
It provides a detailed breakdown of the GPU state for any captured frame.
#gamedev #gameengine #vulkan
Everything is back up and running in my vulkan renderer after implementing automatic shader mapping/binding using the @shader-slang.bsky.social API.
It's now possible to set shader parameters by name instead of using the raw descriptor set/write API.
#vulkan #gameengine #rendering #gamedev
It's now possible to set shader parameters by name instead of using the raw descriptor set/write API.
#vulkan #gameengine #rendering #gamedev
July 13, 2025 at 7:05 PM
Everything is back up and running in my vulkan renderer after implementing automatic shader mapping/binding using the @shader-slang.bsky.social API.
It's now possible to set shader parameters by name instead of using the raw descriptor set/write API.
#vulkan #gameengine #rendering #gamedev
It's now possible to set shader parameters by name instead of using the raw descriptor set/write API.
#vulkan #gameengine #rendering #gamedev
Finally completed the initial implementation of @shader-slang.bsky.social in my engine. Now working on descriptor pool/set management and a shader <-> mesh binding system.
Will hopefully have something nice to show soon!
#vulkan #gameengine #gamedev
Will hopefully have something nice to show soon!
#vulkan #gameengine #gamedev
June 28, 2025 at 2:27 PM
Finally completed the initial implementation of @shader-slang.bsky.social in my engine. Now working on descriptor pool/set management and a shader <-> mesh binding system.
Will hopefully have something nice to show soon!
#vulkan #gameengine #gamedev
Will hopefully have something nice to show soon!
#vulkan #gameengine #gamedev
No fancy engine stuff to show this month, but I've implemented @shader-slang.bsky.social and currently working on automated shader layout + binding. I feel like I'm almost there!
#vulkan #gameengine #gamedev
#vulkan #gameengine #gamedev
June 4, 2025 at 6:21 PM
No fancy engine stuff to show this month, but I've implemented @shader-slang.bsky.social and currently working on automated shader layout + binding. I feel like I'm almost there!
#vulkan #gameengine #gamedev
#vulkan #gameengine #gamedev
I've now have basic texture support working my engine, but also spent a lot of time expanding basic/core features, such as proper handling of command pools/buffers across threads and a destructor queue for GPU resources. Small steps, but making progress!
#gamedev #indiedev #vulkan
#gamedev #indiedev #vulkan
April 17, 2025 at 6:11 PM