Archived

This topic is now archived and is closed to further replies.

Spartacus

OpenGL OpenGL appears to weird to me....

Recommended Posts

Hey! Im used to DirectX but recently I decided to learn OpenGL. It looks really nice, but it appears kinda weird to me in some cases. For example, in DirectX you have vertex buffers, and when you create a vertex buffer you can control whether it is created in system memory or video memory. In OpenGL it looks like vertices are always stored in system memory??? Is vertices always stored in system memory and then copied to video mem as needed (also in DX)??? And what is AGP memory as opposed to system memory and local video memory??? And another thing, the device is never lost under OpenGL?? In DX you have to restore your device, textures and vertex buffers when the device is lost...but you don''t have to do that under OpenGL...How can that be true?? Phew, that was alot of questions , I hope someone can answer some of them for me! Thanks in advance! René

Real programmers don''t document, if it was hard to write it should be hard to understand

Share this post


Link to post
Share on other sites
quote:
Original post by Spartacus
For example, in DirectX you have vertex buffers, and when you create a vertex buffer you can control whether it is created in system memory or video memory. In OpenGL it looks like vertices are always stored in system memory???


the standard vertex arrays are equivalent to drawprimitiveup functions. there are extensions (vertex array range/object, compiled vertex array) that allow you put your vertex data into video memory.
quote:

And another thing, the device is never lost under OpenGL??

gl restores devices under the hood for you, similar to how managed pool does the same thing in dx.

[edited by - niyaw on January 28, 2003 9:26:53 AM]

Share this post


Link to post
Share on other sites
you can store all the data in the video memory with the compiled vertex array extension or was it vertex array range i think the 1st one

2nd what are you talking about with device restore .... you create a render context for the window you want to render in
define the size with glviewport and done you can even share textures between several render contexts

Share this post


Link to post
Share on other sites