Hello, this is probably a stupid question but I’m new to working with game engines and couldn’t find the answer on Google. How can I control the scale of my particle systems in UE4? When I try to scale it in the level nothing happens.
You don’t.
In general you never scale a particle system as there are too many things inside that would need to scale at different rates to make sense.
@LearningVFX
It depends on what you are trying to do.
If you want it to apply the scale part of the transform matrix, I think the currently local space response is setup to apply the system scale. (however it seems to be somewhat inconsistent)
I personally think this is a horrible idea which causes nothing but problem for parented effects, but that’s how it is.
However scale response can be a useful thing as well.
For example you could you read it in on your shape location module to allow for adjusting spawn range in a natural way in the level for field effects.
Or you could take over s,m,l response by saving of scale x to a system parameter, then adjust which particles spawn, and at which scale etc, based on that system parameter.
There’s ton’s of things that could make sense depending on the effect you are currently making.
Just don’t try to scale it like a mesh, particle systems aren’t meshes.
In case anyone is still searching the solution for how to simply scale particles like in Unity 3D? or any other engine? Here’s the missing part.
For UE earlier version, change the Initialize Particle- Sprite size Mode to "Uniform ", click the drop down menu arrow logo at the right side of
Uniform Sprite Size feature , type in “New Expression”, use expression to control the size
e.g. 10 * Engine.Owner.Scale
10 is the size you want in niagara editor.
In UE5.3, it’s easier , there’s a module called "Apply Owner scale to Attributes " , add it under Particle Update section, (below Particle State), you can check and change multiple features from the actor in level or from Blueprint.
Use this module+ Properties - Local Space feature, these will allow you to scale the particles nicely like in Unity3D many many years ago.
Your solution works for Uniform sizes but I couldn’t figure how to make it work when you need random sizes or non uniform sizes (i may have not digged enough in it) - I am talking about the solution for versions less than Unreal 5.3 as I’m currently in Unreal 5.0
Personally I had found kind of a handcrafted solution since I work with devs who need to adapt my fx at implementation : I multiply all of my sizes to one common float I use in every emitter called Scale, I don’t know if that’s the official solution but it seems to work since I’ve been using it, also this way I don’t need to have all my emitters in Local Space
Haha… Great minds think alike. That’s what I’ve been used before I know this “Apply owner scale to Attributes” module.
It’s weird Niagara system doesn’t support scale up/down in the level, a cascade particle system does a better job in this case.