Hi Robert,

I totally understand what you are saying. In fact, I do not want to turn this off, I was trying out a lot of things since I've got a bug here in a class which is a simplified precip. In this class I did not enable vbos and worked fine until I enabled vbo. So that's why I came up with my generic question whether or not I can disable the usage of vbo.

I will dig further, thanks for now.

best regards
Raymond




Robert Osfield wrote:
Hi Raymond,

I've just made your suggestion change, and it does break things on my
machine as well.

But... reviewing the code, we'll the code dynamically adjusts the
number of particles so it not meant ever to use display lists, rather
it only works with VBO's or vertex arrays.   Note the custom
PrecipitationDrawable that manages the actual rendering.

It's not at all a conventional bit of scene graph, and I'm kinda
perplexed why you'd want to go around changing the insides of such an
implementation.  The code is designed to use VBO's for a reason -
performance and flexibility, with was never meant to be used with
display lists as this breaks the whole way the implementation
functions.

Robert.

On Wed, May 28, 2008 at 1:05 PM, Raymond de Vries <[EMAIL PROTECTED]> wrote:
Hi Robert,

I just tried it with the svn version and the effect is the same as with
2.4.0, so still wrong. In order to do this I changed the lines 481, 488 and
into:
      _quadGeometry->setUseVertexBufferObjects(false);
      _lineGeometry->setUseVertexBufferObjects(false);
      _pointGeometry->setUseVertexBufferObjects(false);

Can you please test with these changed lines?

Thanks
Raymond

btw fyi: I still used the older 3rd party libs, not the most recent ones,
but that shouldn't harm I guess
btw I could not find a way to grab the fullscreen viewer, windows won't let
me, and the --viewer option does not work

Raymond de Vries wrote:
Hi Robert,

Both:

 osgprecipitation textured_box.osg
 osgprecipitation non_textured_box.osg

Work just fine for me, with SVN version of the OSG.  Note, there has
been a shader related bug fix to GLObjectVistor that may well have a
baring on this issue.

Did you change the vbo lines in the PrecipitationEffect.cpp?
As for VBO/non VBO on objects in the scene, this should have
absolutely no effect on the precipitation, suggesting either a bug on
the OSG side or a driver bug.  Could you try out the SVN version of
the OSG to see if this fixes things.

Sure, will do it right away.

Talk to you later,
Raymond

Robert.


Hi,

I am diving deep into the precipitation and trying out things (osg
2.4.0,
win xp, MS Visual Studio 2005 SP1). One of the things I did is to
disable
the usage of vbos, in lines 480, 487 and 494:
     _quadGeometry->setUseVertexBufferObjects(false);
     _lineGeometry->setUseVertexBufferObjects(false);
     _pointGeometry->setUseVertexBufferObjects(false);

When I do so, the precip is not drawn properly at all anymore, and it
depends if a load a textured or non-textured object (see the attached
models
+ image):
- non-textured: box rendered ok, no precip at all although it seems to
be
rendered judging from the performance
- textured: box rendered ok, precip is rendered not right at all (seems
like
large polygons or so)

So the general question is: should I be able to disable vbo at all
times? I
expected this would be possible (resulting in a performance penalty of
course). If so, there is an issue somewhere... I don't know where,
although
I spent many hours on this.

Thanks a lot
Raymond


