TileMax Particle System - TMParticleFX
Community Forums/Showcase/TileMax Particle System - TMParticleFX
| ||
I think I've hammered out most of the kinks in the particle system now. I was playing with particle text and decided to post an example of that. I think I'm just goofing around with the Particle System now honestly. Anyway, Brand New Particle System, Brand New Timing code! The timing code being the most significant improvement in the system... it appears much more smooth to me and those that have tried it so far agree. The Particle system itself is nearly 500% faster than my previous attempt so I'm extremely happy with that. V4 has all the bells and whistles... needs some additional effects designed for the package though :( V4 demo... showing particle text...(v4) DirectX version and an OpenGL Version ![]() Ver 3 DirectX version and an OpenGL Version Here is an example showing how those sequencers I keep talking about work... ![]() ![]() Whats so special? - Images are controlled using a specially developed animation control system... so irregular image maps can be used (the ones not organized into discrete areas) - X,Y, Velocity, Angle, Alpha, Blend, X&Y Scales, Force angle, Velocity, and animation can be controlled by time-based sequencers. - Everything is pooled (Particles, Sequencers, Anims, & Launchers) |
| ||
Seriously, does anyone know what people are using to record videos of their games? |
| ||
No idea, but you could use Jing for example. |
| ||
Fraps?? |
| ||
You could also use GrabPixmap and SavePixmapPNG to save off individual frames, then use an external utility to merge the frames into a movie. |
| ||
Or try http://camstudio.org/ |
| ||
Thanks degac, I'll check that out camstudio out How is the demo looking? Is it pretty smooth etc? |
| ||
Well, CamStudio is an open-source project, so it's ALWAYS in a beta/wip stage. It works, the quality depens by the hardware (CPU/RAM/HD) but this is for any programs of this kind. http://www.youtube.com/watch?v=WJ477o0NHs4 This is a test I made based on your demo-test - recorderd with CamStudio2.5 beta and Xvid compression. I used VirtualDub to make some cut editing in the start and in the end. Of course - if you try CamStasia (commercial product) you get a screen-recorder AND a video-editor integrated (for annotation, zooming, text and so on...) But for occasional work I think CamStudio+VirtualDub do the work. Cheers |
| ||
http://www.fraps.com/ Fraps. It is not free, it's Windows only, but it is the best. |
| ||
Its coming along nicely.. hammering out some lumps from a useability point of view and some speed enhancements. I'm very curious how this runs on other machines??? |
| ||
Is there any one that can take 5 mins to test this? I only have a laptop to test on so i have no idea if there are any other issues out there. |
| ||
I've tested it (the second .zip) and unfortunately after some rapid SPACE press (about 10-12) I got EXCEPTION_ACCESS_VIOLATION. I've runned the program with TaskManager opened to check CPU & Memory usage, nothing strange 3-17% with memory from 19Mb to 36Mb. Only when I press too much SPACE button I got CPU increase to 50% *(with fps dropping to 45-49 from 59/60) with delay in 'seconds' of screen redraw before the crash. Tested on: Athlon64 x2 3800+ 2GB Ram, GeForce 6600, WinXP sp2 *50% on a dual core I suppose means 100% on a single core...I dont' know exactly. |
| ||
Oh! thanks... i just reproduced that... I have a sequencer pool leak! There were over 5000 sequencers in the pool which means there all being created on the fly. Thanks degac, i'll fix that! |
| ||
The problem is not necessarily in the ParticleFX system, it was in my execution LOL The initial effect was running on average 350 particles and then the missiles were adding over a 100 each with the trail + the explosions! because each of the particles in the initial effect has 2 sequencers and the trail particles had 4 sequencers it was quickly exceeding 5000!! I missed an important aspect to the particle system to prevent this need... parenting. So, I'm adding that! Thanks for finding that degac! |
| ||
I don't think this is what you were aiming for.![]() this is on my compaq nc6400 laptop and windows 7 with centrino duo 2Ghz and intel 945GM graphics. I think this laptop has the worst graphics processor ever created by Intel. What makes it worst is the fact that the driver has been locked by HP so I can't even get an update by Intel and HP is not going to make a drivers for Windows 7. :-( |
| ||
OMG.. what the bleep is happening there! Is it just my particle system doing that? I can't even imagine why that would be happening other than my currently using the OpenGL driver. I'll switch it to DX and post it as another version... could be your OpenGL drivers are pooched! The DX drivers run 1/2 speed on my laptop |
| ||
Here is a DX Version that shouldn't crash |
| ||
It's really easy to get an unhandled exception error message if you launch off enough of those projectile thingies. |
| ||
the DX Version runs fine. |
| ||
It's really easy to get an unhandled exception error message if you launch off enough of those projectile thingies. Its the sequencer pool array exceeding 5000, unfortunately I didn't build in any expansion room for the array... D'oh! First I'm looking at reducing the need for additional sequencers through particle parenting, and then I'll add the ability for the array to expand. I'm also going to reconsider how the sequencers update... Hopefully I will be able to achieve the same effect with about 96 fewer particles per missile and have reduced sequencer integration costs by about 9 operations per particle. wish me luck ;) |
| ||
I hit the space bar 3 times...everything chugged/bogged down. Right after the explosion it had a fatal exception and crashed to desktop. |
| ||
Same here. Static pool size? eek! |
| ||
Ya I'm on it... I'll remove the links above since its obviously pooched at the moment. D'oh! |
| ||
Ok... sorted most of it.. still have some optimizing to do but its working pretty good now I think :) |
| ||
New Particle System, New Timing code.. at the top of the thread Cheers. How many particles do you get at 60fps? Use the PageUp/PageDn to increase/decrease the mouse-star rate spacebar to your hearts content, <- -> to change the angle of fire P=Snapshot |
| ||
Directx 11,000 30Fps 5400 60Fps OpenGl 16,600 30Fps 8700 60Fps |
| ||
DX 3400/3480 59-60FPS rate: 15 5180-5190 29-30FPS rate: 30 OpenGL 4080-4100 59-60fps rate: 17 8300-8310 29-30fps rate: 50 tested on Athlon64 x2 3800+ 2GB Ram, GeForce6600, WinXP sp2 pro |
| ||
Thanks for testing it! DX 5400 and OpenGL 8700! Wow thats huge! I can only imagine what your screen must have looked like with that many particle flying around. I wish I had a video card capable of that. Strange that your OpenGL is faster than DX as well... DX is dog slow on my machine.. of course, thats not DX9, just the default. How was the smoothness? any choppiness or other hickups? The timing code I'm using now is much more comprehensive than the old one... I coded it from scratch but I did review several options in the code archives first to see how others dealt with it. I took a few different ideas and merged them together and it seems to work pretty well. One was setting a Particle frequency which determines how many millisecs one game tick is, another was delta limiting (settable parameter), and the last was ensuring no ticks were lost due to float inaccuracies. The main benefit to not using every ms as a game tick was the particle speeds... I used to deal in 0.001's - 0.04 and the like, whereas now its generally in whole numbers (of course thats for full screen effects) I've got a 150% maximum delta per call... so if there is any kind of pause, it will catch up over a number of frames. I might have to play with that number to get it just right though |
| ||
For anyone interested dabz found a minor shimmy issue when the particles were reaching the edge of view. I found where the shimmy is coming from... I must have had INT's on the brain when I created the Anim.Draw method... its now fixed and will be updated later when I get home. Cheers |
| ||
OK Fixed! I updated the top post links to download version 3 My anim draw routine (mod from TileMax) was using int coordinates instead of floats! So, now I think its all smoother Also, I'm using precache for all pooled objects.. so the particle pool gets filled up on start. Cheers |
| ||
Added a version 4 mini-demo showing particle text |
| ||
Quite frankly (and with all due respect) I suggest you get about 3-5 testers and really nail down the core routines of this framework before making another public showing. Personally I'll check on this again in another month or so and see what kind of progress you've made. Hopefully it will be a more stable state with more features, etc, etc. I would love to use a tile/platform engine for a few short projects, this is the closest I've seen yet, so I appreciate your continued work on it. |
| ||
MGE, Funny you mention that... I'm just getting to that point now. In fact, a private forum is being set up as we speak on BlitzMonkeys for that very purpose. I'll be requesting alpha testers soon... this is the closest I've seen yet Thanks :) |