gzz-commits
[Top][All Lists]
Advanced

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

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


From: Tuomas J. Lukka
Subject: [Gzz-commits] gzz/gfx/demo paperbasis.py
Date: Sun, 06 Oct 2002 09:44:14 -0400

CVSROOT:        /cvsroot/gzz
Module name:    gzz
Changes by:     Tuomas J. Lukka <address@hidden>        02/10/06 09:44:14

Modified files:
        gfx/demo       : paperbasis.py 

Log message:
        Show how band-like is obtained

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

Patches:
Index: gzz/gfx/demo/paperbasis.py
diff -c gzz/gfx/demo/paperbasis.py:1.10 gzz/gfx/demo/paperbasis.py:1.11
*** gzz/gfx/demo/paperbasis.py:1.10     Mon Sep 23 04:37:04 2002
--- gzz/gfx/demo/paperbasis.py  Sun Oct  6 09:44:14 2002
***************
*** 8,16 ****
  from java.lang import Math
  
  execfile("gfx/libcolor/spaces.py")
! execfile("gfx/libpaper/textures.py")
! execfile("gfx/libpaper/texcoords.py")
! execfile("gfx/libpaper/colors.py")
  
  passmask = [ 1, 0, 0, 0 ]
  
--- 8,18 ----
  from java.lang import Math
  
  execfile("gfx/libcolor/spaces.py")
! 
! import gfx.libpaper.textures
! # execfile("gfx/libpaper/textures.py")
! # execfile("gfx/libpaper/texcoords.py")
! # execfile("gfx/libpaper/colors.py")
  
  passmask = [ 1, 0, 0, 0 ]
  
***************
*** 78,84 ****
--- 80,170 ----
      FCI G ZERO UNSIGNED_INVERT_NV ALPHA
      """),
      }
+ 
  isectcodes = {
+     "BAND0" : nvcode.combinercode("""
+                 # Band-like texture preliminary
+               # Calculate # TEX0 * TEX1 + 0.5, to see
+               # how the dot product comes in
+ 
+                 CombinerParameterNV NUM_GENERAL_COMBINERS_NV 2
+                 
+                 # SPARE0 <- (TEX0 . TEX1)
+               CI0 RGB A TEXTURE0 EXPAND_NORMAL_NV RGB
+               CI0 RGB B TEXTURE1 EXPAND_NORMAL_NV RGB
+               CO0 RGB SPARE0_NV DISCARD_NV DISCARD_NV SCALE_BY_TWO_NV NONE 
FALSE TRUE FALSE
+ 
+               # SPARE0 <- SPARE0 + 0.5
+               CI1 RGB A SPARE0_NV UNSIGNED_IDENTITY_NV RGB
+               CI1 RGB B ZERO UNSIGNED_INVERT_NV RGB
+               CI1 RGB C ZERO UNSIGNED_INVERT_NV RGB
+               CI1 RGB D ZERO HALF_BIAS_NEGATE_NV RGB
+               CO1 RGB DISCARD_NV DISCARD_NV SPARE0_NV NONE NONE FALSE FALSE 
FALSE
+ 
+                 # lerp(EF, PRI_COL, SEC_COL)
+               FCI A SPARE0_NV UNSIGNED_IDENTITY_NV RGB
+               FCI B ZERO UNSIGNED_INVERT_NV RGB
+               FCI C ZERO UNSIGNED_IDENTITY_NV RGB
+               FCI D ZERO UNSIGNED_IDENTITY_NV RGB
+ 
+               FCI G ZERO UNSIGNED_INVERT_NV BLUE
+     """),
+     "BAND1" : nvcode.combinercode("""
+                 # Band-like texture preliminary
+               # Calculate # (TEX0 . TEX1) + 0.5, to see
+               # where the middle is taken from.
+               # Moving the basis quads and 
+               # Flipping between this and BAND1 will explain a lot
+ 
+                 CombinerParameterNV NUM_GENERAL_COMBINERS_NV 2
+                 
+                 # SPARE0 <- (TEX0 . TEX1)
+               CI0 RGB A TEXTURE0 EXPAND_NORMAL_NV RGB
+               CI0 RGB B TEXTURE1 EXPAND_NORMAL_NV RGB
+               CO0 RGB SPARE0_NV DISCARD_NV DISCARD_NV SCALE_BY_TWO_NV NONE 
TRUE TRUE FALSE
+ 
+               # SPARE0 <- SPARE0 + 0.5
+               CI1 RGB A SPARE0_NV UNSIGNED_IDENTITY_NV RGB
+               CI1 RGB B ZERO UNSIGNED_INVERT_NV RGB
+               CI1 RGB C ZERO UNSIGNED_INVERT_NV RGB
+               CI1 RGB D ZERO HALF_BIAS_NEGATE_NV RGB
+               CO1 RGB DISCARD_NV DISCARD_NV SPARE0_NV NONE NONE FALSE FALSE 
FALSE
+ 
+                 # lerp(EF, PRI_COL, SEC_COL)
+               FCI A SPARE0_NV UNSIGNED_IDENTITY_NV RGB
+               FCI B ZERO UNSIGNED_INVERT_NV RGB
+               FCI C ZERO UNSIGNED_IDENTITY_NV RGB
+               FCI D ZERO UNSIGNED_IDENTITY_NV RGB
+ 
+               FCI G ZERO UNSIGNED_INVERT_NV BLUE
+     """),
+     "BAND2" : nvcode.combinercode("""
+                 # Band-like texture
+               # No scaling of the output, just calculate
+               # (TEX0 . TEX1)**2 and use that for interpolation
+                 CombinerParameterNV NUM_GENERAL_COMBINERS_NV 2
+                 
+                 # SPARE0 <- (TEX0 . TEX1)
+               CI0 RGB A TEXTURE0 EXPAND_NORMAL_NV RGB
+               CI0 RGB B TEXTURE1 EXPAND_NORMAL_NV RGB
+               # CI0 RGB C CONSTANT_COLOR0_NV HALF_BIAS_NORMAL_NV RGB
+               CI0 RGB C ZERO UNSIGNED_IDENTITY_NV RGB
+               CI0 RGB D ZERO UNSIGNED_INVERT_NV RGB
+               CO0 RGB SPARE0_NV DISCARD_NV DISCARD_NV SCALE_BY_FOUR_NV NONE 
TRUE TRUE FALSE
+ 
+                 # SPARE0 <- 2 * SPARE0 * SPARE0 * 2 
+               CI1 RGB A SPARE0_NV SIGNED_IDENTITY_NV RGB
+               CI1 RGB B SPARE0_NV SIGNED_IDENTITY_NV RGB
+               CO1 RGB SPARE0_NV DISCARD_NV DISCARD_NV SCALE_BY_FOUR_NV NONE 
FALSE FALSE FALSE
+ 
+                 # lerp(EF, PRI_COL, SEC_COL)
+               FCI A SPARE0_NV UNSIGNED_IDENTITY_NV RGB
+               FCI B PRIMARY_COLOR_NV UNSIGNED_IDENTITY_NV RGB
+               FCI C SECONDARY_COLOR_NV UNSIGNED_IDENTITY_NV RGB
+               FCI D ZERO UNSIGNED_IDENTITY_NV RGB
+ 
+               FCI G ZERO UNSIGNED_INVERT_NV BLUE
+     """),
      "BAND" : nvcode.combinercode("""
                  # Band-like texture
                  CombinerParameterNV NUM_GENERAL_COMBINERS_NV 2
