[Top][All Lists]
[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)
- [Gzz-commits] gzz/gfx/demo paperbasis.py,
Tuomas J. Lukka <=