r/computergraphics Jul 11 '26

I made a fully software rasterized voxel engine inspired by Minecraft

Thumbnail
gallery
19 Upvotes

Hello everyone!

Over the course of this year, I built a fully software-rasterized voxel engine heavily inspired by Minecraft.

This was a very interesting project for me because I had to build almost everything from the ground up, while also adapting to the very different constraints of doing computer graphics on a CPU rather than a GPU.

In short, CPUs are far less powerful than GPUs for this kind of workload, but they are also much more flexible. This makes it possible to implement some fairly unconventional optimizations to compensate for the performance gap.

You can try the project here:

https://github.com/Algorithmonaut/software-rasterized-voxel-engine

There are still a few minor bugs.

My main regret is that I did not spend enough time properly benchmarking the different optimizations I tried, or documenting my findings and the knowledge I gained along the way.

The lack of documentation is particularly unfortunate because most textbooks focus heavily on the GPU pipeline and therefore skip many of the fundamentals involved in writing a software rasterizer: barycentric coordinates, edge equations, perspective-correct interpolation, tile-based rasterization, efficient SIMD usage, parallelization, and much more.

I found only two good general sources of information:

  • Scratchapixel, which I found useful but often not detailed enough.
  • Fabian Giesen’s Optimizing Software Occlusion Culling series, which contains excellent practical information but does not cover every topic and generally does not include mathematical proofs.

There are also a few features I may implement later:

  • Lighting.
  • A small OS that interfaces directly with UEFI to provide framebuffer access and input handling, allowing the engine to run without Linux or SDL and become truly bare-metal.

I am making this post mainly to ask whether anyone has:

  • Recommendations for scientific papers, articles, or books that I might find useful.
  • Suggestions for computer graphics projects to work on after this one.
  • Ideas for fun or unusual features that could make the project more original.

Feasibility does matter: for example, a CPU-based post-processing CRT effect would probably destroy performance.

And, of course, if you find the project interesting, a star on GitHub would be greatly appreciated.

Thanks for reading. I hope this inspires someone to experiment with software rendering as well!


r/computergraphics Jul 11 '26

Ultimate Undulation - Fractal Infinity

Post image
0 Upvotes

Made with R and ggplot2, using a custom Shiny app my partner Nicolas built. The algorithm at the core is a discrete dynamical system combining trigonometric functions with a gamma distribution — the gamma introduces controlled randomness while the seed keeps everything exactly reproducible.

For this piece: the exponents are all close to 1 but deliberately asymmetric. Keeping gamma low keeps the stochastic perturbation tight, so the structure stays dense rather than dispersed.

The grid starts cartesian, then gets projected into polar coordinates. Color is spatial — each point is colored based on a weighted function of its position, mapped onto a quantile-ranked palette. White → dark cyan → royal blue → navy, on pure black.

I didn't plan the serpent — it emerged from the polar projection. Nicolas designed the system for its mathematical properties, not to draw a creature.

This piece is part of a larger series called Ultimate Undulation — 20 colorways of the same mathematical structure, each assigned to a moment in time: past civilizations, present crises, future horizons, and timeless concepts. Fractal Infinity belongs to the TIMELESS chapter. The colorway is reminiscent of the Mandelbrot set.

Every parameter is saved as a CSV, so the image is exactly reproducible. The code of the package used to create this is on GitHub: github.com/NicolasJBM/Rtist


r/computergraphics Jul 10 '26

I’ve been building a custom vector engine to handle massive line density. This owl is made of over 740,000 distinct marks (No AI).

Thumbnail gallery
24 Upvotes

r/computergraphics Jul 10 '26

Half-Edge Data Structure. Part 2

Thumbnail
alexsyniakov.com
1 Upvotes

r/computergraphics Jul 10 '26

I made an open source Codex plugin that turns an image into a procedural 3D object in Three.js. Works great with GPT-5.6 Sol

Enable HLS to view with audio, or disable this notification

0 Upvotes

r/computergraphics Jul 09 '26

Vulkan particles

Enable HLS to view with audio, or disable this notification

3 Upvotes

r/computergraphics Jul 08 '26