***************
*** 86,92 ****
                  # SPARE0 <- (TEX0 . TEX1)
                CI0 RGB A TEXTURE0 EXPAND_NORMAL_NV RGB
                CI0 RGB B TEXTURE1 EXPAND_NORMAL_NV RGB
!               CO0 RGB SPARE0_NV DISCARD_NV DISCARD_NV NONE NONE TRUE FALSE 
FALSE
  
                  # SPARE1 <- SPARE0 * SPARE0 * 2 
                  # SPARE0 <- (TEX0 . CONST0) * 2
--- 172,178 ----
                  # SPARE0 <- (TEX0 . TEX1)
                CI0 RGB A TEXTURE0 EXPAND_NORMAL_NV RGB
                CI0 RGB B TEXTURE1 EXPAND_NORMAL_NV RGB
!               CO0 RGB SPARE0_NV DISCARD_NV DISCARD_NV SCALE_BY_FOUR_NV NONE 
TRUE FALSE FALSE
  
                  # SPARE1 <- SPARE0 * SPARE0 * 2 
                  # SPARE0 <- (TEX0 . CONST0) * 2
***************
*** 143,160 ****
                FCI G ZERO UNSIGNED_INVERT_NV ALPHA
      """),
      "DOT" : nvcode.combinercode("""
!     CombinerParameterNV NUM_GENERAL_COMBINERS_NV 1
!     
!     # SPARE0 <- (TEX0 . TEX1)
!     CI0 RGB A TEXTURE0 EXPAND_NORMAL_NV RGB
!     CI0 RGB B TEXTURE1 EXPAND_NORMAL_NV RGB
!     CO0 RGB SPARE0_NV DISCARD_NV DISCARD_NV NONE NONE TRUE FALSE FALSE
! 
!     FCI A ZERO UNSIGNED_IDENTITY_NV RGB
!     FCI B ZERO UNSIGNED_IDENTITY_NV RGB
!     FCI C ZERO UNSIGNED_IDENTITY_NV RGB
!     FCI D SPARE0_NV UNSIGNED_IDENTITY_NV RGB
!     FCI G ZERO UNSIGNED_INVERT_NV ALPHA
      """)
      }
  
--- 229,246 ----
                FCI G ZERO UNSIGNED_INVERT_NV ALPHA
      """),
      "DOT" : nvcode.combinercode("""
!       CombinerParameterNV NUM_GENERAL_COMBINERS_NV 1
!       
!       # SPARE0 <- (TEX0 . TEX1)
!       CI0 RGB A TEXTURE0 EXPAND_NORMAL_NV RGB
!       CI0 RGB B TEXTURE1 EXPAND_NORMAL_NV RGB
!       CO0 RGB SPARE0_NV DISCARD_NV DISCARD_NV NONE NONE TRUE FALSE FALSE
! 
!       FCI A ZERO UNSIGNED_IDENTITY_NV RGB
!       FCI B ZERO UNSIGNED_IDENTITY_NV RGB
!       FCI C ZERO UNSIGNED_IDENTITY_NV RGB
!       FCI D SPARE0_NV UNSIGNED_IDENTITY_NV RGB
!       FCI G ZERO UNSIGNED_INVERT_NV ALPHA
      """)
      }
  
