GPU Buffers?

You are an experienced programmer and have a problem with the engine, shaders, or advanced effects? Here you'll get answers.
No questions about C++ programming or topics which are answered in the tutorials!
Post Reply

Would you use vertex buffers if IrrLicht offered them?

All the time!
10
42%
Sometimes
6
25%
Never
0
No votes
What are vertex buffers?
8
33%
 
Total votes: 24

SwiftCoder
Posts: 32
Joined: Thu Jan 15, 2004 7:33 pm
Location: Carribean

GPU Buffers?

Post by SwiftCoder »

First off, let me say that I am very grateful for the Mac port of IrrLicht, I am finally able to use it easilly!


I wondered if there is any interest in adding Hardware vertex and index buffers to IrrLicht?

Edit: I mean Vertex Buffer Objects in OpenGL parlance.

Most other engines support hardware buffers, and I could really use them, as I am sure could many others (and a full terrain renderer would really benefit).

I am willing to work up a proposal for simple vertex and index buffers (using the current, inflexible vertex formats), and then provide the OpenGL implementation after Niko has approved/ammended it. Let me know directly if you are interested.


My second gripe is the inflexible vertex formats, for instance, for performance reasons, my terrain renderer needs positions in one array per terrain page, and a single, global array of texture co-ordinates.

I understand that this would be a major change to the engine, but coupled with vertex buffers would make IrrLicht's performance and features much closer to Ogre and other high-end 3D engines.

Let me know your thoughts,

Tristam MacDonald
SwiftCoder
Posts: 32
Joined: Thu Jan 15, 2004 7:33 pm
Location: Carribean

Post by SwiftCoder »

Teach me to post before catching up on the local news!

Just discovered this is no longer a one-man outfit, and that VBO support may already be in the pipeline.

Is flexible vertex storage also in the works?

If you have any guidlines/ideas for either, I would like to help out.


I do have a small patch for the OpenGLNormalRenderer to make it work on many pre-pixelShader cards, who should I email the file to?
Nalin
Posts: 194
Joined: Thu Mar 30, 2006 12:34 am
Location: Lacey, WA, USA
Contact:

Post by Nalin »

spintz has added support for vertex/index buffers in his latest version of irrSpintz. I don't know if he is working with niko to get them added to irrlicht, but I thought I would just point out where you could find them.
hybrid
Admin
Posts: 14143
Joined: Wed Apr 19, 2006 9:20 pm
Location: Oldenburg(Oldb), Germany
Contact:

Post by hybrid »

Post the changes in the bug forum (even if it's not really a bug) and also mail me the patch (adresse on my webpage).
SwiftCoder
Posts: 32
Joined: Thu Jan 15, 2004 7:33 pm
Location: Carribean

Post by SwiftCoder »

hybrid wrote:Post the changes in the bug forum (even if it's not really a bug) and also mail me the patch (adresse on my webpage).
Thanks, will do when I have the source cleaned-up and commented 8)
bitplane
Admin
Posts: 3204
Joined: Mon Mar 28, 2005 3:45 am
Location: England
Contact:

Post by bitplane »

while you're cleaning and commenting, its a good idea to look at Niko's official rules for patch submission. It's also probably a good idea to also send the finished patch directly to him at the sf email address on the main page :)
Submit bugs/patches to the tracker!
Need help right now? Visit the chat room
SwiftCoder
Posts: 32
Joined: Thu Jan 15, 2004 7:33 pm
Location: Carribean

Post by SwiftCoder »

bitplane wrote:while you're cleaning and commenting, its a good idea to look at Niko's official rules for patch submission.
All I will actually be submitting is about twelve additional lines of code in the existing OpenGLNormalMapRenderer class, that cause it to use hardware dot3 support if it is available.

My Radeon 9000 has hardware dot3, although it has no pixel shaders, and I am sure others are in this possition ;)
hellbound
Posts: 51
Joined: Sat Jun 24, 2006 7:39 am

Post by hellbound »

yes... i would use it... the loading times would be a little higher, but the overall performance would be better
Post Reply