Sprite Render Test
Community Forums/Showcase/Sprite Render Test
| ||
Was doing a sprite rendering routine for my engine, just to show my progress =]![]() massive sprite with no slow down and all camera angle friendly =] |
| ||
What is this written in? Are those actually 2D sprites and you are scaling and drawing them to appear farther away? |
| ||
Thats really clever. I like the sprite style too :) |
| ||
Lovely! now make a new medieval total war (first one) :) |
| ||
@TaskMaster Its written in Blitz3D. And no its pure 3D, its more of the lines of ragnarok online or seomthing. @Plash Thanks =] @Mortiss You just gave me an idea for a stress test :D nack |
| ||
looks cool |
| ||
This is a showcase section not a graphics showcase, let's see an exe so we can verify the no slowdown statement. ;) |
| ||
http://www.jameskett.dsl.pipex.com/splatterfest.zip Similar if not the same |
| ||
@JGOware I was getting to that ;) @Doggie Its similar.....yet completely differnet. My approach would be faster i presume since it use sprites while splatterfest use mesh. Plus the way my system handle everything is different. Help me test =] See if there are any slow down or lag. |
| ||
Can you make it run full screen, say in 800x600x32 mode? Or better, allow a choice for which res to use at start up. Fraps does't like B3D in windowed mode. |
| ||
no slow down or lag. it shlould be useful also a FPS counter.![]() |
| ||
@johnnyfreak hehe coool ^^ thx for trying. Dunno how to get a FPS counter....have to write a custom routine for that rite? @JGOware Updated version with simple custom resolution ![]() *link below Arrows key to move Space key to generate dude Mouse right click to move camera Mouse wheel to zoom in This version also support npc movement!! Please try again =] |
| ||
"Updated version with simple custom resolution" How can I make it run full screen? |
| ||
Also, perhaps just holding down space instead of clicking would be better. It's taking a long time to get up to 1000 sprites! :) |
| ||
So you can give it a 3D coordinate and it will place itself properly with correct scaling and priority? Great! That is some nice work. So you z-sorted your spites or Blitz is doing it for you? |
| ||
@JGOware oh my bad, uploaded wrong version Below is the new one. @_33 thx! It will automatically be place and will switch the graphic accordingly. Its as simple as "PositionEntity" I z-sorted it myself. Quite annoying in the beginning lol http://www.4shared.com/file/46195963/877035e0/mainv3.html This time you are started off with a pop of 300 =] nice number to start off hehe |
| ||
Is it using single surface quads? Or copyentity on sprites? |
| ||
But Nack, what is the FPS when you're at 1000 sprites? Are you using FastImage? I'd be pretty curious to see how you figured out the sprite priority! Are you using a list of them, like a Type list, and you're shuffling them in that list? |
| ||
@Ross C Its use sprites. Its just createsprite cmd. Would probaly be faster if i use copyentity. but with createsprite i can create unique graphics for each actor (sprites). @_33 No, not using FastImage. Dont think it helps in this case. By priority u mean how i manage them? Its type list. A very well structure list, using a few data structure techniques. It only loop thru entity when necessary. Still trying to find way to boost speed up. My FPS is 59-62. My comp is crap, mite be even faster. ![]() |
| ||
up to 1650 spirtes in movement no slow down resolution:1024x768, fullscreen on windows Xp, intel core duo 1,83 Gh 1Gb RAM NVIDIA GeForce Go 7400 ![]() |
| ||
1650! perfectt. I made some more improvements and speed is faster. Here is the stress test version. Starts off with p 500, space bar increment pop by 200. Added fps counter as well. My comp is crap so my max without slow down would be 1500. Been trying to improve that , want see how it runs on other system. This is a critical part of my engine, so dun want too much resource wasted on this. cus once the game logic is thrown in, fps goes down hill haha http://www.4shared.com/file/46293944/88ddefb3/stresstest.html |
| ||
2500 sprites before I drop below 60 fps NVIDIA geforce 9600GT / P4 3 Ghz processer |
| ||
By priority u mean how i manage them? I think he means how you decide which ones are drawn on top of which others. |
| ||
1700 Sprites In movement 53-56 FPS Stopped 62-63 |
| ||
Surely then, using single surface would speed things up more, than the createsprite() command? Looks pretty cool! |
| ||
1900 -> 59fps 2100 -> 56fps |
| ||
moving 2900 before getting under 60fps non-moving 3300 before getting under 60fps Quadcore 2.4ghz and 2x 8800gt sli setup. |
| ||
2000 on my dev kit at 20fps. I get very similar results using Blitzmax and my own sprite engine. The no slowdown remark had me curious, that's for sure. ;) This is a cool test, but nothing new as far as B3D sprite render speed. I think a sprite candy test might even yield better performance. |
| ||
oh thx for everyone for testing. @Gabriel Ohh, in that case, its kinda a custom formula thing that "prebake" its location before hand. So the system will know which one goes first etc. and thus major speed. However, since this little process can be done in real time, it really doesnt matter. haha @Ross C ohh i should make a test then lol @ JGOware now i am curious in ur sprite engine =D Too bad i have no sprite candy, would really want to try it here. Heard great things about it. But anyhoo, in the end, what i am trying to archive is not a sprite engine. Its just first part of my project. I just want to see how much it can render before it 'breaks'. apparently a lot hehe. I dun want something so small to hog resource, i need room for other system and logics lol. |
| ||
Dont get me wrong, your performance is fine and typical of B3D. The first thing I read was "massive sprite with no slow down" and I was instantly curious. ;) Sprite Candy with it's single surface rendering would give you a speed increase, especially on lower end configurations. My Blitmax sprite engine is typical and nothing unique, I'm actually in a holding patten because I'm deciding to either stick with Bmax or move over to B3D. ;) |
| ||
I think it really depends on your language needs. Is blitz3d's language limiting you? If not, then maybe you'd best sticking to it. If so, then blitzmax has alot more advanced programming capabilities. |
| ||
You can always pull off some tricks to increase the speed of your programs. You have to know the weaknesses of a language in order to circumvent them, and you have to know the strengths. |