There's basically 3 core queries when it comes down to it:
1) Definition: Given the present goals of the componetization work, do we wish to split explosions (Just generally refering to em as FX to make the discussion a bit clearer) into a spawned entity frame + particle/sound/light/camshake/decal (note decals can be animated for ripples), or keep running with an all-in-one baked c++ class. (An example of the latter would involve
https://github.com/Azaezel/Torque3D/com ... e52533ba5b (
https://www.youtube.com/watch?v=doqiI6AHs40) for various calls like splashes and footpuffs for terrain to cut down on unneeded redundancy, the former at minimum would require the same deal plus the equivalent of a datablock per aspect tied to an entity template.)
2) Application: One of the things Jeff and I have discussed off and on would be
https://github.com/Azaezel/Torque3D/commits/FX (
https://www.youtube.com/watch?v=Y7Br-vNaREY) which demonstrates a usage case I've used previously in prototypes for per-material effects. (Long story short, you feed a material an ID, and use FX[matID] for your calls. If that's a route folks would like to see explored further, what particular types of interfaces would one wish to see there to take into account things like water and the like.
3) Contributors: Assuming folks even want to see this stuff changed, would they wish to contribute a bit of elbow grease to speed this along? "the engine should" is easy to say, after all, but push comes to shove, as always, if not enough folks want it enough to actually roll their sleeves up, then the presumption is that folks just don't want it bad enough for it to be prioritized beyond the pet-project/Personal Company game level.