Thomas Decroyère
tdecroyere.bsky.social
Thomas Decroyère
@tdecroyere.bsky.social
Freelance software engineer.

Working on Elemental graphics library and Kanso (small micro kernel OS).

https://github.com/tdecroyere
I now have a first person camera system for my renderer. It can be controlled with keyboard/mouse or gamepad. 😊

#directx12 #vulkan #gamedev #indiedev #IndieGameDev
July 21, 2025 at 3:06 PM
I can now load the textures from the scene.

I have a separate Texture Compiler library that can generate mips and compress the texture to BC7.

In the 2 screenshots, the same view without/with basic lighting. No shadows yet.

#directx12 #vulkan #gamedev #indiedev #IndieGameDev
July 17, 2025 at 3:04 PM
I really need a new camera system because the model-viewer controls don't really work with a 3D scene. 😅

#gamedev #indiedev #IndieGameDev
July 14, 2025 at 3:03 PM
I have reworked my mesh loading code and I'm now able to load the famous Sponza model. It is the "Hello World" of 3D graphics programming. 😊

I'm loading the normal maps to have more detailed geometry. Next on the list is camera controls.

#gamedev #indiedev #IndieGameDev
July 10, 2025 at 3:05 PM
The mesh sample works on iOS 26 with motion controls. It shares the exact same C code than the desktop version.😊

The sample is written in C23. Check the source code here: github.com/double-buffe...

#gamedev #indiedev #IndieGameDev #apple #ios #ios26 #iphone
July 7, 2025 at 3:05 PM
While working on my hobby OS for RISC-V 64-bit, I struggled to find the correct boot sequence to make it run on real hardware.

I'm using the Star64 @risc_v board from @thepine64.

Here is the boot sequence when the image is loaded from an SD-Card:👇

#RISCV #indiedev #osdev #c
July 3, 2025 at 3:03 PM
I've added functionality for the PS5 DualSense controller to my cross-platform gaming library. 😊

Feel free to explore the source code: github.com/double-buffe...

#directx12 #vulkan #gamedev #IndieGameDev #dualsense
June 30, 2025 at 3:11 PM
This is what happens when something goes wrong while refactoring the geometry data layout. 😅

The sample is written in C23. Check the source code here: github.com/double-buffe...

#directx12 #vulkan #gamedev #IndieGameDev
June 26, 2025 at 3:05 PM
I have implemented input management that works on Windows, macOS and Linux.

To test it, what better way than to apply some cool motions to my 3D model viewer. 😊

The sample is written in C23. Check the source code here: github.com/double-buffe...

#directx12 #vulkan #gamedev
June 23, 2025 at 3:05 PM
My small micro-kernel OS written in C23 now has a GitHub automatic build pipeline that runs the tests with the emulator on supported architectures.

It also builds hardware images so I can just burn the image to an SD card to test the build.

#RISCV #C23 #UnitTesting #github
June 19, 2025 at 3:06 PM
I have implemented a basic OBJ file loader and I can render a 3D model with Mesh Shaders. It works on all platforms: DirectX12, Vulkan and Apple Metal.

The sample is written in C23, check the source code here: github.com/double-buffe...

#directx12 #vulkan #gamedev
June 16, 2025 at 3:05 PM
Writing low-level code in C23 doesn't mean you can't do unit testing.

I built a simple library with a few lines of code that lets you write unit tests that look like those in other test frameworks.

Check the source code here: github.com/double-buffe...

#RISCV #C23 #UnitTesting
June 12, 2025 at 4:37 PM
Forgetting to include friction when calculating velocity or acceleration can lead to some truly unexpected results. 😅

#directx12 #vulkan #gamedev
June 9, 2025 at 3:04 PM
I've developed a compute shader sample for my graphics library, Elemental, using a beautiful fractal to test it.

It runs on Windows, Linux, MacOS, and iOS, and is written in C.

Check out the source code: github.com/double-buffe...

#directx12 #vulkan #gamedev
June 6, 2025 at 3:07 PM
I'm working on a microkernel for the RISC-V 64-bit architecture using C23 as a learning exercise.

I've successfully output text via UART on both QEMU and actual hardware! 😊

I'm using the Star64 RISC-V board from #pine64.

It's a start. 🙂 #RISCV
June 3, 2025 at 8:01 AM