MatrixTransform {
 DataVariance STATIC
 name "Scene Root"
 nodeMask 0xff
 cullingActive TRUE
 StateSet {
  UniqueID StateSet_0
  DataVariance STATIC
  rendering_hint DEFAULT_BIN
  renderBinMode INHERIT
  GL_LIGHTING ON
 }
 referenceFrame RELATIVE
 Matrix {
  1 0 0 0
  0 1 0 0
  0 0 1 0
  0 0 0 1
 }
 num_children 1
 MatrixTransform {
  DataVariance STATIC
  name "Box01"
  nodeMask 0xff
  cullingActive TRUE
  referenceFrame RELATIVE
  Matrix {
    1 0 0 0
    0 1 0 0
    0 0 1 0
    0 0 0 1
  }
  num_children 1
  Geode {
    UniqueID Geode_1
    DataVariance STATIC
    name "Box01-GEODE"
    nodeMask 0xff
    cullingActive TRUE
    num_drawables 1
    Geometry {
      DataVariance DYNAMIC
      StateSet {
        DataVariance STATIC
        rendering_hint DEFAULT_BIN
        renderBinMode INHERIT
      }
      useDisplayList TRUE
      useVertexBufferObjects FALSE
      PrimitiveSets 1
      {
        DrawArrays TRIANGLES 0 36
      }
      VertexArray Vec3Array 36
      {
        -14.7209 -13.6026 0
        -14.7209 13.6026 0
        14.7209 13.6026 0
        14.7209 13.6026 0
        14.7209 -13.6026 0
        -14.7209 -13.6026 0
        -14.7209 -13.6026 15.8052
        14.7209 -13.6026 15.8052
        14.7209 13.6026 15.8052
        14.7209 13.6026 15.8052
        -14.7209 13.6026 15.8052
        -14.7209 -13.6026 15.8052
        -14.7209 -13.6026 0
        14.7209 -13.6026 0
        14.7209 -13.6026 15.8052
        14.7209 -13.6026 15.8052
        -14.7209 -13.6026 15.8052
        -14.7209 -13.6026 0
        14.7209 -13.6026 0
        14.7209 13.6026 0
        14.7209 13.6026 15.8052
        14.7209 13.6026 15.8052
        14.7209 -13.6026 15.8052
        14.7209 -13.6026 0
        14.7209 13.6026 0
        -14.7209 13.6026 0
        -14.7209 13.6026 15.8052
        -14.7209 13.6026 15.8052
        14.7209 13.6026 15.8052
        14.7209 13.6026 0
        -14.7209 13.6026 0
        -14.7209 -13.6026 0
        -14.7209 -13.6026 15.8052
        -14.7209 -13.6026 15.8052
        -14.7209 13.6026 15.8052
        -14.7209 13.6026 0
      }
      NormalBinding PER_VERTEX
      NormalArray Vec3Array 36
      {
        0 0 -1
        0 0 -1
        0 0 -1
        0 0 -1
        0 0 -1
        0 0 -1
        0 0 1
        0 0 1
        0 0 1
        0 0 1
        0 0 1
        0 0 1
        0 -1 0
        0 -1 0
        0 -1 0
        0 -1 0
        0 -1 0
        0 -1 0
        1 0 0
        1 0 0
        1 0 0
        1 0 0
        1 0 0
        1 0 0
        0 1 0
        0 1 0
        0 1 0
        0 1 0
        0 1 0
        0 1 0
        -1 0 0
        -1 0 0
        -1 0 0
        -1 0 0
        -1 0 0
        -1 0 0
      }
      ColorBinding OVERALL
      ColorArray Vec4Array 1
      {
        0.109804 0.584314 0.694118 1
      }
    }
  }
 }
}

