gzz-commits
[Top][All Lists]
Advanced

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

[Gzz-commits] gzz ./TODO gfx/demo/irregularframe.py gfx/demo/...


From: Tuomas J. Lukka
Subject: [Gzz-commits] gzz ./TODO gfx/demo/irregularframe.py gfx/demo/...
Date: Sat, 21 Sep 2002 03:35:18 -0400

CVSROOT:        /cvsroot/gzz
Module name:    gzz
Changes by:     Tuomas J. Lukka <address@hidden>        02/09/21 03:35:17

Modified files:
        .              : TODO 
        gfx/demo       : irregularframe.py 
        gfx/demo/opengl: glinfo.py 
        gfx/jni        : GzzGL-jni.cxx 
        gfx/libcallgl  : callgl.cxx 
        gfx/libos      : Os-GLX.cxx Os.hxx 
        gfx/librenderables: Makefile renderables.py 
        gzz/client/gl  : GLUpdateManager.java 
        gzz/gfx/gl     : Stencil.java 
        gzz/vob        : SolidBgVob.java 
Added files:
        gfx/demo/opengl: texperf.py 

Log message:
        AAWAAAAAAARGH!!!!! The stencil bug was mine, after all! The Stencil 
class disabled DepthMask, so even Clear didn"t write to the depth buf. Gaa. 
Also: window resize, move etc.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/TODO.diff?tr1=1.117&tr2=1.118&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/demo/irregularframe.py.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/demo/opengl/texperf.py?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/demo/opengl/glinfo.py.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/jni/GzzGL-jni.cxx.diff?tr1=1.26&tr2=1.27&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/libcallgl/callgl.cxx.diff?tr1=1.15&tr2=1.16&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/libos/Os-GLX.cxx.diff?tr1=1.10&tr2=1.11&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/libos/Os.hxx.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/librenderables/Makefile.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/librenderables/renderables.py.diff?tr1=1.57&tr2=1.58&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/client/gl/GLUpdateManager.java.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/gfx/gl/Stencil.java.diff?tr1=1.12&tr2=1.13&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/vob/SolidBgVob.java.diff?tr1=1.5&tr2=1.6&r1=text&r2=text

Patches:
Index: gzz/TODO
diff -c gzz/TODO:1.117 gzz/TODO:1.118
*** gzz/TODO:1.117      Fri Sep 20 10:41:36 2002
--- gzz/TODO    Sat Sep 21 03:35:17 2002
***************
*** 66,71 ****
--- 66,74 ----
          that we don't have to do silly "execfile" tricks in
          papertest.py and others.
      tjl:
+       - split GZZGL --> GL, GLRen. GLRen will be the autogenerated 
+         file and GL will be (finally) a properly javadocced 
+         Java source file.
        - distorted multi-page PDF view with xu links
            - texture performance, look at imagecache
  
Index: gzz/gfx/demo/irregularframe.py
diff -c gzz/gfx/demo/irregularframe.py:1.3 gzz/gfx/demo/irregularframe.py:1.4
*** gzz/gfx/demo/irregularframe.py:1.3  Wed Sep 11 02:35:14 2002
--- gzz/gfx/demo/irregularframe.py      Sat Sep 21 03:35:17 2002
***************
*** 5,10 ****
--- 5,15 ----
  from gzz.gfx.gl import Stencil
  from gfx.libutil import nvcode
  
+ # w.window.resize(100,100)
+ 
+ AbstractUpdateManager.defaultAnimationTime = 5000
+ AbstractUpdateManager.fractCalc = AbstractUpdateManager.LinearCalculator()
+ 
  stb = GZZGL.getGLFloat("STENCIL_BITS")[0]
  print "Stencil: ",stb
  if stb < 3:
***************
*** 21,43 ****
  t.shade(128, 128, 0, 4, "RGBA", "RGBA",
      "fnoise", ["scale", "0.05", "freq", "4", "df", "4", "bias", "0.5"])
  
- if 0:
-     Stencil.initStencil = getDListNocoords("""
-      PushAttrib ENABLE_BIT STENCIL_BUFFER_BIT COLOR_BUFFER_BIT
-       Enable STENCIL_TEST
-       StencilFunc EQUAL 0 15
-       StencilOp ZERO ZERO INCR
-       StencilMask 1
-       ColorMask 0 0 0 0
-       Disable DEPTH_TEST
-     """)
- 
-     Stencil.initOutside = getDListNocoords("""
-       StencilFunc EQUAL 0 15
-       ColorMask 1 1 1 1
-       StencilMask 0
-     """)
- 
  execfile("gfx/libpaper/papermill.py")
  papermill = ThePaperMill()
  
