Hi David,

On Wed, Sep 16, 2009 at 8:26 PM, David Angelo <
[email protected]> wrote:

> The input data I currently have is a regular grid with holes. At the
> moment support for irregular meshes is not needed. All mesh
> manipulationa will be based on the regular grid. Do you have a hint
> how to efficiently triangulate this regular grid with holes?
>

Are you able to store the data as a height field with z values set a no data
values?

One avenue I would explore would be to be to tile the whole grid, with each
tile something like 100x100, and then position them down in the vertex
program using the height field of each tile being read from a texture and
place into the right place in 3D and tag the non data values so that in the
geometry shader you can discard all triangles that have a non data value at
a corner.

The approach would be about minimizing the amount of geometry data you pass
to the GPU, you could also balance the load by passing the tile mesh at a
lower or higher density.

One thing to note is that you a mesh of 1000x1000 that fills the whole
screen will have roughly on vertex per pixel, with through even more data
than this will do nothing more for the visual effect other than overload all
your CPU + GPU memory, buses and processing.  This means you should be able
to decimate your data pretty aggressively without affecting the visual
results if you chose your LOD scheme well.

Personally I wouldn't chase up a CLOD scheme as it'll just overload the CPU
and buses between the CPU and GPU.  You could look into using the GPU to do
CLOD, but I'd guess that efficiently storing the data will be the critical
thing rather than fine grained LOD.

Robert.

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

Reply via email to