Single surface part sys enquiry
Blitz3D Forums/Blitz3D Programming/Single surface part sys enquiry
| ||
Those of you who have single surface particle systems. What FPS rating do you get runnin 500 particles onscreen? |
| ||
Won't that vary from PC to PC? |
| ||
I get 136 fps. Here's my code:AppTitle "single surface particle system - test" Graphics 640,480,32,2 Text 10,10,"136 fps" WaitKey() End |
| ||
Jhocking, your an ass. :) Matty, yes but if I have peoples computer specs I can get a decent idea of how the system is running in general. |
| ||
I don't think that's a very reliable method of finding fps :| :D |
| ||
Around 45. Not that nice.. but then again, mine probably isn't true single surface. |
| ||
No it isnt but I don't have a demo of our system ready yet :D:D:D. Sorry all, hehe. |
| ||
check out the single-surf system on my sig... test with it... source included. It should be as fast as it can get. |
| ||
My computer is so bad, I only get 68fps running jhocking's demo. Bleh. |
| ||
This is single surface, and you can jack up the quads to whatever amount you want....demo source is provided too. http://www.blitzcoder.com/cgi-bin/showcase/showcase_showentry.pl?id=poedboy03162004023203&comments=no *edit* actually 2 surfaces I guess....theres a plane in there thats automagically created for doing fades n stuff..its not visible in that demo though.*/edit* |
| ||
I don't need sourcecode, thank you all though. |
| ||
Well the size of the particles and how much is going on probably makes more difference than the number of particles. But what the hell, I have a couple of demos which put 500 particles on screen, and I get around 180-200 fps with them. System being Athlon 2700, 1Gb Ram and a Radeon 9700 Pro. |
| ||
The crap demo I did when vertex alpha first appeared gets about 180-200 (Duron@800 + GF2 + XP) with 500 parts. This is without the superPlaneCameraPointerficationEngine™©® or the HyperZAxisAntiObscurificationOrderingSystem™©® in place. While we're here... Does anyone know the length of this bit of string? YAN |
| ||
The string doesn't exist. |
| ||
@Yan: Len (string$) Parameters string$ = any valid string variable ;) |
| ||
Get about 340 with 500 on screen. As Sybixsus says tho, size and screen coverage matters most. :) |
| ||
I get 640 fps with 500 particles on screen :) Maybe I should sell my system. I intend to give it out for free with ExGen but maybe people would be interested in paying a small amount for it ($10 - $15) with a demo naturally. |
| ||
Well thats very interresting but no one would be willing to pay anything until they know what system you're pushing this on, and also how much of the screen your occupying with particles, blending, resolution, etc etc. I'm guessing your system is considerably beefier then mine, and my particle system runs at 500 some FPS 600 particles on screen. |
| ||
I got an Athlon something or other with a geforce 4. How much of the screen? As much as you like. It would go faster if I wasn't changing the uv coordinates and vertex colours every frame. Resolution? 640*480. I just tried it at 1024*768 and I get 320 frames per second. Here's a screenshot. The text is written as Text over the rendered background so that could slow it down as well. Below is the texture I am using in the demo. You specify a texture and frame rate and the system automatically plays the animation for you. Each particle can have its own colour as well so you can get a lot of variation from a single texture. I'd just like to point out that until I saw this thread I hadn't considered selling the system and doubt I ever will. It will one day be free for use to all registered ExGen users though :) - hopefully one or two of them will make use of it... I intend to myself. Heres the code for the demo (without the system functions) ;---- ;demo ;---- ;setup graphics Graphics3D 640,480,16,1 camera=CreateCamera() : CameraClsColor camera,0,0,30 light=CreateLight(camera) ;load systems system1=ExG_LoadSystem("systems/lite_test.bmp",16,64,64) ;create particles For i=1 To 500 p=ExG_AddParticle(system1,Rand(10,50)) ExG_setParticle ExG_position,p,Rnd(-20,20),Rnd(-20,20),Rnd(-20,20) ExG_setParticle ExG_scale,p,Rnd(1.5,2.5) ExG_setParticle ExG_color,p,Rand(150,200),Rand(150,200),Rand(150,200) ExG_color,p,Rand(150,200),Rand(150,200),Rand(150,200) Next oldtime=MilliSecs() timer=CreateTimer(40) : usetimer=False Repeat ;simple frame timer (not very good - but fine for an example) If usetimer WaitTimer(timer) ;simple frame counter framecount=framecount+1 If MilliSecs()-oldTime>=1000 framerate=framecount framecount=0 oldtime=MilliSecs() EndIf ;update particles ExG_update camera ;render scene RenderWorld ;camera controls If KeyDown(200) MoveEntity camera,0,0,.3 If KeyDown(208) MoveEntity camera,0,0,-.3 If KeyDown(203) TurnEntity camera,0,1,0 If KeyDown(205) TurnEntity camera,0,-1,0 If KeyDown(30) TurnEntity camera,1,0,0 If KeyDown(44) TurnEntity camera,-1,0,0 ;slow things down - press space to toggle frame timer If KeyHit(57) usetimer=Not usetimer Color 0,0,0 Rect 5,5,295,85 Color 255,255,255 Text 10,10,"FPS = "+framerate Text 10,25,"Press space to toggle frame rate" Text 10,40,"between 40 fps And fastest possible" Text 10,55,"Use arrow keys to move" Text 10,70,"use a + z to rotate up + down" Flip False Until KeyHit(1) End BTW I have just removed some code that has taken it up to 660 frames per second :D |
| ||
You really can't compare just the fps speed of a particle systems unless you run them on the same hardware. Better to post your code and have people test it on their various machines. Then when others post code or speeds of thier systems you have something to compare to. |
| ||
It's definately not worth selling single surface particle systems. You can't even give them away... but if it's included with exgen, it's an incentive to get exgen :) |