Niagara Particle Emitter not working after packaging

Hi. I’m having an issue where the niagara particle system only works in the editor, but not in the packaged game (I tried both shipping and development configurations). I think the issue is similar to what is described in this post. 20.1 Niagara GPU particles not working in packaging - #5 by VisceralError

Additional information:
It is unlikely an LOD issue because I moved my camera close enough to the emitter. I’m also using a rain material plugin which uses the legacy cascade particle system for rain drops, and that is working properly in the packaged game.

Gameplay inside the editor

Gameplay in packaged game

I wonder if there’s certain settings I should enable. Any idea is appreciated!

Hello,

I think it would be helpful to determine if it is an asset issue or a project issue.

Try creating an empty, new project that utilizes a simple sequence that contains the Niagara effect. Package it. Does it work?

If not, then that means that there’s an issue with the effect, itself.

If so, then that means that there is an issue with your project, in which case you can try migrating the project into an empty project and attempt a package again.

Thanks for the great suggestion!
I did some more testing in a separate project and I am able to narrow down the issue.

What I figured out is that the particle system works fine in the packaged game when its placed on its own in the level, but when it’s attached as a component or as a child of an actor, e.g., in my case the boat, it does not work, regardless of whether the actor is moving or stationary.

In my case I do need the particle emitter to follow the boat. Is there anything I should enable to make it spawn particles as a child/component or are there any ways to get around the issue?

Can you animate the particle system to move on its own, without being attached/parented?

You can either add the effect to the Sequencer and animate it to move, or you can Blueprint it and have it move with a Move_Component_To or tick function.

Thanks. I experimented a few more settings and the issue is very likely related to the particle spawn being set to static mesh location.

Whenever the niagara particle system is combined with other meshes (whether it’s being attached to or combined as a blueprint actor) the particles cannot be spawned properly. The exact reason needs to be looked into further, but currently what works for me is to have two separate actors, one containing the particle system only, and the other containing the rest of the meshes that the emitter is supposed to be attached to, and script them to move together.

BINGO.