Welcome, Guest. Please Login or Register.  • Help
SMF Underground
+ SHMUP-DEV » SHMUP DEV FORUMS » Assistance
|-+ Sprite Rendering Test

Pages: [1]   Go Down
0 Members and 1 Guest are viewing this topic. Topic Tools  
Read January 02, 2006, 11:38:57 AM #0
2dguy

Sprite Rendering Test

I was just curious if anyone can write a demo similar to the one attached here, but get better performance? If so I'd like to download it and run it on my computer for comparison, thanks.

This demo is from the HGE site, at http://www.relishgames.com

When I run the demo on my machine (2.9ghz, Celeron, On Board Intel);
With 2000 hares, default blending mode (0), I get 14fps.

[attachment lost, please re-upload]
Offline  
Read January 02, 2006, 01:18:48 PM #1
Matt McFarland

Re: Sprite Rendering Test

heh, those guys remind me of telletubbies (sp?) - I think they're rendered perfectly.  Good JoB!  Cool


<a href="http://www.mattmcfarland.com/flash/myFlashSig.swf" target="_blank">http://www.mattmcfarland.com/flash/myFlashSig.swf</a>
Offline  
Read January 02, 2006, 01:24:41 PM #2
Bursar

Re: Sprite Rendering Test

You haven't exectly got a great gaming PC there. My P4 3.2HT, 2GB DDR2, 7800GTX gives me about 750fps with 1000 hares and blend mode 0.
Offline  
Read January 02, 2006, 01:36:22 PM #3
Matt McFarland

Re: Sprite Rendering Test

Mehh. I can play Quake 4 at 70 fps with everything turned all the way up (except AA) - I have Athlon XP 2500+ 1 gig ddr and nvidia 6800 

  Yeah, its below yours, but its still a good gaming PC. Roll Eyes


<a href="http://www.mattmcfarland.com/flash/myFlashSig.swf" target="_blank">http://www.mattmcfarland.com/flash/myFlashSig.swf</a>
Offline  
Read January 02, 2006, 02:43:44 PM #4
2dguy

Re: Sprite Rendering Test

hmm.. well if no one else is going to try to code anything faster, perhaps at least if those who run the demo with all 2000 hares on, state thier sysem specs that might help. Personally my own custom 2D engine was just slightly slower than this one.

"My P4 3.2HT, 2GB DDR2, 7800GTX..."

Nice kit, but a little over spec for the typical shoot-em-up fan don't you think?
Offline  
Read January 02, 2006, 03:17:12 PM #5
Ape

Re: Sprite Rendering Test

Hi on my AMD 2400+ with Geoforce 4800 512 RAM, I get 62 fps with 2000 hares blend mode 0


www.stgfan.com the number one swedish shmup community
Offline  
Read January 02, 2006, 07:14:38 PM #6
oNyx

Re: Sprite Rendering Test

>On Board Intel

That one is to blame. Havent seen the demo but by the sounds of it its totally fillrate limited. Do yourself a favour and buy some used geforce or some radeon for a tenner.
Offline  
Read January 02, 2006, 11:03:22 PM #7
2dguy

Re: Sprite Rendering Test

"That one is to blame. Havent seen the demo but by the sounds of it its totally fillrate limited. Do yourself a favour and buy some used geforce or some radeon for a tenner."

Why would I develop on a board that only a small percentage of my target market (casual gamer) would have?

I'm beginning to notice a trend around here, several developers here seem to have state of the art systems or very powerful computers to develop their games on. I on the other hand purposely develop on somewhat low end spec machines.

Hey, I'm also developing asteroids, galaga clones, etc. But do you guys really think someone who would "purchase" that type of game is going to have a good 3D card?
Offline  
Read January 03, 2006, 12:51:26 AM #8
Olofson

Re: Sprite Rendering Test

I'm beginning to notice a trend around here, several developers here seem to have state of the art systems or very powerful computers to develop their games on. I on the other hand purposely develop on somewhat low end spec machines.

Hey, I'm also developing asteroids, galaga clones, etc. But do you guys really think someone who would "purchase" that type of game is going to have a good 3D card?

