I'm using particleIllusion 3.0 to create magnificient explosions and fire etc etc and you can easily output them into PNGs or whatever you desire but I have this little problem now. I have explosion with 80 frames it uses lots of colours and alpha channel and in construct it uses 300mb VRAM -.-
Anyone have any ideas how I can reduce the amount of VRAM used? I would make a lot smaller explosions but I have yet to find option to make em smaller in pI 3.0 -.-
Those must be some huge images you have. I'd suggest switching to realtime particle effects. They take practically no VRAM and they run at whatever framerate the game is at.
Of course, if you want to keep your prerendered effects, you could always find a batch image resizer to shrink them. But even at 256x256 with 80 frames, you're still looking at around 20MB of VRAM usage, which is alot when you consider that it's only one effect.
Okay I managed to make it to 180X180 only and with little reduced look and its 17.56mb now so not too bad though still a little high but after all it only plays it if mech dies.
You can't do shit like this with realtime particle effects
Hmm if the animation is not played and is only in total VRAM does it still consume that amount of VRAM all the time or only if it goes to VRAM Targets?
After puttin few copies on the layout the total vram didnt luckily change so I might be using these if I can reduce the vram into half from what it is now
Wohoo under 4mb so I'm ok! As long as people have over 250 Vram it should be enough
Develop games in your browser. Powerful, performant & highly capable.
I'm a beginner with construct but I don't think it has much to do with construct itself - it's the way you're implementing your particle effect. The thing is you're going to have to keep all of those frame images inside your video memory in order for them to be played on demand.
All I can think of is to reduce the size of the image directly like you mentioned, reduce the amount of frames being used, or render your particle effects inside construct. Can't you resize them inside of an image editing program? Even construct's built-in one would work.
Also, I'm pretty sure the amount of colors in the image is really only important in png compression. When the image is inside video memory it's in raw bitmat format. Someone correct me if I'm wrong.
Edit: Nevermind. I'm too slow. lol
[quote:3hf8fy7k]You can't do s**t like this with realtime particle effects
Sounds like a challenge.
Yeah I found a way to shrink inside the particle editor so I'm fine just need to make it a little bit less color intense to reduce size a bit perhaps?
Oh and after all it not that big problem as if I use same effect multiple times it only takes the VRAM once I mean if I have 3mb VRAM effect and I put 100 of those effects onscreen its only 3mb still!
I'll post cap or something if you want to try
Sure go for it, but I won't limit myself to just particles.
Kadoba is right, this is not how hardware-accelerated games are supposed to be designed. You're effectively loading small videos in to a limited VRAM resource. It's much better to have a bunch of single-framed sprites which you move around, scale and angle, with effects, to create explosions. That way is actually smoother (not frame by frame, rendered on the fly), timescales (you can move explosions slowly and smoothly, whereas frames would just go past slower like a slideshow), uses far less VRAM, and is visually more interesting since you can add randomness.
If you do need frame-by-frame animations, try to keep them small in dimensions and as short as possible. You could also try downscaling them all to half size, then stretching them up - you might not see the difference, and save up to 75% of the VRAM.
Thats what I'm kinda doing saving all in 100X100 and resizing em then. But well im not veteran enough to do so cool explosives and effects without little help like this^^ But I'm sure I can cut it into under 2mb with removing frames.
Now its exactly 5MB for 2 explosions sprites
Oh and my shockwave effect done with particles takes 3.5MB so they aren't too light either
After looking at your example, Im pretty sure you could replicate that with just particles.
I'll see what I can do later... after the turkey settles.
Ok this isn't quite as detailed as your example, but Im quite sure that with a bit of work it could be.
Plus it also shows something a pre rendered sprite can never do.
As a suggestion, add smoke (additive rendering, gray/black, negative gravity). See if that makes it any neater
Very nice example Newt.
A cap would be very handy.