[Fluxus] simple study

Kassen signal.automatique at gmail.com
Thu Dec 6 03:14:10 PST 2012


Had a bit of time to spare. Should have cleaned up my room or done
laundry, instead I made a simple study on (scale -1) and using the
combination of colours that go over 1 and lighting to get colour
ranges as the number gets clipped for brighter sections. Well, it does
on my video-card, not sure that is defined behaviour :-)

This last bit becomes more clear by switching the relevant line to
(colour (vector 2 0 1)). I believe that for perfectly lit sections
this get clamped to (vector 1 0 1) and for half-lit sections it would
become (vector 1 0 .5), which is clearly not just more dim but also
more red. I seem to remember Gabor commenting on colours working in a
slightly different way, leading me to suspect that the results of this
depends on your card.

Copy/remix/extend/destroy/use as you see fit.

Yours,
Kas.

(clear)

(define rot (vector 0 0 0))

(define block
    (let ((b (build-cube)))
        (with-primitive b (recalc-normals 1))
        b))

(define (ani) 
    (set! rot (vadd rot (vmul (vector 30 35 40) (delta))))
    (let* ((P1 (vmul (vector 
                        (* (sin (* (time) 3))) 
                        (* (sin (* (time) 4)))
                        (* (sin (* (time) 5)))) 2))
            (P2 (vector (vector-ref P1 1) (vector-ref P1 2) (vector-ref P1 0))))
        (with-state
            (colour (vector (+ 1 (cos (time))) 0 1))
            (rotate rot)
            (for* ((x (in-range -3 4)) (y (in-range -3 4))(z (in-range -3 4)))
                (when
                    (< 
                        (vdist (vector x y z) P1) 
                        (+ 1 (abs (* 3 (sin (time))))))
                    (with-state
                        (translate (vector x y z))
                        (scale (if (< 1.5 (vdist (vector x y z) P2)) -1 1))
                        (hint-wire) (wire-colour 0) (line-width 2)
                        (draw-instance block)))))))

(every-frame
    (ani))



More information about the Fluxus mailing list