***************
*** 174,180 ****
              ActiveTexture TEXTURE0
      """)
  
!     texid = ptextures["RGB2"][0].getTexId();
      
      constcode = """
          ActiveTexture TEXTURE0
--- 260,266 ----
              ActiveTexture TEXTURE0
      """)
  
!     texid = ptextures["RGB2"][2].getTexId();
      
      constcode = """
          ActiveTexture TEXTURE0
***************
*** 218,223 ****
--- 304,311 ----
  
  rng = java.util.Random()
  
+ class PaperRegcombScene:
+     pass
  
  class PaperScene:
      def __init__(self):
***************
*** 305,315 ****
              tex1comb = list[(list.index(tex1comb) + 1) % len(list)]
              print "Using", tex0comb, isectcomb, tex1comb, "combiners"
              self.initpaper()
!         elif k == "F2":
              list = isectcodes.keys()
              isectcomb = list[(list.index(isectcomb) + 1) % len(list)]
              print "Using", tex0comb, isectcomb, tex1comb, "combiners"
              self.initpaper()
            
      def scene(self, vs):
        if not self.pq: self.initpaper()
--- 393,414 ----
              tex1comb = list[(list.index(tex1comb) + 1) % len(list)]
              print "Using", tex0comb, isectcomb, tex1comb, "combiners"
              self.initpaper()
!         elif k == "c":
              list = isectcodes.keys()
+           list.sort()
              isectcomb = list[(list.index(isectcomb) + 1) % len(list)]
              print "Using", tex0comb, isectcomb, tex1comb, "combiners"
              self.initpaper()
+         elif k == "C":
+             list = isectcodes.keys()
+           list.sort()
+             isectcomb = list[(list.index(isectcomb) - 1) % len(list)]
+             print "Using", tex0comb, isectcomb, tex1comb, "combiners"
+             self.initpaper()
+           
+     def scene(self, vs):
+       if not self.pq: self.initpaper()
+       putnoc(vs, background(self.bgcolor))
            
      def scene(self, vs):
        if not self.pq: self.initpaper()
***************
*** 320,342 ****
          # and cs2 for the second
  
          scale = 400
!       cs1 = vs.coords.affineCoordsys(0, "1", 10, self.x0, self.y0,
                                         scale * self.texgen0.vecs[0][0],
                                         scale * self.texgen0.vecs[1][0],
                                         scale * self.texgen0.vecs[0][1],
                                         scale * self.texgen0.vecs[1][1])
!       cs2 = vs.coords.affineCoordsys(0, "2", 10, self.x1, self.y1,
                                         scale * self.texgen1.vecs[0][0],
                                         scale * self.texgen1.vecs[1][0],
                                         scale * self.texgen1.vecs[0][1],
                                         scale * self.texgen1.vecs[1][1])
  
        vs.map.put(self.pq, cs1, cs2)
        vs.map.put(self.frame, cs1)
        vs.map.put(self.frame, cs2)
  
          for i in range(0,3):
!             cs = vs.coords.affineCoordsys(0, "col" + str(i), 10, 600 + 
(i-1)*150, 80, 50, 0, 0, 50)
              col = self.cols[i].split()
              cq = coloredQuad((col[0], col[1], col[2]))
              vs.map.put(cq, cs)
--- 419,444 ----
          # and cs2 for the second
  
          scale = 400
!       cs1 = vs.coords.affineCoordsys(0, 10, self.x0, self.y0,
                                         scale * self.texgen0.vecs[0][0],
                                         scale * self.texgen0.vecs[1][0],
                                         scale * self.texgen0.vecs[0][1],
                                         scale * self.texgen0.vecs[1][1])
!       vs.matcher.add(cs1, "1")
!       cs2 = vs.coords.affineCoordsys(0, 10, self.x1, self.y1,
                                         scale * self.texgen1.vecs[0][0],
                                         scale * self.texgen1.vecs[1][0],
                                         scale * self.texgen1.vecs[0][1],
                                         scale * self.texgen1.vecs[1][1])
+       vs.matcher.add(cs2, "2")
  
        vs.map.put(self.pq, cs1, cs2)
        vs.map.put(self.frame, cs1)
        vs.map.put(self.frame, cs2)
  
          for i in range(0,3):
!             cs = vs.coords.affineCoordsys(0, 10, 600 + (i-1)*150, 80, 50, 0, 
0, 50)
!           vs.matcher.add(cs, "col" + str(i))
              col = self.cols[i].split()
              cq = coloredQuad((col[0], col[1], col[2]))
              vs.map.put(cq, cs)




reply via email to

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