Uploaded February 2010 | Updated September 2026, 1 week ago
This is an example of a 3d-accelerated screenspace CSG algorithm that I implemented a few years ago.
It's a set of cylinders subtracted from one large cylinder.
Everything is solved in screenspace by the GPU, making use of the zbuffer and stencilbuffer. The advantage of this technique is that you don't need to specificially tessellate the CSG model before rendering it. In many cases it is also very efficient.
All common operations are supported (union, difference, intersection), in every possible order.
Original binaries can be downloaded here: scali.eu.org/~bohemiq/CSG3.rar
This is an example of a 3d-accelerated screenspace CSG algorithm that I implemented a few years ago.
It's a set of cylinders subtracted from one large cylinder.
Everything is solved in screenspace by the GPU, making use of the zbuffer and stencilbuffer. The advantage of this technique is that you don't need to specificially tessellate the CSG model before rendering it. In many cases it is also very efficient.
All common operations are supported (union, difference, intersection), in every possible order.
Original binaries can be downloaded here: scali.eu.org/~bohemiq/CSG3.rar










