Skip to main content
gamedev.net
🔒 Locked

Non-Float data types and Buffer Objects

Started by LordOrion 0 replies 850+ views
Original Post
LordOrion
LordOrion
Hi to everyone. In my previous post about how to use glTexCoord2s() I've learned that even if I use smaller, non-float data types for vertexes, normals and colors )to reduce the amount of memory to be sent to the GPU per frame) is it possible that the Driver convert them back to float before send data to the GPU and hence my optimization can be trashed away. My questions are: 1) The same above rule is valid even if I use Buffer Objects to directly store geomery data on VRAM? 2) In case geometry is stores using the source format (integer) is still possible that GPU converts them to float before using it? 3) (if all hope is lost...) someone knows where find some hints/suggestions on how to render a 1.5 millions of vertexes mesh with an acceptable frame rate? Thank you very much!
Bye and Thanks!SiS.Professional Software Developer.
LtJax
LtJax
Hi,

1) Yes.
2) Yes.
3) That's actually not that much and it should be doable on most current cards. First thing is that you need to store the mesh in Buffer Objects. The other thing is that you need to make sure most of the vertices are only transformed/accessed once per frame by using indexed primitives and reordering the triangles and vertices to keep the caches happy. There's good tools to do that on the Nvidia Developers website and there's a good explanation why and another algorithm on Tom Forsyth's (from RAD game tools) blog.

--LTJ

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.