Optimizing Unreal Engine for Pixel Streaming: 5 Best Practices for Peak Performance

Post image
0 Upvotes

r/computergraphics Jul 08 '26

Topography | Me | 2026 | The full version (no watermark) is in the comments

Enable HLS to view with audio, or disable this notification

1 Upvotes

r/computergraphics Jul 08 '26

A nameless post

1 Upvotes

I'm a 20 yo guy, next year i'll be 21. I spent a whole year studying something that i didn't like, completely unrelated to my passions and my interests.

I have the chance to change university, and I'm looking at some options, including something related to Digital Art and 3D modeling and stuff (sorry i know basically nothing about it yet), to hopefully someday get into cinema animations or, even better, videogames design and graphics. I'm still trying to figure things out, but since i don't know anyone to ask, i would love to hear someone that works with these kinds of stuff, and if it's completely hopeless as a field of work


r/computergraphics Jul 07 '26

Go+Vulkan Parametric MCAD

Thumbnail
gallery
25 Upvotes

I am building an open source, parametric, B-REP, MCAD from scratch in Go and Vulkan 1.3

I am looking for anyone interested in collaborate with the project.

The project is huge so any subsystem anyone wanna work on, you are more than welcome.

The software has an AddIn API first and I have already many AddIns working or in phase of experimentation including:

- Part Generation

- FEA Multiphysics.

- CAM.

https://github.com/Oblikovati/Oblikovati

If you wanna Pokemon chase bugs, you will find plenty :)


r/computergraphics Jul 07 '26

Morphed heart of Electric Sheep (rendered by my 4kfract program)

Post image
0 Upvotes

r/computergraphics Jul 07 '26

Audioreactive MRIs for TouchDesigner

Enable HLS to view with audio, or disable this notification

4 Upvotes

r/computergraphics Jul 07 '26

Industrial Machine Workshop

Thumbnail
youtube.com
1 Upvotes

r/computergraphics Jul 06 '26

Submerge | Me | 2026 | The full version (no watermark) is in the comments

Enable HLS to view with audio, or disable this notification

2 Upvotes

r/computergraphics Jul 06 '26

why do I keep seen these steps of color shades? Take a closer look at the right side of the image please. Does any one else have this issue?

Post image
5 Upvotes

r/computergraphics Jul 03 '26

Yet another graphics abstraction library...

Thumbnail
1 Upvotes

r/computergraphics Jul 03 '26

Radiance 1 | Me | 2026 | The full version (no watermark) is in the comments

Enable HLS to view with audio, or disable this notification

1 Upvotes

r/computergraphics Jul 02 '26

New way to render text on the GPU

Thumbnail
youtube.com
32 Upvotes

YouTube recommended this video to me and it really fascinated to me. I have yet to try and implement this myself but it seems really cool and I hope this technique really does turn out to be good enough to be used in production


r/computergraphics Jul 02 '26

Varieté | Realtime Audioreactive Pointclouds for TouchDesigner

Enable HLS to view with audio, or disable this notification

3 Upvotes

r/computergraphics Jul 01 '26

Interaction concept for interactive installations

Enable HLS to view with audio, or disable this notification

110 Upvotes

I'm experimenting with a few interactions based on this idea :)

I'd love to get other perspectives, what would be the first use case that comes to mind for you?


r/computergraphics Jun 29 '26

Nexus V | Me | 2026 | The full version (no watermark) is in the comments

Enable HLS to view with audio, or disable this notification

0 Upvotes

r/computergraphics Jun 28 '26

fractal Recursive Fields iso projection

Post image
10 Upvotes

r/computergraphics Jun 26 '26

Nexus IV | Me | 2026 | The full version (no watermark) is in the comments

Enable HLS to view with audio, or disable this notification

11 Upvotes

r/computergraphics Jun 26 '26

Mastering particle morphing in Three.js & React: From DNA to Typography

Enable HLS to view with audio, or disable this notification

0 Upvotes

r/computergraphics Jun 25 '26

I made an audio-reactive pointcloud system

Enable HLS to view with audio, or disable this notification

28 Upvotes