--- 26,31 ----
***************
*** 48,70 ****
            GZZGL.createPaperQuad(papermill.getPaper(seed), -1, -1.3, 1, 1.3)
                for seed in self.range
        ]
  
      def key(self, key):
!       pass
      def scene(self, vs):
        putnoc(vs, background((0.1,0.4,0.5)))
  
-       pcs = vs.coords.affineCoordsys(0, "P",
-           20, 0, 0, 200, 0,0, 200)
  
        for i in self.range:
  
            rs = 10
            ro = 50
!           sz = 10 + 200 * du()
!           pl = 1000 
            stencs = vs.coords.affineCoordsys(0, "STM%s"%i,
!               10, pl*du(), pl*du(), sz+rs*ds(), rs*ds(), rs*ds(), sz+rs*ds())
            
            class simplemask(Runnable):
                def run(self):
--- 36,100 ----
            GZZGL.createPaperQuad(papermill.getPaper(seed), -1, -1.3, 1, 1.3)
                for seed in self.range
        ]
+       self.depthtest = 1
  
      def key(self, key):
!       if key == 'd':
!           self.depthtest = not self.depthtest
      def scene(self, vs):
+       putnoc(vs, getDListNocoords("""
+           Disable STENCIL_TEST
+           Enable DEPTH_TEST
+       """))
        putnoc(vs, background((0.1,0.4,0.5)))
+       putnoc(vs, getDListNocoords("""
+           Disable STENCIL_TEST
+           Enable DEPTH_TEST
+           Disable TEXTURE_2D
+           Disable ALPHA_TEST
+           Disable BLEND
+           Disable STENCIL_TEST
+           StencilFunc ALWAYS 0 0
+           StencilOp ZERO ZERO ZERO
+           StencilMask 255 
+       """))
+       # vs.put(coloredQuad((1,0,0)), "FOO", 500, -2, -2, vs.size.width+5, 
vs.size.height+5)
+       if 0:
+           # w.window.setCurrent()
+           # GZZGL.reallyClearStencilBuffer(1200,900)
+           # w.window.release()
+           n = vs.size.width * vs.size.height
+           buf = GZZGL.createByteVector(n)
+           buf.readFromBuffer_ubytes(w.window, "FRONT", 0, 0, vs.size.width, 
vs.size.height,
+                                   "STENCIL_INDEX")
+           print "NZ:"
+           hist = {}
+           for i in range(0,n):
+               k = buf.get(i)
+               hist[k] = hist.get(k, 0) + 1
+           print hist
+           buf.readFromBuffer_ubytes(w.window, "FRONT", 0, 0, vs.size.width, 
vs.size.height,
+                                   "DEPTH_COMPONENT")
+           print "NZD:"
+           hist = {}
+           for i in range(0,n):
+               k = buf.get(i)
+               hist[k] = hist.get(k, 0) + 1
+           print hist
+ 
  
  
        for i in self.range:
  
            rs = 10
            ro = 50
!           sz = 10 + vs.size.width/10 * du()
!           pl = vs.size.width 
            stencs = vs.coords.affineCoordsys(0, "STM%s"%i,
!               10*du(), pl*du(), pl*du(), sz+rs*ds(), rs*ds(), rs*ds(), 
sz+rs*ds())
! 
!           pcs = vs.coords.affineCoordsys(0, "P",
!               20*du(), ro*ds(), ro*ds(), 200*ds(), 0,0, 200*ds())
            
            class simplemask(Runnable):
                def run(self):
***************
*** 126,132 ****
                        Disable REGISTER_COMBINERS_NV
                    """%(t.getTexId())), stencs)
  
-           putnoc(vs, getDListNocoords("Disable DEPTH_TEST\nColor 1 1 1\n"))
            
            class outside(Runnable):
                def run(self):
--- 156,161 ----
***************
*** 149,156 ****
                    """))
                    vs.map.put(pq, stencs, pcs)
  
            Stencil.drawStenciled(vs, simplemask(), None, outside(), 
!               contents(), 0)
  
  
  currentScene = IrreguScene()
