Archived

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

griffenjam

Speed of Display Lists

Recommended Posts

I just started using Display Lists to draw all text output however I haven''t noticed any speed improvments over not using a display list. Does it matter that the computer I am using has NO hardware OpenGL support? I am not going by my FPS counter, I am going by my profilers output. Jason Mickela ICQ : 873518 E-Mail: jmickela@sbcglobal.net -Making "alot" a real word one paragraph at a time.-
-Can''t sleep, clown''ll eat me, can''t sleep, clown''ll eat me.

Share this post


Link to post
Share on other sites
it really depends on the implementation. it''s probably a lot better for hardware implementations because most hardware will buffer the commands in hardware for batch processing.

try using compiled vertex arrays.

To the vast majority of mankind, nothing is more agreeable than to escape the need for mental exertion... To most people, nothing is more troublesome than the effort of thinking.

Share this post


Link to post
Share on other sites
Display lists are better for OpenGL. Instead of calling drawing code, it basically creates an instance of your code and stores it (you allready knew that). It is almost like calling glHint(): It''s doesn''t do much, but it''s good coding habbit to use it. In a large game, (especially the one that I am coding) display lists make your performance a little nicer.

It''s not that they have to be better than calling a function with all the code, it''s just that it''s good coding style. Kind of like when you learn NOT to make all your variables global.

Share this post


Link to post
Share on other sites
It''s not just a replacement for repeated function calls, display lists build up a compiled version of your drawing commands, so that all geometry is already ready to be processed by OpenGL / your graphic card and doesn''t need to build up and send there bit by bit. Your function may need to build up the model from some data using sins, sqrts and so on, all this calls are needed only once if you build a display list, so it is a huge performance increase in case you doesn''t have all the vertices and so on already given, i.e. you would have to calculate them.
Also, display lists put your data in the format that can be transferred to and processed by your 3d-card at highest speed.
This only applies to static geometry, because display lists can''t be altered after creation, so don''t try to use them with anything else but static geometry. But it is definitely a good idea to put all your static geometry in display lists, because it''ll increase performance and also gives you some nive possibilities as calling a bunch of them at once and so on.
Also read the nVidia Performance FAQ, it gives some nice information, it can be found at www.nVidia.com

Share this post


Link to post
Share on other sites
quote:
Original post by griffenjam
Does it matter that the computer I am using has NO hardware OpenGL support?



Yes. Try it out on a system with hardware acceleration, & you''ll see a difference.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
> Can i still use a matrix to place display my objects stored in display lists on various splaces.

Yes ofcourse you can. Vertices in display lists are still processed through the whole OpenGL pipeline, including matrices.

Share this post


Link to post
Share on other sites