0.8.9.4 release of GLGraphics and roadmap   13 comments

Hello, today I upload a new version of glraphics: 0.8.9.4. As usual, download from sourceforge. This version is compiled with Java 1.5, which hopefully will solve the compatilbility issues some people were experiencing. It also also solves a minor bug in the compiled grid mode (quad strips work now). I also added support for geometry shaders in GLSL (specification here, a couple of tutorial here and here), which allow to create vertexes in the GPU (useful for very fast geometry refinement, for example). However, I haven’t been able to include any example making use of geometry shaders yet.

The plan consists in releasing 0.9 next, which will include a number of major additions and improvements, such as better compatibility with ATI cards, render to vertex buffers, model class, integrated camera handling and pixel buffers. For more details on these planned features, please take a look at the tracker on sourceforge.

Advertisements

Posted December 17, 2008 by ac in Programming

Tagged with , , , , , , , ,

13 responses to “0.8.9.4 release of GLGraphics and roadmap

Subscribe to comments with RSS.

  1. Sounds like really neat stuff. Going to check this out pronto.

  2. Andres,

    if I create a GLGraphicsOffScreen object, the GLTexture returned by getTexture() is flipped in the Y direction. Wondering why that is the default behavior when all draw commands (rect, set, etc) work on a non-flipped manner.

  3. Good point. The reason for that behavior was the fact that the orientation of the Y axis in Processing (top to bottom) is the opposite to the one used in OpenGL (bottom to top).

    The offscreen texture was flipped when rendering it, but I just looked at the GLGraphicsOffscreen code and I realized of a better and very simple solution (scaling the viewport by -1 along Y when starting the offscreen rendering). So now the texture returned by getTexture() shouldn’t be flipped. I’ll upload the new version of glgraphics to sourceforge later, in the meantime you can grab this package I just compiled:

    http://users.design.ucla.edu/~acolubri/test/glgraphics-20081221.zip

  4. Hey Andres,

    that works… but now if I use GLGraphicsOffScreen.image(GSCapture.get(), 0, 0), the result is upside down. This is all a little confusing. I don’t have the code in front of me, but I was looking at it briefly this morning.

  5. I’m not sure why is that, I’ll look at it.

    A momentary workaround would be to copy the image in the GSCapture object into a GLTexture, and then flip the texture. Something like:

    GLTexture tex;
    GSCapture capture;
    GLGraphicsOffscreen offscreen;

    tex.putPixelsIntoTexture(capture);
    tex.setFlippedY(true);
    offscreen.image(tex, 0, 0);

  6. Hi Andres,

    just noticed that I’m getting a lot of Validation warnings with the example GLSL shaders. They all complain about the same thing. All the shaders I have give this warning but they seem to be performing correctly. Here’s one from the BloomEffect example (ExtractBloom.glsl):

    Validation warning! – Sampler value src_tex_unit0 has not been set in fragment shader

  7. It is a strange warning (I’ve never seen it myself) since the sampler values are supposed to be set from the main application (at least that’s my understanding) and not from within the shader…

    What version of openGL/GLSL are you using? What platform?

  8. I working in Vista x64 with an ATI 4870. Not sure what version of OpenGL/GLSL I’m using. I’ve seen this warning since I started using GLTexture a few weeks ago. The shaders continue to work despite the warning and I can access src_tex_unit0, etc.

  9. You should be able to get the version from the Driver’s control panel…

    But from Processing you can run this little program:

    import processing.opengl.*;
    import javax.media.opengl.*;

    size(100, 100, OPENGL);

    GL gl = ((PGraphicsOpenGL)g).gl;
    println(“OpenGL version: ” + gl.glGetString(GL.GL_VERSION));
    println(“GLSL version: ” + gl.glGetString(GL.GL_SHADING_LANGUAGE_VERSION_ARB));

    So all the examples work on your computer, including the particle system ones?

  10. Yeah, all the examples work including the particle one. Here’s the printout from that little program:

    OpenGL version: 2.1.8304 Release
    GLSL version: 1.20

  11. I take that back about the particle example. It renders yellow boxes instead of the bubble texture.

  12. I just tried running the example programs including the simple GPU particles on a system that has a NVidia 8800GTS video card and it works fine. No warning messages and I can see the bubble texture. So, looks like it’s an ATI compatibility problem.

  13. Thansk for the feedback.

    Since I don’t have access right now to a recent ATI card, it is difficult to ensure compatibility across ATI and NVidia.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: