The internet for a programmer who insterested in 3D-graphics for several years is full of videos where people programming music visualizers, complex color-morphing effects or even more tricky things working at the intersection of technology - literally the author writes code and somewhere on background it is compiled and executed and the author sees the result - this process named livecoding. Most recently the programs like these are written in lisp-family languages, the similar editor exists for ProcessingJS, it renders code immediately in browser, but its not about it.
Fluxus - it is a cross-platform 3D-engine for games drafts based on livecoding principles and simultaneously the prototyping tool for 3D-graphics and interactive things. And there is pretty detailed documentation exist. Programming language is extended with graphic functions PLT Scheme](http://racket-lang.org).
However, see for yourself:
When application launched, it is started in interpretor mode. To switch to code editor mode, which is used in the most of the videos, press
Ctrl+1. To render current defined scene - press
Hereis, for example, two rotating spheres that change their colors through time:
#!lisp (define (animate) (let* ((t (* (time) 2)) (x (sin t)) (y (cos t))) (with-state (translate (vector x y 0)) (colour (vector (+ 1.5 (sin (time))) 0 0)) (draw-sphere)) (with-state (translate (vmul (vector x y 0) 3)) (colour (vector 0 0 (- 1.5 (sin (time))))) (draw-sphere)))) (every-frame (animate))