On Jan 26, 2:49 pm, Tristam MacDonald <[email protected]> wrote:
> Geometry shaders aren't as fast as they might be, but histopyramids perform
> the exact same task, and are much faster.
Provided you can somehow rather directly get texture data into vertex
buffers (commonly known as render to vertex buffer)

> Instancing was devised to work around the high cost of DX 9 draw calls. It
> was never billed as a performance save in the OpenGL world, although it does
> allow you to free up some CPU time for other tasks.
I've measured pseudo vs. true instancing on my gForce 8800 GTS, and it
performs to within a hairswidth the same performance.

> I would recommend that you eliminate that expensive copy either by
> switching the terrain visualisation to relief mapping (thus rendering
> entirely in the pixel shader)
Relief mapping is slow as hell, besides other rendering related
drawbacks and artefacts.

>, or using vertex texture fetch to use the
> heightmap texture directly in the vertex shader
Vertex shader texture fetches slow as hell.

> , or use a texture buffer
> object + framebuffer blit to perform the copy a lot faster.
This is what I do, I follow the spirit of render to vertex buffer
*precisely*, you must have skipped that part of the code, so I'll
explain to you what it does:
1) use a source heightmap and write that to two textures being the
vertex map and the normal map by way of a FBO
2) copy that into a PBO (which theoretically should be vram -> vram)

Suggesting to get rid of the copying process is silly, because
- The texture storage extension (where you get to attach a PBO as the
storage for a texture) does only work on nvidia cards, and I think my
linux driver doesn't even support it.
- Other then copying, there's no way to get data from textures to PBOs
- You can't attach a PBO to a FBO as render target

-- 
You received this message because you are subscribed to the Google Groups 
"pyglet-users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/pyglet-users?hl=en.

Reply via email to