Hi, I'm not dead. I started a new project that took a while to have anything to show for it. And here it is:

Skelly, the bare bones game framework

It's ment for 2D pixel art and low poly 3D games. Software rasterizer that builds to web assembly without Emscripten, and without WebGL

https://wildrose.space/2025/11/12/new-project-wasm-game-framework-without-emscripten/

#gamedev #wasm #softwareRenderer #gameFramework #blogPost

New Project: WASM game framework without Emscripten | Wild Rose's Space

Why I'm back at the software rasterizing

Update on my tiny 3D software renderer:

βœ”οΈ Per-mesh transform support
βœ”οΈ Per-mesh vertex-based lighting

#GameDev #SoftwareRenderer #3D #Shaders #Rendering #TechArt #IndieDev #graphics #programming

Update on my tiny 3D software renderer:

β€’ Dynamic smooth/hard normals calculations
β€’ Accurate triangles generation during frustum clipping

Slowly but surely... 🎯

#GameDev #SoftwareRenderer #3D #Rendering #TechArt #Shaders #IndieDev #Graphics #programming

Update on my tiny 3D software renderer:
βœ… Smooth normals implemented
βœ… Gouraud lighting now supported

Kinda a milestone for visual fidelity

#GameDev #SoftwareRenderer #3D #Rendering #Shaders #TechArt #IndieDev

Worked some more on this #SoftwareRenderer. Code hot-reloading and fast compile times are such a boost for productivity and joy!

I gave it a shot, but got no luck getting animation data from a GLTF file. So, while I figure that out, how about switching to something simpler like MD5? ...and guess what? It's working!

#SoloDev #GameDev #IndieDev #CustomEngine #SoftwareRenderer

Wrote a bare-bones physics engine supporting spheres, boxes, raycasts, and collision callbacks. Works reasonably well especially when coupled with the spatial acceleration structure that was added last week. With projectiles using raycasts to avoid the "tunnel effect" at high speed things are starting the get interesting.

#SoloDev #GameDev #IndieDev #CustomEngine #SoftwareRenderer

This week, I have tried to squeeze as many entities as possible in a single scene (1 squared km) and implemented a simple 2D spatial acceleration structure (uniform grid partitioning) with the goal of reducing the CPU time required.
The speedup is insane: I can now easily query this grid to obtain the visible entities, or the closest ones in a radius, instead of scanning all them.

Now, do I really need 10 million entities? πŸ˜…

#SoloDev #GameDev #IndieDev #CustomEngine #SoftwareRenderer

More optimizations, and with the frame time going down the number of triangles is increasing. Fat pixels everywhere!

#SoloDev #GameDev #IndieDev #CustomEngine #SoftwareRenderer #ScreenshotSaturday

Finally added frustum culling and 100'000 randomly positioned meshes on top of the terrain. There's still no gameplay, but walking around the hills feels good

#SoloDev #GameDev #IndieDev #CustomEngine #SoftwareRenderer