--- 178,192 ----
                    """))
                    vs.map.put(pq, stencs, pcs)
  
+ 
+           print "Depthtest: ",self.depthtest
+           if self.depthtest:
+               putnoc(vs, getDListNocoords("Enable DEPTH_TEST\nColor 1 1 1\n"))
+           else:
+               putnoc(vs, getDListNocoords("Disable DEPTH_TEST\nColor 1 1 
1\n"))
+ 
            Stencil.drawStenciled(vs, simplemask(), None, outside(), 
!               contents(), 0)
  
  
  currentScene = IrreguScene()
Index: gzz/gfx/demo/opengl/glinfo.py
diff -c gzz/gfx/demo/opengl/glinfo.py:1.2 gzz/gfx/demo/opengl/glinfo.py:1.3
*** gzz/gfx/demo/opengl/glinfo.py:1.2   Wed Sep 11 11:25:10 2002
--- gzz/gfx/demo/opengl/glinfo.py       Sat Sep 21 03:35:17 2002
***************
*** 5,13 ****
  def getText(text, x = 0, y = 0, z = 2, w = 1, h = 1):
      global font
      if font == None:
-         #GZZGL.startContext()
        font = GZZGL.createFont("gfx/fonts/a010013l.pfb", fontsize)
-         #GZZGL.endContext()
  
      return GZZGL.createHorizText(font, text, x, y, z,  w,h)
  
--- 5,11 ----
***************
*** 44,50 ****
  
        cs1 = vs.coords.affineCoordsys(0, "1", 10, 0, 0, 40, 0, 0, 40)
  
-         GZZGL.startContext()
          vendor = GZZGL.getGLString("VENDOR")
          renderer = GZZGL.getGLString("RENDERER")
          version = GZZGL.getGLString("VERSION")
--- 42,47 ----
***************
*** 145,151 ****
  
              ]]
                     
-         GZZGL.endContext()
  
          putText(vs, cs1, vendor, color=(0,0,0), w=.02, h=.02, y = 1)
          putText(vs, cs1, renderer, color=(0,0,0), w=.02, h=.02, y = 2)
--- 142,147 ----
Index: gzz/gfx/jni/GzzGL-jni.cxx
diff -c gzz/gfx/jni/GzzGL-jni.cxx:1.26 gzz/gfx/jni/GzzGL-jni.cxx:1.27
*** gzz/gfx/jni/GzzGL-jni.cxx:1.26      Fri Sep 20 10:41:36 2002
--- gzz/gfx/jni/GzzGL-jni.cxx   Sat Sep 21 03:35:17 2002
***************
*** 275,280 ****
--- 275,301 ----
        w->addTimeout(ms, tid);
    }
  
+ JNIEXPORT void JNICALL Java_gzz_gfx_gl_GZZGL_impl_1Window_1setCurrent
+   (JNIEnv *env, jclass, jint id) {
+       setWindow(id);
+ }
+ 
+ JNIEXPORT void JNICALL Java_gzz_gfx_gl_GZZGL_impl_1Window_1release
+   (JNIEnv *env, jclass, jint id) {
+       releaseWindow();
+ }
+ 
+ JNIEXPORT void JNICALL Java_gzz_gfx_gl_GZZGL_impl_1Window_1move
+   (JNIEnv *env, jclass, jint id, jint x, jint y) {
+       windows.get(id)->move(x,y);
+ }
+ 
+ JNIEXPORT void JNICALL Java_gzz_gfx_gl_GZZGL_impl_1Window_1resize
+   (JNIEnv *env, jclass, jint id, jint w, jint h) {
+       windows.get(id)->resize(w,h);
+ }
+ 
+ 
  // ImageCache
  /* THIS DOES NOT COMPILE ON JDK 1.4 !!!!!!
  
***************
*** 428,433 ****
--- 449,486 ----
      img->loadIntoTexture(level, xoffs, yoffs);
      glBindTexture(GL_TEXTURE_2D, 0);
      GLERR
+ }
+ 
+ JNIEXPORT void JNICALL Java_gzz_gfx_gl_GZZGL_impl_1Texture_1downsampleInto
+   (JNIEnv *env, jclass, jint id, jint intoid, jstring targetstr, jint level, 
jstring internalFormat, jstring transferType) 
+ {
+     GLenum target = tokenFromJstring(env, targetstr);
+     GLenum intern = tokenFromJstring(env, internalFormat);
+     GLenum trans = tokenFromJstring(env, transferType);
+     glBindTexture(target, id);
+     GLint w=0,h=0;
+     // XXX Only does 2D
+     glGetTexLevelParameteriv(target, level, GL_TEXTURE_WIDTH, &w);
+     glGetTexLevelParameteriv(target, level, GL_TEXTURE_HEIGHT, &h);
+ 
+     GLubyte *data = new GLubyte[w*h*4]; // assuming 4 components
+ 
+     glPixelStorei(GL_PACK_ROW_LENGTH, 0);
+     glPixelStorei(GL_PACK_ALIGNMENT, 1);
+     glGetTexImage(target, level, trans, GL_UNSIGNED_BYTE, data);
+ 
+ 
+     glBindTexture(target, intoid);
+     glPixelStorei(GL_UNPACK_ROW_LENGTH, 0);
+     glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
+     glTexParameteri(target, GL_GENERATE_MIPMAP_SGIS, GL_TRUE);
+     glTexImage2D(target, 0, intern, w, h, 0, trans, GL_UNSIGNED_BYTE,
+           data);
+ 
+     delete[] data;
+     glBindTexture(target, 0);
+ 
+ 
  }
  
  JNIEXPORT jint JNICALL Java_gzz_gfx_gl_GZZGL_impl_1Texture_1shade
Index: gzz/gfx/libcallgl/callgl.cxx
diff -c gzz/gfx/libcallgl/callgl.cxx:1.15 gzz/gfx/libcallgl/callgl.cxx:1.16
*** gzz/gfx/libcallgl/callgl.cxx:1.15   Fri Sep 20 06:27:03 2002
--- gzz/gfx/libcallgl/callgl.cxx        Sat Sep 21 03:35:17 2002
***************
*** 249,254 ****
--- 249,256 ----
          for (unsigned i = 1; i < v.size(); i++)
            mask |= getToken(v[i]);
          glClear(mask);
+       } else if (checkfunc(v, "ClearDepth", 1)) {
+         glClearDepth(atof(v[1].c_str()));
        } else if (checkfunc(v, "ClearColor", 4)) {
          glClearColor(atof(v[1].c_str()),
                       atof(v[2].c_str()),
Index: gzz/gfx/libos/Os-GLX.cxx
diff -c gzz/gfx/libos/Os-GLX.cxx:1.10 gzz/gfx/libos/Os-GLX.cxx:1.11
*** gzz/gfx/libos/Os-GLX.cxx:1.10       Tue Sep 17 05:23:23 2002
--- gzz/gfx/libos/Os-GLX.cxx    Sat Sep 21 03:35:17 2002
***************
*** 286,291 ****
--- 286,297 ----
            return false;
        }
  
+       virtual void move(int x, int y) {
+           XMoveWindow(ws->dpy, xw, x, y);
+       }
+       virtual void resize(int w, int h) {
+           XResizeWindow(ws->dpy, xw, w, h);
+       }
        void getSize(int *xywh) {
            // cout << "GetGeometry "<<int(ws)<<" "<<int(ws->dpy)<<" 
"<<int(xw)<<"\n";
            XWindowAttributes attrs;
Index: gzz/gfx/libos/Os.hxx
diff -c gzz/gfx/libos/Os.hxx:1.8 gzz/gfx/libos/Os.hxx:1.9
*** gzz/gfx/libos/Os.hxx:1.8    Tue Sep 17 05:23:23 2002
--- gzz/gfx/libos/Os.hxx        Sat Sep 21 03:35:17 2002
***************
*** 105,110 ****
--- 105,112 ----
  
        virtual void swapBuffers() = 0;
  
+       virtual void move(int x, int y) = 0;
+       virtual void resize(int w, int h) = 0;
        virtual void getSize(int *xywh) = 0;
  
        /** Call EventHandler->timeout at least X milliseconds 
Index: gzz/gfx/librenderables/Makefile
diff -c gzz/gfx/librenderables/Makefile:1.4 gzz/gfx/librenderables/Makefile:1.5
*** gzz/gfx/librenderables/Makefile:1.4 Wed Aug 28 10:22:38 2002
--- gzz/gfx/librenderables/Makefile     Sat Sep 21 03:35:17 2002
***************
*** 1,4 ****
--- 1,7 ----
  include ../rules.mk
+ 
+ sources = Renderables.cxx
+ 
  include $(sources:.cxx=.dep)
  include Makefile-javaonly
  
***************
*** 6,12 ****
  
  
  
- sources = Renderables.cxx
  
  all: ../../gzz/gfx/gl/GZZGL.java $(sources:.cxx=.o)
  
--- 9,14 ----
Index: gzz/gfx/librenderables/renderables.py
diff -c gzz/gfx/librenderables/renderables.py:1.57 
gzz/gfx/librenderables/renderables.py:1.58
*** gzz/gfx/librenderables/renderables.py:1.57  Fri Sep 20 11:52:33 2002
--- gzz/gfx/librenderables/renderables.py       Sat Sep 21 03:35:17 2002
***************
*** 1340,1345 ****
--- 1340,1351 ----
                getWindowSize(getId(), rect);
                return rect;
            }
+ 
+           public void setCurrent() { impl_Window_setCurrent(getId()); }
+           public void release() { impl_Window_release(getId()); }
+ 
+           public void move(int x, int y) { impl_Window_move(getId(), x, y); }
+           public void resize(int w, int h) { impl_Window_resize(getId(), w, 
h); }
        }
        final private static Window defaultWindow = new Window(-1);
  
***************
*** 1355,1360 ****
--- 1361,1370 ----
  
        static private native void addTimeoutWindow(int id, int ms, int tid);
  
+       static private native void impl_Window_setCurrent(int id);
+       static private native void impl_Window_release(int id);
+       static private native void impl_Window_move(int id, int x, int y);
+       static private native void impl_Window_resize(int id, int w, int h);
  
      //--------- Image
        static public class Image extends NonRenderableJavaObject {
***************
*** 1439,1444 ****
--- 1449,1458 ----
            public void loadSubImage(int level, Image img, int xoffs, int 
yoffs) {
                impl_Texture_loadSubImage(getId(), level, img.getId(), xoffs, 
yoffs);
            }
+           public void downsampleInto(Texture into, String target, int level, 
String internalFormat, String transferformat) {
+               impl_Texture_downsampleInto(getId(), into.getId(), target, 
level,
+                       internalFormat, transferformat);
+           }
        }
        static public Texture createTexture() { 
            return new Texture(impl_createTexture());
***************
*** 1454,1459 ****
--- 1468,1475 ----
                            int border, String format, String type) ;
        static private native void impl_Texture_loadSubImage(int id,
            int level, int imgid, int xoffs, int yoffs) ;
+       static private native void impl_Texture_downsampleInto(int id, int 
intoid, String target, 
+               int level, String internalFormat, String transferformat);
  
      //--------- VertexProgramNV
        /** A vertex program object.
***************
*** 1630,1638 ****
         *              for the next native event.
         */
        public static native void eventLoop(boolean wait);
- 
-       public static native void startContext();
-       public static native void endContext();
  
        public static gzz.vob.Vob createCallList(String s) {
            return createCallList(createDisplayList(s));
--- 1646,1651 ----
Index: gzz/gzz/client/gl/GLUpdateManager.java
diff -c gzz/gzz/client/gl/GLUpdateManager.java:1.5 
gzz/gzz/client/gl/GLUpdateManager.java:1.6
*** gzz/gzz/client/gl/GLUpdateManager.java:1.5  Tue Sep  3 17:15:32 2002
--- gzz/gzz/client/gl/GLUpdateManager.java      Sat Sep 21 03:35:17 2002
***************
*** 30,36 ****
  import java.util.*;
  
  public class GLUpdateManager extends AbstractUpdateManager {
! public static final String rcsid = "$Id: GLUpdateManager.java,v 1.5 
2002/09/03 21:15:32 tjl Exp $";
      private static boolean dbg = false;
      private static void p(String s) { if(dbg) pa(s); }
      private static void pa(String s) { System.err.println(s); }
--- 30,36 ----
  import java.util.*;
  
  public class GLUpdateManager extends AbstractUpdateManager {
! public static final String rcsid = "$Id: GLUpdateManager.java,v 1.6 
2002/09/21 07:35:17 tjl Exp $";
      private static boolean dbg = false;
      private static void p(String s) { if(dbg) pa(s); }
      private static void pa(String s) { System.err.println(s); }
***************
*** 54,61 ****
      }
  
      protected void callGenerateEnd(Window w, int millis, float lod) {
-       GZZGL.startContext();
        super.callGenerateEnd(w, millis, lod);
-       GZZGL.endContext();
      }
  }
--- 54,59 ----
Index: gzz/gzz/gfx/gl/Stencil.java
diff -c gzz/gzz/gfx/gl/Stencil.java:1.12 gzz/gzz/gfx/gl/Stencil.java:1.13
*** gzz/gzz/gfx/gl/Stencil.java:1.12    Sun Sep 15 05:45:00 2002
--- gzz/gzz/gfx/gl/Stencil.java Sat Sep 21 03:35:17 2002
***************
*** 48,65 ****
        if(initStencil != null) return;
  
        initStencil = GZZGL.createCallList(
! " PushAttrib ENABLE_BIT STENCIL_BUFFER_BIT COLOR_BUFFER_BIT\n"+
  "    Enable STENCIL_TEST\n"+
  "    StencilFunc ALWAYS 1 255\n"+
  "    StencilOp ZERO ZERO REPLACE\n"+ // XXX
  "    StencilMask 255\n"+
! "    ColorMask 0 0 0 0\n"
            );
  
        initOutside = GZZGL.createCallList(
  "    StencilFunc EQUAL 0 1\n"+
  "    ColorMask 1 1 1 1\n"+
! "    StencilMask 0\n"
            );
  
        initBackplane = GZZGL.createCallList(
--- 48,67 ----
        if(initStencil != null) return;
  
        initStencil = GZZGL.createCallList(
! " PushAttrib DEPTH_BUFFER_BIT ENABLE_BIT STENCIL_BUFFER_BIT 
COLOR_BUFFER_BIT\n"+
  "    Enable STENCIL_TEST\n"+
  "    StencilFunc ALWAYS 1 255\n"+
  "    StencilOp ZERO ZERO REPLACE\n"+ // XXX
  "    StencilMask 255\n"+
! "    ColorMask 0 0 0 0\n"+
! "    DepthMask 0 \n"
            );
  
        initOutside = GZZGL.createCallList(
  "    StencilFunc EQUAL 0 1\n"+
  "    ColorMask 1 1 1 1\n"+
! "    StencilMask 0\n"+
! "    DepthMask 1\n"
            );
  
        initBackplane = GZZGL.createCallList(
***************
*** 89,97 ****
            );
  
        initZero = GZZGL.createCallList(
! "    StencilFunc ALWAYS 1 1\n"+
  "    StencilOp ZERO ZERO ZERO\n"+ // XXX
  "    StencilMask 255\n"+
  "    ColorMask 0 0 0 0\n"
            );
        exit = GZZGL.createCallList(
--- 91,100 ----
            );
  
        initZero = GZZGL.createCallList(
! "    StencilFunc EQUAL 1 1\n"+
  "    StencilOp ZERO ZERO ZERO\n"+ // XXX
  "    StencilMask 255\n"+
+ "    DepthMask 1\n"+ // Do write now.
  "    ColorMask 0 0 0 0\n"
            );
        exit = GZZGL.createCallList(
Index: gzz/gzz/vob/SolidBgVob.java
diff -c gzz/gzz/vob/SolidBgVob.java:1.5 gzz/gzz/vob/SolidBgVob.java:1.6
*** gzz/gzz/vob/SolidBgVob.java:1.5     Fri Sep 20 14:53:58 2002
--- gzz/gzz/vob/SolidBgVob.java Sat Sep 21 03:35:17 2002
***************
*** 62,67 ****
--- 62,70 ----
      private String getGLStr() {
        return
            "ClearColor " + ColorUtil.colorGLString(color) + " 0\n"+
+           "ColorMask 1 1 1 1\n"+
+           "DepthMask 1\n"+
+           "StencilMask 255\n"+
            "Clear COLOR_BUFFER_BIT DEPTH_BUFFER_BIT STENCIL_BUFFER_BIT\n"+
            "Enable TEXTURE_2D\n"+
            "Enable ALPHA_TEST\n"+




reply via email to

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