Skip to main content
gamedev.net
🔒 Locked

Massive slowdowns / Poor performance...

Started by Rasmadrak Aug 14, 2003 at 12:19 PM 4 replies 450+ views
Original Post
Rasmadrak
Rasmadrak
I''m developing a RTS game and everybody knows they got lots of units roaming around and destroying stuff... I''ve found the easiest way (best?) would be to have an array of units (class/struct) that gets rendered using glCallList(NameOfUnit)... But: Its freakin slow?!? I got an 1.7 gHz computer with Geforce3, so I figure I SHOULD be able to push more than 1000 polygons without all stuttery motions/graphics? I thought maybe I''m in software mode or something? But doesnt OpenGL automaticly switch to hardware? How do I change this if its not? For the time being the draw() function lies before the UpdateLogic() etc functions, and it should be in either a separate thread or simply base its calculations on the time it takes to draw one frame.... but again; I should be able to push much more than I do... Anyone with a smart solution or perhaps just a little helping advice regarding performance issues and such? help is badly needed... thanx! Btw, I do NOT draw the entire map at once! "Game Maker For Life, probably never professional thou." =)
"Game Maker For Life, probably never professional thou." =)
Madgap
Madgap
Need more info. How many units are you trying to draw at once? How many polys per unit? Are you sure its the drawing function that''s slowing everything down? You might want to do some experimentation: trying increasing the number of units you are drawing each frame to map the rate of framerate loss.

-Madgap
-Madgap
rhuagh
rhuagh
Have you profiled the code to see where the bottlenecks are?
Rasmadrak
Rasmadrak
There will be approximatly up to 400 units on screen simulationsly (where a unit could be an explosion, tank, etc.. )
think of em as objects instead. =)
Each object would be of 4-150 polys.

The CPU usage when drawing graphics is ~ 45% and without drawing the graphics < 1%.
When not rendering units/objects it's all smooth, soft and silky, but when the units pick up in numbers it goes very slow.... How do I meassure the fps?

What kind of info do you need? =)

"Game Maker For Life, probably never professional thou." =)

[edited by - Rasmadrak on August 14, 2003 2:06:16 PM]
"Game Maker For Life, probably never professional thou." =)
666_1337
666_1337
try using vertex arrays... they show nearly the same performance that display lists do, but however they require less cpu-usage than display-listed imidiate calls do...

maybe you should check your graphics driver or check if there is a funtion-/memory-overhead
our new version has many new and good features. sadly, the good nes are not new and the new nes are not good oo
rhuagh
rhuagh
You might also wanna check how much traffic you have on the agp-bus.. I''m just guessing, but you probably have different location matrices for each unit that get''s sent over the bus every frame.. some traffic that

Topic Locked

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

Sign in to reply to this topic.