
It's really simple.
For FX that look really kewl and are really flexible and useful, all we need is:
1. The ability for any effect call to call one (or more- see below) S3Os, also referencing their COB just like a unit. This mainly means FBIs, but there's also the issue of what GAF was originally being assigned to "smoke"... we could have oil sprays, blood, sparks, dynamic fires, etc. with this. Why more than one? So that we can use multiple (small, low-rez) texturemaps, of course. That would keep speed up.
2. Alpha transparency using the last available RGB color channel in the current S3O specification (I have been assuming that that's what that will be, eventually).
That's it. Two fairly minor technology challenges- S3O's can already be called as weapon objects, so there is no reason why FX couldn't call them, instead of calling the current OpenGL routines.
How would this work? Simple: instead of calling for a stock FX (no, I'm not calling for them to be removed, they're useful for many contexts and look nice) we could call up a S3O. That S3O would have a script that looked like this:
Code: Select all
piece base, explosioncenter, explodepieceone, etcetc;
Create()
{
Do some fancy animated thing here to depict the dynamic effect
}
And, the best part? Because we'd no longer be tied to a 2D world... we could randomize the movement and timing of the "particles" (really, these would be simple, three square panes for transparent objects) and have truely unique events. Oh yeah, and this one change would allow us to have gunflares that looked really, really pretty, too :)