You may be right about the trend here. (I'm on an AMD64 machine with a 512 MB "special" 6800 Ultra card.) I believe most developers want the fastest machines, biggest displays and heaviest sound systems that they can afford, for maximum pleasure and minimal compile times. I know I do, at least.

You have a point there, though; we should remember that your average user does not have more than a fraction of the power we have on/under our desks. The important part here is that slower computers are not just plain slower. They may need different balancing for optimal performance!

Anyway, there's a huge difference between a computer with just about any integrated graphics solution, and a computer with just about any video card. The nVidia IGP chipsets are the only ones I've used so far that have anything worth calling 3D acceleration. Most of the others are slow, broken and/or have useless drivers.

So, if you're focusing on computers with integrated 3D "accelerators", you should probably forget about 3D acceleration altogether, and use a native 2D rendering API such as the old DirectDraw instead.


//David
Offline  
Read January 03, 2006, 01:31:48 AM #9
2dguy

Re: Sprite Rendering Test

"So, if you're focusing on computers with integrated 3D "accelerators", you should probably forget about 3D acceleration altogether, and use a native 2D rendering API such as the old DirectDraw instead."

The flip side is, the end user who does have these awesome cpu/gpu combinations are probably much more interested in paying for doom4 or quake5 compared to the average effort from developers here.

As long as developers scale their game to run decently on older hardware there shouldn't be a problem. But I'd rather develop on a low end spec and have it run great and then even better on new hardware compared to coding on a state of the art beast and having it run doggy on older hardware.

I guess there's developing for money and developing for fun. Wink
Offline  
Read January 03, 2006, 01:44:08 AM #10
oNyx

Re: Sprite Rendering Test

[....]I'm beginning to notice a trend around here, several developers here seem to have state of the art systems or very powerful computers to develop their games on.[...]

Erm... no. My machine is really old (500mhz... its about 6 years old). However, my graphics card isnt as bad as yours.

40fps with 2000 hares.

And yes its completely fillrate limited. There are basically no calculations at all.

500-800mhz are just fine for about any sort of shoot em up. You only need some half decent graphics card like a geforce1 (or better). Just check ebay and buy some usable one (with tv out) for a tenner.
Offline  
Read January 03, 2006, 03:17:23 PM #11
2dguy

Re: Sprite Rendering Test

"500-800mhz are just fine for about any sort of shoot em up. You only need some half decent graphics card like a geforce1 (or better)."

EXACTLY my thoughts, which puzzles me when I download shooters, some from this site, and they run at very slow frame rates, and I'm like, "what were they thinking!!", and then I realize they are developing on high end equipment and assume their target market will have similar hardware.

When a Space Invaders or Galaga clone comes bundled in a 10-20mb download and requires a 32mb 3D card, then something is wrong imho. Wink
Offline  
Read January 03, 2006, 03:24:16 PM #12
Matt McFarland

Re: Sprite Rendering Test

EXACTLY my thoughts, which puzzles me when I download shooters, some from this site, and they run at very slow frame rates, and I'm like, "what were they thinking!!", and then I realize they are developing on high end equipment and assume their target market will have similar hardware.

When a Space Invaders or Galaga clone comes bundled in a 10-20mb download and requires a 32mb 3D card, then something is wrong imho. Wink

Humm.. well I'm running a high-end machine and the game is using DirectX, I'm not using any 3D but I have no idea how this thing is going to run on a slow machine..  I really hope that it runs well but how will I know?  I assume that the only way to find out is to test it on a slow computer, unless there is another way?


<a href="http://www.mattmcfarland.com/flash/myFlashSig.swf" target="_blank">http://www.mattmcfarland.com/flash/myFlashSig.swf</a>
Offline  
Read January 03, 2006, 04:31:47 PM #13
Nexic

Re: Sprite Rendering Test

I have an old 700mhz, geforce4 PC that I test my games on. If I can't get over 80 fps on that it doesn't get released.
Offline  
Read January 03, 2006, 04:33:41 PM #14
Matt McFarland

Re: Sprite Rendering Test

I have an old 700mhz, geforce4 PC that I test my games on. If I can't get over 80 fps on that it doesn't get released.

Any rules you go by that make sure you dont have any compatibility problems while you design a game?


<a href="http://www.mattmcfarland.com/flash/myFlashSig.swf" target="_blank">http://www.mattmcfarland.com/flash/myFlashSig.swf</a>
Offline  
Read January 03, 2006, 06:47:11 PM #15
oNyx

Re: Sprite Rendering Test

[...]
Humm.. well I'm running a high-end machine and the game is using DirectX, I'm not using any 3D but I have no idea how this thing is going to run on a slow machine..  I really hope that it runs well but how will I know?  I assume that the only way to find out is to test it on a slow computer, unless there is another way?

Testing is of course the best way, since it will give the most accurate results (obviously).

Other than that you have basically 2 big bits... rendering and logic. You can easily have 2000+ tiny objects on screen. If you batch things up properbly and if the overdraw isnt too high (200% are ok) the speed will be just fine.

And the logic part can be benched and the time per frame can be extrapolated. An athlon xp 2000+ for example is about 6 (not 4) times faster than a k7/p3 500. And A64 cpus are about 20% faster (in 32bit mode) than those xp versions.
Offline  
Read January 05, 2006, 05:55:40 AM #16
2dguy

Re: Sprite Rendering Test

"I have an old 700mhz, geforce4 PC that I test my games on. If I can't get over 80 fps on that it doesn't get released."

See, this is the exact problem I have been trying to get across. Even a Ge4 is not by any means the normal for the low end. Onboard Intel is the normal, and they are the most popular graphics card around. The above author claims he doesn't realease a game running less than 80fps, well as you can see (from the attached screen shot) on my machine the average frame rate was in the 30-40's and dipped into the 20's and less when alot more activity was happening on screen. And this on a 2.9ghz machine less than 4 months old.

Are we assuming all these high end graphics cards users are dying to get their hands on another Asteroids or Galaga clone? I know my target user, they are usually male, work out of a cube, download all day long until they get caught, go home and boot up a machine they've had for a while and play a quick fix of a game until their short attention span expires. These are not cutting edge gamers by any means.  Roll Eyes

[attachment lost, please re-upload]
Offline  
Read January 05, 2006, 07:05:38 AM #17
oNyx

Re: Sprite Rendering Test

A geforce2mx (for example) isnt cutting the edge by any means. That intel integrated thingy is just really really really bad. Really.

You could get such a graphics card for a tenner 2 years ago. And now I've got a ati9100 (3.5 years ago that was very low end)... for... well... duh... free. Its leftover hardware no one cares about. But its still alot faster than that integrated pile o'shit intel chipset.

You just have to draw the line somewhere. You just need some fillrate for some blending etc. And there will be always some overdraw and some alpha. An integrated office chipset isnt necessarily going to cut it.
Offline  
Read January 05, 2006, 10:49:31 AM #18
Matt McFarland

Re: Sprite Rendering Test

I'm using a lot of realtime scaling and alpha blending, is this 3D card related?


<a href="http://www.mattmcfarland.com/flash/myFlashSig.swf" target="_blank">http://www.mattmcfarland.com/flash/myFlashSig.swf</a>
Offline  
Read January 05, 2006, 03:06:34 PM #19
2dguy

Re: Sprite Rendering Test

"I'm using a lot of realtime scaling and alpha blending, is this 3D card related?"

Since DirectDraw doesn't support those features, both scaling and alpha blending are usually "direct3D" features. What language/engine are you using? Btw, scaling regardless of the card, takes a hit, VERY small, but a hit.

"You just have to draw the line somewhere...An integrated office chipset isnt necessarily going to cut it.."

As long as enough people download your game and purchase it, I agree.

For the record, I develop with on board intel and I have no problem getting a few hundred sprites, background, etc, running at a minimum of 60fps/32bit color. I can't imagine how spoiled I'd become if I was developing on anything better. I'd probably write the ultimate "eye candy" game, but who would buy it?
Offline  
Read January 05, 2006, 03:29:20 PM #20
Nexic

Re: Sprite Rendering Test

Well aside from testing it on my old machine and as many other computers as possible (usually all my friends and family's) not much. These days I keep my textures to no more than 256x256 and always keep them in square power of 2s (32x32, 64x64, 128x128 etc) this is for compatibility with old graphics cards. I don't think keeping them square or to powers of 2 is all that essentiall, but I do it anyway just incase.

Once the game is out I annouce it in my newsletter and on indiegamer.com. Usually if there are any major problems I will find out about them by doing this and have them fixed right away. Obviously I also play the game through several times, and watch my family and friends do the same (you get sick of your own game really fast this way!).
Offline  
Read January 05, 2006, 05:27:08 PM #21
oNyx

Re: Sprite Rendering Test

>a few hundred sprites

Up to ~2k enemy bullets here. Guess it will peak at around 3k objects at the end. The machine needs to be good enough to run something like Quake3.

>I don't think keeping them square or to powers of 2 is all that essentiall,
>but I do it anyway just incase.

Older cards doesnt support it. And newer cards... well, it looks shit in 2D.


(zoomed in... left pot-texture and right npot-texture)

Depending on the dimensions the sample points on the x or y or both axis will be more or less off (its a small error which isnt visible in 3d). One way to solve it is growing the canvas to the next pot and adjusting the uv accordingly. Well, thats what my texture loader does. So, even if I overlook something it wont matter.
Offline  
Pages: [1]   Go Up
Jump to:  

Page created in 0.167 seconds with 17 queries.