gzz-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gzz-commits] gzz/gfx/demo vpbuoy.py


From: Tuomas J. Lukka
Subject: [Gzz-commits] gzz/gfx/demo vpbuoy.py
Date: Mon, 16 Dec 2002 02:03:17 -0500

CVSROOT:        /cvsroot/gzz
Module name:    gzz
Changes by:     Tuomas J. Lukka <address@hidden>        02/12/16 02:03:15

Modified files:
        gfx/demo       : vpbuoy.py 

Log message:
        Vp twids

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/demo/vpbuoy.py.diff?tr1=1.5&tr2=1.6&r1=text&r2=text

Patches:
Index: gzz/gfx/demo/vpbuoy.py
diff -u gzz/gfx/demo/vpbuoy.py:1.5 gzz/gfx/demo/vpbuoy.py:1.6
--- gzz/gfx/demo/vpbuoy.py:1.5  Sun Dec 15 15:08:42 2002
+++ gzz/gfx/demo/vpbuoy.py      Mon Dec 16 02:03:15 2002
@@ -25,25 +25,35 @@
                    float4 texcoord : TEXCOORD0,
                    float4 color : COLOR
                    ) {
-               float4 p = { 100, 300, 0, 0 };
-               float4 origin = { 300, 300, 0, 0};
-               float rad = 200;
+               float4 p = { 100, 350, 0, 0 };
+               float4 origin = { 500, 350, 0, 0};
+               float rad = 400;
 
                outs o;
 
                float4x4 pmat = glstate.matrix.program[0];
 
-               float4 anchor = mul(pmat, orig);
+               float2 anchor;
+               anchor.x = dot(pmat[0], orig);
+               anchor.y = dot(pmat[1], orig);
+
+               float w = dot(pmat[3],  orig);
+               anchor /= w;
 
                float a2o = distance(anchor.xy, origin.xy) / rad;
+               float2 ap ;
+               ap.xy = anchor.xy - p.xy;
+               float a2p = length(ap) / rad;
 
                float4 buoy;
 
-               buoy = anchor;
+               buoy.xy = anchor + orig.z * .5 * ap * max(0,1-a2o);
+               buoy.z = 1-orig.z;
+               buoy.w = 1;
 
                o.pos = mul(glstate.matrix.mvp, buoy);
-               o.color = float4(color.x, color.y, a2o, color.w);
-               o.pointsize = float4(15.0, 0, 0, 0);
+               o.color = float4(1-orig.z, a2o, a2p, color.w);
+               o.pointsize = float4(4. + 4. * orig.z, 0, 0, 0);
 
                return o;
            }
@@ -216,7 +226,7 @@
            self.prog = None
 
        vert = []
-       if 1:
+       if 0:
            n = 45
            for x in floats(0,1,n):
                for y in floats(0,1,n):
@@ -226,7 +236,7 @@
                        Vertex %(x)s %(y)s 1 1
                    """ % locals())
        else:
-           for i in range(0,2000):
+           for i in range(0,4000):
                x, y = java.lang.Math.random(), java.lang.Math.random()
                vert.append("""
                    Color %(x)s .0 %(y)s .6
@@ -293,8 +303,8 @@
            vs.put(self.linep, "G", 0, 0, 0, 1, 1)
        else:
            vs.put(GLRen.createSetMatrix("MATRIX0_ARB"), "M", 0,
-               -150+Math.random() * 300, -150+Math.random() * 300,
-               700 + Math.random() * 400, 700 + Math.random() * 400,
+               -300+Math.random() * 300, -300+Math.random() * 300,
+               1400 + Math.random() * 400, 1400 + Math.random() * 400,
                )
 
            vs.put(self.pointlist, "F", 0, 0, 0, 1, 1)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]