Java-Gaming.org    
Featured games (91)
games approved by the League of Dukes
Games in Showcase (580)
games submitted by our members
Games in WIP (500)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  JOGL texture flickering  (Read 1537 times)
0 Members and 1 Guest are viewing this topic.
Offline lonedrau

Junior Newbie





« Posted 2011-02-25 19:23:40 »

I am playing around with the JOGL double-buffering example at http://www.java-tips.org/other-api-tips/jogl/how-to-implement-a-simple-double-buffered-animation-with-mouse-e.html, and modified it to draw a rotating square moving across the page.

This worked, but when I tried to bind a texture to it, the image flickers as it goes across the screen.  I have tried also setting the swap interval to use vsync, but there was no improvement.

What could cause the flickering, and what can I do to get rid of it?

Here is where I altered the code from Kiet Le's original example:
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
34  
35  
36  
37  
38  
39  
40  
41  
42  
43  
44  
45  
46  
47  
48  
49  
50  
51  
52  
53  
Texture elf;
float x = -100f;
public void init(GLAutoDrawable drawable) {
      GL gl = drawable.getGL();
      gl.setSwapInterval(1);
      gl.glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
      gl.getGL2().glShadeModel(GLLightingFunc.GL_FLAT);
      gl.glEnable(GL.GL_BLEND);
      try {
         // load a 64x64 image
        elf = loadImage("jogl/ch8/0_2.png");
      } catch (Exception ex) {
         ex.printStackTrace();
      }
   }
public void display(GLAutoDrawable drawable) {
      GL gl = drawable.getGL();
      gl.glClear(GL.GL_COLOR_BUFFER_BIT);
      elf.enable();
      elf.setTexParameteri(GL.GL_TEXTURE_WRAP_S,
            GL2.GL_CLAMP);
      elf.setTexParameteri(GL.GL_TEXTURE_WRAP_T,
            GL2.GL_CLAMP);
      elf.setTexParameteri(GL.GL_TEXTURE_MAG_FILTER,
            GL.GL_NEAREST);
      elf.setTexParameteri(GL.GL_TEXTURE_MIN_FILTER,
            GL.GL_NEAREST);
      elf.bind();
      gl.getGL2().glPushMatrix();
      gl.getGL2().glTranslatef(x, -50, 0f);
      gl.getGL2().glRotatef(spin, 0.0f, 0.0f, 1.0f);
      gl.getGL2().glColor3f(1.0f, 1.0f, 1.0f);
      gl.getGL2().glBegin(GL2.GL_QUADS);
      gl.getGL2().glTexCoord2f(0, 1);
      gl.getGL2().glVertex2f(0, 0);
      gl.getGL2().glTexCoord2f(1, 1);
      gl.getGL2().glVertex2f(25, 0);
      gl.getGL2().glTexCoord2f(1, 0);
      gl.getGL2().glVertex2f(25, 25);
      gl.getGL2().glTexCoord2f(0, 0);
      gl.getGL2().glVertex2f(0, 25);
      gl.getGL2().glEnd();
      elf.disable();
      //gl.getGL2().glRectf(x, -50f, x + 25f, -25f);
     gl.getGL2().glPopMatrix();

      gl.glFlush();
      x++;
      if (x > 50f) {
         x = -100f;
      }
      spinDisplay();
   }

Offline lhkbob

JGO Knight


Medals: 32



« Reply #1 - Posted 2011-02-25 21:59:58 »

What type of flickering do you mean?  Does the image appear and disappear or is it aliasing within the image?  If it's aliasing, you could try using GL_LINEAR instead of GL_NEAREST

Offline lonedrau

Junior Newbie





« Reply #2 - Posted 2011-02-28 15:04:25 »

Thanks, lhkbob!  It was aliasing within the image.  Changing the tex params to GL_LINEAR solved the problem.
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

xsi3rr4x (50 views)
2014-04-15 18:08:23

BurntPizza (46 views)
2014-04-15 03:46:01

UprightPath (62 views)
2014-04-14 17:39:50

UprightPath (44 views)
2014-04-14 17:35:47

Porlus (61 views)
2014-04-14 15:48:38

tom_mai78101 (84 views)
2014-04-10 04:04:31

BurntPizza (142 views)
2014-04-08 23:06:04

tom_mai78101 (242 views)
2014-04-05 13:34:39

trollwarrior1 (201 views)
2014-04-04 12:06:45

CJLetsGame (208 views)
2014-04-01 02:16:10
List of Learning Resources
by SHC
2014-04-18 03:17:39

List of Learning Resources
by Longarmx
2014-04-08 03:14:44

Good Examples
by matheus23
2014-04-05 13:51:37

Good Examples
by Grunnt
2014-04-03 15:48:46

Good Examples
by Grunnt
2014-04-03 15:48:37

Good Examples
by matheus23
2014-04-01 18:40:51

Good Examples
by matheus23
2014-04-01 18:40:34

Anonymous/Local/Inner class gotchas
by Roquen
2014-03-11 15:22:30
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!