Calllists vs glBegin/glEnd

Post Reply
Rexhunter99
Posts: 23
Joined: Thu Sep 09, 2010 1:28 pm
Location: Australia
Contact:

Calllists vs glBegin/glEnd

Post by Rexhunter99 » Sun Dec 05, 2010 12:11 am

What's better on the DS? I'm used to call lists being inferior when using animated meshes on PC OpenGL and because I dont have access to array features on the DS software and I dont entirely understand how the software utilizes call lists I am in favor of using glBegin and glEnd (no drawback for me so far, game runs at a steady playable framerate with no drops with a 510+ triangle scene.
Move over Mario... and cruise by Crash... Croc Rocks!
It's a serious adventure 3D platformer for all retro gamers to drool over =D

zeromus
Posts: 212
Joined: Wed Mar 31, 2010 6:05 pm

Re: Calllists vs glBegin/glEnd

Post by zeromus » Sun Dec 05, 2010 1:40 am

a display list is a DMA of static data. it will run faster than some cpu fiddling about and sending individual geometry commands (which actually consist of nothing more than writing words to memory mapped registers) for many reasons including that display lists can be packed to result in less data transfer. but then, it is considerably more difficult to work with.

Rexhunter99
Posts: 23
Joined: Thu Sep 09, 2010 1:28 pm
Location: Australia
Contact:

Re: Calllists vs glBegin/glEnd

Post by Rexhunter99 » Sun Dec 05, 2010 2:41 am

zeromus wrote:a display list is a DMA of static data. it will run faster than some cpu fiddling about and sending individual geometry commands (which actually consist of nothing more than writing words to memory mapped registers) for many reasons including that display lists can be packed to result in less data transfer. but then, it is considerably more difficult to work with.
Regardless of them being more difficult, are they modifiable on the fly? I need to be able to modify the vertex normals and co-ordinates for animations... if not I can always render static instances using a display list and dynamic instances using glBegin and glEnd.
Move over Mario... and cruise by Crash... Croc Rocks!
It's a serious adventure 3D platformer for all retro gamers to drool over =D

zeromus
Posts: 212
Joined: Wed Mar 31, 2010 6:05 pm

Re: Calllists vs glBegin/glEnd

Post by zeromus » Sun Dec 05, 2010 3:34 am

its just bytes in memory. you can modify it all you want. but i dont think i would do it that way.

Discostew
Posts: 103
Joined: Sun Mar 08, 2009 7:24 pm

Re: Calllists vs glBegin/glEnd

Post by Discostew » Sun Dec 05, 2010 9:20 am

What about having both a display list, and another set of information that holds the data of modifiable vertices that also points to where each vertex, normal, etc information is held in the display list, so that when a vertex is processed, it would then copy into the designated spots the modified version into the list?

Scribe
Posts: 6
Joined: Tue Nov 02, 2010 1:52 am

Re: Calllists vs glBegin/glEnd

Post by Scribe » Sun Dec 19, 2010 12:19 am

I'd consider just how much you're expecting from the DS. It'll take a lot from a fairly slow ARM9 to perform bone like animation (notice in DS games it's primarily a link-up of static meshes) in which case you animate these by having parent-child meshes and a matrix on each child to keep track of its position/location from the parent. This will allow you to animate sub-meshes rather than individual vertices but won't require you to edit your display lists and has no performance hit on the DS.

eradsoft
Posts: 30
Joined: Fri Dec 17, 2010 1:34 pm
Location: Either side of South Bypass, Madrid, Spain

Re: Calllists vs glBegin/glEnd

Post by eradsoft » Sat Feb 26, 2011 11:43 pm

I have been using linear vertex interpolation for that issue and this
can be done quite fast, for the normals it is different, but if the sample
rate is fast enough also linear interpolation can be used for the normals
--------------------------------
Welcome, my son, to the machine.
Pink Floyd.

Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests