Speed problems with a 8 MB Rage 128 card

Moderator
Posts: 522
Joined: 2002.04
Post: #1
I tried my game out on an old 350 mhz iMac and wasn't very happy with the results. It only got about 3-4 fps. It had 21 textures loaded up, but wasn't drawing that many.

There are 8 512x512 textures with alpha, 3 512x256 textures with alpha, a few 256x256 and etc.

I was getting a good 20 fps when I was just drawing 140 quad strips and 280 glAA lines with a couple 512x512 backdrop sprites.

Do I have any chances of getting this to perform playably on this old of a machine? Am I running into a fill rate issue, or (more likely) a running out of graphics memory issues?

I don't want to disclude all 16 megabyte cards as well from the "requirements". . . is it correct that more modern fast agp-cards have less of an issue with this because they can more quickly swap textures in and out as needed?

Thank you
-Jon
Quote this message in a reply
Sage
Posts: 1,232
Joined: 2002.10
Post: #2
First thing to do is to profile with Shark and GL Profiler to see where time is spent. But, right away, you can see that you're out of VRAM. 8 512x512 RGBA textures = 8 megs, so you're trashing AGP every frame (the first few slot-loading iMac models only have 8 megs, not 16.)

Also the Rage128 has pretty low fillrate; doing a lot of blending will really hurt.

For reference, Shoot Things runs at 25-45fps on a 400Mhz iMac DV (8 meg Rage128) so if you fix your texture sizes, it might run OK, but your content will have to be pretty darn simple to hit 60fps on those old machines.

[Edit: if you change the Display to Thousands of colors before launching, Shoot Things will hit 60fps on that iMac at the title screen.]
Quote this message in a reply
Member
Posts: 196
Joined: 2003.10
Post: #3
I have the imac DV 400 with 8 meg Rage128 and 384mb of ram that arekkusu is speaking of. I can test if you'd like. Generally i find the card's drivers a bit buggy, but the machine works ok, i suppose.
Quote this message in a reply
Member
Posts: 110
Joined: 2002.07
Post: #4
the problem with imac and 8Mb video card is it not 3d at all
if you try to staart the screensaver you can see you cant do fast game with it:
an opengl window in 640x480 should run at 10fps but without any texture or polygon Huh
Quote this message in a reply
Moderator
Posts: 335
Joined: 2002.04
Post: #5
It may be an idea to use lower resolution textures when your game is running on older graphics cards. You could rescale them at loading time if the VRAM is short.
Quote this message in a reply
Vertizor
Unregistered
 
Post: #6
In addition to smaller textures, perhaps a lower color depth for the rendering context would help. Like 16-bit instead of 32-bit.
Quote this message in a reply
Member
Posts: 469
Joined: 2002.10
Post: #7
Also, don't forget the lack of AGP with the rage128. This means you'll use a different data path for fast tex upload and also you'll have to deal with texture priority (if that's your bag).

---Kelvin--
15.4" MacBook Pro revA
1.83GHz/2GB/250GB
Quote this message in a reply
Sage
Posts: 1,232
Joined: 2002.10
Post: #8
PCI/AGP depends on the Mac. A Blue & White G3 tower with a Rage 128 card is PCI. An iMac DV with Rage 128 is 2xAGP.
Quote this message in a reply
webwarrior
Unregistered
 
Post: #9
aarku Wrote:There are 8 512x512 textures with alpha, 3 512x256 textures with alpha, a few 256x256 and etc.
This may not directly address your problem, but in general, textures should be square for performance reasons I thought (correct me if I'm wrong!). So a 512x256 texture is bad.
Quote this message in a reply
Sage
Posts: 1,232
Joined: 2002.10
Post: #10
512x256 is perfectly OK.
Quote this message in a reply
Member
Posts: 469
Joined: 2002.10
Post: #11
webwarrior Wrote:This may not directly address your problem, but in general, textures should be square for performance reasons I thought (correct me if I'm wrong!). So a 512x256 texture is bad.
Nope, to your hardware this just looks like an array of 131072 pixels (unpackrowlength not withstanding.) If you are thinking of the power of two req, this has to do with the way the GL does the texture coordinate math; because of the format used, the binary float {0.0,1.0} GL has a 1 to 1 correspondence between pixels and bits. From there the hardware has but to shift bits to get to the proper pixel to rasterize. This is also why the texture coordinate formats for RectTexExt are actual pixel coordinates instead of {0.0,1.0}; makes the math easier.

---Kelvin--
15.4" MacBook Pro revA
1.83GHz/2GB/250GB
Quote this message in a reply
Post Reply 

Possibly Related Threads...
Thread: Author Replies: Views: Last Post
  "Speed" problems with OpenGL apps? Gateway 1 2,759 Jul 30, 2006 02:31 PM
Last Post: OneSadCookie
  openGL on ATI Rage 3D Pro honkFactory 5 4,043 Dec 31, 2002 04:46 PM
Last Post: honkFactory