When attempting to scale a Niagara System in the scene, I found that the particles do not scale along with the system, which directly breaks the effect. I found some useful posts and have summarized two methods that are clear and helpful.
Original post link: Scale a niagara particle system
Normal Effect:
Effect After Scaling:
As you can see, the particle size does not scale uniformly with the system, and the effect is completely changed.
Method 1
-
Check the “Local Space” option in the Emitter Properties (this method only works for local-space effects and is not applicable to world-space effects).
-
Create a Niagara Modular Script and connect the nodes as shown in the link: Niagara System scale modular script posted by anonymous | blueprintUE | PasteBin For Unreal Engine (You can copy it directly; I’m unsure about the specific steps), or you can follow the image to connect it manually.
The logic is simple: Get the XYZ scale of the Niagara system object, multiply the XY values with the particle size (Sprite Size), and multiply the X value with the ribbon width (Ribbon Width). This will allow the particles to scale uniformly with the system.
-
Drag the completed Niagara Modular Script into all emitters, preferably placing it below “Initialize Particle.”
-
Save the Niagara System, drag it into the scene, and test the effect. The expected outcome is that the particles will scale uniformly with the system.
Method 2
Niagara actually has a built-in module that applies system scaling called “Apply Owner Scale to Attributes,” which can be added from the “Particle Update” section.
When I tested this method, I encountered a small issue: the effect I used for testing involved a Death Event, which caused a scaling problem with this module.
Details and solution: Scaling Issue with the "Apply Owner Scale to Attributes" Module in Niagara Using Death Event