MatrixTransform {
 DataVariance STATIC
 name "Scene Root"
 nodeMask 0xff
 cullingActive TRUE
 StateSet {
  UniqueID StateSet_0
  DataVariance STATIC
  rendering_hint DEFAULT_BIN
  renderBinMode INHERIT
  GL_LIGHTING ON
 }
 referenceFrame RELATIVE
 Matrix {
  1 0 0 0
  0 1 0 0
  0 0 1 0
  0 0 0 1
 }
 num_children 1
 MatrixTransform {
  DataVariance STATIC
  name "Box01"
  nodeMask 0xff
  cullingActive TRUE
  referenceFrame RELATIVE
  Matrix {
    1 0 0 0
    0 1 0 0
    0 0 1 0
    0 0 0 1
  }
  num_children 1
  Geode {
    UniqueID Geode_1
    DataVariance STATIC
    name "Box01-GEODE"
    nodeMask 0xff
    cullingActive TRUE
    num_drawables 1
    Geometry {
      DataVariance DYNAMIC
      name "01 - Default"
      StateSet {
        UniqueID StateSet_2
        DataVariance STATIC
        rendering_hint DEFAULT_BIN
        renderBinMode INHERIT
        GL_CULL_FACE ON
        GL_LIGHTING ON
        0xba1 ON
        Material {
          DataVariance STATIC
          ColorMode OFF
          ambientColor 0.588235 0.588235 0.588235 1
          diffuseColor 1 1 1 1
          specularColor 0 0 0 1
          emissionColor 0 0 0 1
          shininess 0
        }
        textureUnit 0 {
          GL_TEXTURE_2D ON
          Texture2D {
            DataVariance STATIC
            file "br00.jpg"
            wrap_s CLAMP_TO_EDGE
            wrap_t CLAMP_TO_EDGE
            wrap_r CLAMP_TO_EDGE
            min_filter LINEAR_MIPMAP_LINEAR
            mag_filter LINEAR
            maxAnisotropy 1
            borderColor 0 0 0 0
            borderWidth 0
            useHardwareMipMapGeneration TRUE
            unRefImageDataAfterApply FALSE
            internalFormatMode USE_IMAGE_DATA_FORMAT
            resizeNonPowerOfTwo TRUE
          }
        }
      }
      useDisplayList TRUE
      useVertexBufferObjects FALSE
      PrimitiveSets 1
      {
        DrawArrays TRIANGLES 0 36
      }
      VertexArray Vec3Array 36
      {
        -14.7209 -13.6026 0
        -14.7209 13.6026 0
        14.7209 13.6026 0
        14.7209 13.6026 0
        14.7209 -13.6026 0
        -14.7209 -13.6026 0
        -14.7209 -13.6026 15.8052
        14.7209 -13.6026 15.8052
        14.7209 13.6026 15.8052
        14.7209 13.6026 15.8052
        -14.7209 13.6026 15.8052
        -14.7209 -13.6026 15.8052
        -14.7209 -13.6026 0
        14.7209 -13.6026 0
        14.7209 -13.6026 15.8052
        14.7209 -13.6026 15.8052
        -14.7209 -13.6026 15.8052
        -14.7209 -13.6026 0
        14.7209 -13.6026 0
        14.7209 13.6026 0
        14.7209 13.6026 15.8052
        14.7209 13.6026 15.8052
        14.7209 -13.6026 15.8052
        14.7209 -13.6026 0
        14.7209 13.6026 0
        -14.7209 13.6026 0
        -14.7209 13.6026 15.8052
        -14.7209 13.6026 15.8052
        14.7209 13.6026 15.8052
        14.7209 13.6026 0
        -14.7209 13.6026 0
        -14.7209 -13.6026 0
        -14.7209 -13.6026 15.8052
        -14.7209 -13.6026 15.8052
        -14.7209 13.6026 15.8052
        -14.7209 13.6026 0
      }
      NormalBinding PER_VERTEX
      NormalArray Vec3Array 36
      {
        0 0 -1
        0 0 -1
        0 0 -1
        0 0 -1
        0 0 -1
        0 0 -1
        0 0 1
        0 0 1
        0 0 1
        0 0 1
        0 0 1
        0 0 1
        0 -1 0
        0 -1 0
        0 -1 0
        0 -1 0
        0 -1 0
        0 -1 0
        1 0 0
        1 0 0
        1 0 0
        1 0 0
        1 0 0
        1 0 0
        0 1 0
        0 1 0
        0 1 0
        0 1 0
        0 1 0
        0 1 0
        -1 0 0
        -1 0 0
        -1 0 0
        -1 0 0
        -1 0 0
        -1 0 0
      }
      TexCoordArray 0 Vec2Array 36
      {
        1 0
        1 1
        0 1
        0 1
        0 0
        1 0
        0 0
        1 0
        1 1
        1 1
        0 1
        0 0
        0 0
        1 0
        1 1
        1 1
        0 1
        0 0
        0 0
        1 0
        1 1
        1 1
        0 1
        0 0
        0 0
        1 0
        1 1
        1 1
        0 1
        0 0
        0 0
        1 0
        1 1
        1 1
        0 1
        0 0
      }
    }
  }
 }
}

_______________________________________________
osg-users mailing list
[email protected]

http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org



_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org



_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org



_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to