GPUCASTER

Links:
  - Download it (v135; includes C source code)
  - Tutorial
  - Back to Geisswerks

This is a free program that I wrote and have posted for others to use for art, education, fun, etc.

It uses your GPU to quickly render highly-detailed, arbitrary 3D isosurfaces (functions) with semi-realistic lighting (5 point light sources with ambient occlusion). The C++ source code is provided, but you probably won't need it; you can modify the camera and lights using the mouse and keyboard, and you can modify the core function (that describes the 3D isosurface, or "world") by editing a single pixel shader (shaders/eval.hlsl). If you know the basics of 3D math and how to program pixel shaders, you'll be making awesome stuff in minutes! And once you get something you like, you can render it at huge resolutions (up to 8192 x 8192).

For a full crash course, read the tutorial, or
check out the Youtube tutorials:
Requirements:
  • A Windows 7 (or later) PC.
  • A GPU supporting D3D11.
  • Some 3D math skills.
  • Basic knowledge of how to edit a pixel shader to make it do math stuff.
  • Enough patience to read through a ~4-page tutorial.
My hope is that sharing this will enable some high school art or math teachers to send a few thirsty students cruising off on amazing careers! And, hopefully, for some other folks to have some fun, learn a bit, and make some cool art. :)

Please don't bother asking me for permission to use the images you produce with this; they're all yours, do whatever you want with them.

(Disclaimer: I threw this together under the worst conditions possible: working on it in 30-minute chunks over the course of ~2 years. Please forgive the horrific code!)