TimelineFX - Particle effects for Blitzmax

Community Forums/Showcase/TimelineFX - Particle effects for Blitzmax

Pete Rigz(Posted 2009) [#1]
TimelineFX is something I've been working on for a while. In a nutshell its a module for Blitzmax that enables you to incorporate particle effects into your games. It comes complete with an editor so you can create all of your effects ready to be loaded into your game or application. There're loads of features which you can read about on my web site here:

TimelineFX Editor Feaures
TimelineFX Module Features

There's a few videos and screenshots in the above links too, feel free to browse the help and tutorial sections to get a better idea of what it can do also.

I've managed to get a demo of the editor ready for download, plus a little game I knocked up just to show how the effects can be used which includes the source code. You can download those from the downloads section of the web site - here.

And heres a couple of screenshots:



I would love to hear any feedback!


RifRaf(Posted 2009) [#2]
very impressive


plash(Posted 2009) [#3]
Looks great! I'll test out 'Vaders' in a moment, but I happened to notice your code block on the main page (http://www.rigzsoft.co.uk/) is messed up (the text continues off to the right).


Ked(Posted 2009) [#4]
Looks amazing! I love particle effects.


Pete Rigz(Posted 2009) [#5]
oops... thanks Plash, fixed.


_Skully(Posted 2009) [#6]
looks sweet! Maybe I`ll come talk to you when I`m needing particle effects in Max...

Are you planning on selling it?


Ked(Posted 2009) [#7]
Are you planning on selling it?

There is a purchase tab on his site, but it is not ready to be sold yet.


_Skully(Posted 2009) [#8]
I suppose actually following the link through would have made that apparent lol. Once I get this tilemapper converted to Max I'll debate whether I need to purchase a particle engine or just write my own... we'll see. this one does look very nice though


Htbaa(Posted 2009) [#9]
I had already seen your worklog entry and it looks very impressive. The fact that it's also possible to pre-render the effects is really cool. This is one of those things I'd like to buy instantly, but don't really need yet :D.


MGE(Posted 2009) [#10]
Yes! Looks great! But...... £29.99 is very pricey for this.


Htbaa(Posted 2009) [#11]
Really? I've seen more going for that price or even more. Particle Illusion, although very big and all, is a lot more expensive. But of course, that one also has options to add the effects to videos and such.


RifRaf(Posted 2009) [#12]
It depends on how you look at it. If the market is huge a low pricetag may be better to bring in more people, the smaller your market gets you might as well have the price at a place where you care about each sale instead of the mass collection. Otherwise you wont make anything anyway, and those who really like it or need it will pay a few extra.

Thats my opinion anyway


Pete Rigz(Posted 2009) [#13]
I got a lot of inspiration from Particle Illusions and you could probably replicate a lot of the effects in illusions in TimelineFX. Illusions is obviously more geared for video editing whereas TimelineFX is designed specifically with Blitzmax in mind - being that you can load all of your effects straight into your game, and the animation recording automatically creates the animation strips for you.

I feel £29.99 is fair for something that could save you a good few months of work, and you'll benefit from all the upgrades that I'm planning on - obviously I'm excited about using it myself to write games so naturally I'll be adding to it overtime.

Thanks for the feedback so far!


GfK(Posted 2009) [#14]
Can you render particle effect sequences to a strip of PNG images?
£29.99 is very pricey for this.
Not really. Its about right. If I hadn't already done 90% of the particle stuff for my game, I'd be nagging for this to be put on sale asap.


Brucey(Posted 2009) [#15]
The Editor looks lovely.. if a little too Windowsy :-p


Pete Rigz(Posted 2009) [#16]
Brucey, your wxWidgets wrapper is great! The first version of the editor was written in maxgui but I started struggling with it so wxWidgets really came to the rescue. I think I'll be raiding your freeimage wrapper sometime soon too. :)

Can you render particle effect sequences to a strip of PNG images?

Yes you can, with a few extra options like being able to seamlessly loop them. You can read about it more in the help section here.


Naughty Alien(Posted 2009) [#17]
..ahh..too bad this is only for 2D games..im going to take a look at anim strip option export...mm


Jur(Posted 2009) [#18]
It looks great! I haven“t coded a proper particle system for my game engine so this could be very useful for me.


MGE(Posted 2009) [#19]
It's close to $50.00 USD, so the price is not impulsive by any means. But...this does look >>awesome<< for exporting to frames for my other non bmax projects so I downloaded the editor and the invaders game.

Invaders runs at 13fps on my system. I see nothing in that demo keeping the game from running at least 30fps on my intel 2.9ghz cpu, 82845g gpu, so there must be a bottle neck somewhere. I've coded similar small game demos with hundreds of sprites, particles flying around so I know it's possible to increase the performance. The recent Space Beetles from Swift runs fine on this system as well.

But I'm more interested in the editor/export features. Any reason why the editor just loads up, flashes on for a second and then quits? I have 2gb ram, windows xp, so I'm assuming it should run? There was no error file to view in the program folder. What are the system requirements?

Thanks.


slenkar(Posted 2009) [#20]
the bottle-neck could be large textures used for particle effects, try reducing the size of the particle-textures and see what fps you get


Pete Rigz(Posted 2009) [#21]
Yeh, I was probably a little bit over the top with some of the effects in vaders so it's most likely a fill rate issue, specifically with the background cloud effects.

MGE: No obvious reason why that shouldn't work, sounds like something as it initialises, I'll take a look, thanks!


Tachyon(Posted 2009) [#22]
This looks splendid. Will be purchasing when the link works!


Pete Carter(Posted 2009) [#23]
Awesome i love the over the top effects. £29.00 not to bad as long as you have good examples with it. Ive just tried the exe, ill have a look at the code when ive got more time.


MGE(Posted 2009) [#24]
I do agree, if it ships with alot of pre made effects ready to render out, that increases the value. Please bump the thread when/if you have a version that has some debug info incase the editor fails to work. Thanks!


Pete Rigz(Posted 2009) [#25]
I just wonder if its the integrated graphics. I've uploaded the demo again which creates a log file checking each stage of the program opening. The lowest I've tested on is my work pc which is a Radeon 9550. That works ok except for a few glitches. I also realised I was trying to load a font and assuming it was located in "Windows" directory which is a bit daft.

Here's a direct link to the demo: TimelineFXDemo. Thanks for helping out!

Also while I'm thinking about it, in order for the editor to export anim-strips with alpha your graphics card needs to be capable of using the opengl extension glBlendFuncSeparateEXT. I'll have to do some research on driver caps and work out the minimum specs from that I think.

As for pre made effects I'll certainly be releasing emitter libraries as time goes on. Maybe I should sell the editor and module separately if some people are only interested in the animation export, £15 each or something, hmm.


Loktar(Posted 2009) [#26]
I think the separate option is a good idea I could see myself using this for Flash projects, or other engines. I don't own BlitzMAX, but I would definitely purchase the module for pure exporting. Very impressive work.


MGE(Posted 2009) [#27]
Same problem. Here's the log:
---------------
Begin
Loading splash screen
Show splash screen
Creating main window
Loading icon resources
Initialising preview pane
Initialising graph
Initialising shape canvas
Initialising colourbar
Creating blank lib
Loading settings
Show main window
---------------

Very well could be my low end graphics card on this box. I have other boxes with higher spec hardware, will try it there later. This is my dev box so I was hoping to get it working. :(

A big yes to splitting the package up into seperate products. :)


Pete Rigz(Posted 2009) [#28]
Thanks for testing MGE. Seems to initialise everything then gives up. I reckon that maybe the integrated graphics doesn't like multiple GL contexts.

I think I'm going to set the minimum specs to Radeon 8500/geforce FX or higher, based on cards that have the extension EXT_blend_func_separate. The module minimum specs will be the same as whatever blitzmax is of course.

Been polishing a few last things and hope to have it on sale this weekend.


Murilo(Posted 2009) [#29]
This looks fantastic! I was always tempted by Particle Illusions, but I couldn't justify the cost.


Htbaa(Posted 2009) [#30]
Just tried the editor. Very impressive. Although 8400 GS doesn't handle the very big/large effects well. One question though, I choose to import the test library and compiling took quite a while. Why is that?

Also, one small flaw in the top menu. When moving with my mouse over the options add effect and add emitter the icons disappeared.


Pete Rigz(Posted 2009) [#31]
Thanks for the feedback. The example effects have a range of simple to complex effects to show off a few things the editor can do, so I imagine some of them will tax the lower end cards specifically on fill rates.

With regards to compiling, basically the particle engine has 2 modes, fast and precise. Precise mode uses interpolation to retrieve graph data whereas fast mode pre-compiles the graphs into lookup tables to improve performance. So basically when you load a library it compiles all the graphs for all the effects. To be honest though I don't see why it couldn't just compile each each one as they're selected, I might change this and see how it works out. Out of interest how long was it taking to compile and what CPU do you have?

As for the icons, do you mean the menu icons? Sounds strange, but hopefully only cosmetic!


Htbaa(Posted 2009) [#32]
Yeah I meant the menu icons.

I think it took about 3 minutes for me before I could start having some fun. It was on a Intel Core 2 Duo 2.22Ghz


Pete Rigz(Posted 2009) [#33]
Blimey, 3 minutes? It takes about 2 seconds on my old work PC so I'm not sure what's happening there. What shows in task manager when it's doing it, memory and cpu usage?


Murilo(Posted 2009) [#34]
Compiling took about 1 second on my laptop (2.6GHz Core 2 Duo).


matibee(Posted 2009) [#35]
I've just tried the demo and this is far more impressive than I was expecting. The 'Birth of a red giant' looks awesome on a 1600x1200 desktop. Nice work.

I have a couple of questions from reading your product page..

It's dependent on Brucey's xml mod, right? That's no big deal, but I personally wouldn't want it dependent on GMan's zipengine as I've just incorporated Koriolis' zipstream for my needs. How would this effect your module - would it be happy loading from an incbin'd zip via a zipstream?

Cheers
Matt


matibee(Posted 2009) [#36]
There's a bit of a problem with the tabbed dialog where the particle tab doesn't redraw properly on enter..



This is XP / SP 3.


Pete Rigz(Posted 2009) [#37]
Hi Matibee, with regards to the zip engine mod I can't see any reason why the 2 modules would clash. The load function simply accesses everything in the zip and loads the effect library into memory. The fact that it uses zip at all is quite transparent. It shouldn't affect you using the other zip mod to access your own zips.

That's interesting with the redraw problem as this happens on my work PC. What is your graphics card?


Brucey(Posted 2009) [#38]
Are you using a graphics context to draw that, or GDI-based DC? (I assume it must be the former).


Pete Rigz(Posted 2009) [#39]
Yeh, they're wxglcanvases.


matibee(Posted 2009) [#40]
Video card is an Nvidia GeForce 8800 GTS 512mb. Don't ask about driver versions as I know they're not the latest (I do some pretty intense cad stuff and if the cad software's happy, the drivers don't change :) ).


Htbaa(Posted 2009) [#41]
Did a new check. Compiling takes about 2,5 to 3 minutes now. CPU is at 50% and memory is around 50Mb. I thought perhaps my virus scanner was running but none of that. I am using Vista though.


Pete Rigz(Posted 2009) [#42]
matibee: thanks. That knocks the dated graphics card theory on the head, which I thought it was. Hmm, my graphics drivers at work are probably way out of date, I'll try updating them and see if that fixes it there.

Htbaa: Very strange, I use vista here also. Have you tried the vaders game? Does it freeze at the beginning when it loads the effects library. If you wouldn't mind trying that that would be great. Direct link to download vaders is here: http://www.rigzsoft.co.uk/files/Vaders.zip

If it doesn't freeze then you could try loading the vaders effects file into the editor and see if that takes a while to compile too. Thanks!


Brucey(Posted 2009) [#43]
Yeh, they're wxglcanvases.

Unless you really need to do some intense fancy graphics things on those canvases, you may find that you can get the same visual results using a wxDC instead. (if you need Alpha support, there's also the wxGCDC (uses GDI+ on Windows).

Just a thought.

As is, I'd go with the Drivers issue, most probably - given that you have it working on a different PC.


Pete Rigz(Posted 2009) [#44]
Interesting, thanks Brucey, I'll look into that if the drivers don't do anything.


Murilo(Posted 2009) [#45]
The more I play with this, the more my interest is hightened. I just downloaded the Vaders demo too, and it's a good showcase for the effects. The title screen background is swish!

I did find the demo stuttered every second-or-so though, so whatever timing you are using didn't seem to be working (assuming, that is, that my PC isn't at fault).

Anyway... Great stuff!


Pete Rigz(Posted 2009) [#46]
Cheers Joe. Glad you like Vaders, you can load up the effects file in the editor to see how they're done. The explosions use animated particles that were also created in the editor.

There's been quite a few threads about the stuttering issues in Blitzmax. I always had those problems in directx but it was fine in opengl. At least it was until the latest Blitzmax update where its started stuttering in opengl aswell. I can make it go away by changing my graphics driver settings to performance instead of quality.

I keep meaning to customise the driver settings and switch on each setting one by one to find out which one is the culprit.

On another note, it turns out my graphics drivers at work were already up to date as the latest drivers for them are from 2006! So I think I'll scrap using glCanvas on that tab and try the wxDC instead. Hopefully it'll be pretty straightforward and more friendly with all the cards out there.


Redspark(Posted 2009) [#47]
I've played around with the editor and I like it. Would you be able to compile a Mac version of the editor or is it Windows specific? I'm guessing that the engine isn't windows specific.

The purchase page doesn't have the paypal buttons on it when I view it. Is it not ready for purchase yet? Thanks.


Brucey(Posted 2009) [#48]
Would you be able to compile a Mac version of the editor or is it Windows specific?

In theory it should be Mac'able. (Linux too... *hint*)

It would be nice to try out the editor here :-)


Redspark(Posted 2009) [#49]
I'd love to have a Mac version! I'm trying to run the editor in VMWare Fusion for Windows and it really is slow. But I found the interface intuitive and easy to work with and I love the graphs. I was able to make the candle flame that I wanted very quickly. I just want to use it in a native environment so that it is at its top speed.

Pete: Will the purchased editor include source code? Or can you compile a version for the Mac? Sorry to be a pest but I develop totally on the Mac and hate to have to dip into Winslowz for anything other than compiling the Windows version. Thanks! :)


Brucey(Posted 2009) [#50]
and hate to have to dip into Winslowz for anything other than compiling the Windows version.


I know. Terrible isn't it? ;-)


Pete Rigz(Posted 2009) [#51]
Its inevitable that I'll get a Mac, so they'll be a mac version at some point. I guess I can't see any reason why the source can't ship with it, although that'll only be available with the full editor and module package, as obviously you need the module to compile the editor. But of course there's no guarantees it will compile for the Mac at this point as it's completely untried/tested. I can't think of anything windows specific in there though.

It's not quite available for purchase yet, I'm in the process of changing the way the colour bar and particle image displays on the particle tab to make it more compatible (I hope!), apart from that its almost ready.

So what options are there for a cheap Mac? By that I mean, less expensive then they usually are :) Maybe I should take a gander on ebay.


Redspark(Posted 2009) [#52]
Mac Mini probably would be your best bet. May be a refurbished one. But I haven't been a Mac user for long. I switched to the Mac last year.