This document covers various updates to the Niagara VFX Data Channels feature as of the 5.7 Unreal Engine release.
https://dev.epicgames.com/community/learning/knowledge-base/6mKa/niagara-data-channels-update-new-access-contexts-in-unreal-engine-5-7
Interesting changes. Iām still on 5.5, Iām using a small map, got my own ability system, no multiplayer, no islands. Do I even benefit from the new system? There is lots of variables in the struct that donāt look useful to me. In general the section about access context reads like an info dumb and I hope we can add some examples, ie for which VFX should I use which struct.
About getting members in instance, getting the spawned systems and instantly setting the parameters looks useful if I ever start using a NDC for multiple Niagara Systems. Though, I do have to ask who the people are that request features. Is it Unreal Engine devs or can a random guy like me talk about this somewhere, because Iām also really into NDCs ![]()
What settings should we be using to replace a Global NDC? Iāve found a āComponentā option which seems close, but when debugging it still creates an extra system.
I am also struggling to get a Global NDC working without using Legacy nodes.
Not sure if this helps - I was able to get it working with a Make NDCAccess Context Legacy node you can feed into the non-legacy read node.
Hi.
Apologies for the delayed response over the Christmas period.
@Ninjin āDo I even benefit from the new system?ā
It all depends honestly on what youāre doing and need. If what you have now is working for you then Iād say stay as you are.
The biggest benefits with the new NDC type and access contexts are;
- being able to override the spawned system using a single NDC asset. Many people were having to duplicate NDCs just to change the system being spawned.
- More scalable perf when the number of unique islands/systems becomes large.
- Extensible so custom NDC types can take in any data they may need.
If none of these are a concern for you then itās likely you wouldnāt see much benefit.
āIs it Unreal Engine devs or can a random guy like me talk about this somewhere, because Iām also really into NDCs
ā
I am always eager to hear how people are using this tech and to take feedback and feature requests ![]()
Feel free to reply here. Many people also use the RTVFX discord community. RealTimeVFX
@SheDoesArtStuff may know of some other good avenues for feedback and feature requests.
āWhat settings should we be using to replace a Global NDC? Iāve found a āComponentā option which seems close, but when debugging it still creates an extra system.ā
Can you describe in more detail what youāre doing?
Are you trying to replace a global NDC with a GameplayBurst NDC? Or just use the new AccessContext path to interact with a global NDC?
For the former, this will change how the NDC operates, you donāt need to change all NDCs to the new gameplay burst type. It is very use case dependent.
For the latter you can use the Access Context Legacy type which allows use of older NDC types that donāt directly yet support the new access context path. i.e. the global and island types.
@STovey Just checking in here, Iām also using Global NDC for some of my systems, and I always like to migrate off Legacy options when possible. Are you saying that the Legacy Global and Island types may be the best option in 5.7 in some cases, and youāll be updating them to use the new Access Context path in a future Unreal release? So theyāre marked āLegacyā even though thereās no replacement yet?
Is there an easy way to activate a āpreviewā mode for authoring NDC NiagaraSystems?
In the old burst instanteous it made seeing a preview pretty easy in the preview window, but when switching the assets over to NDC I find no easy way that isnāt fragile/brittle to āpreviewā some sample input into the NDC system?
Possible solution:
- add a burst instanteous on every emitter and remember to uncheck it when done authoring. But this feels brittle and prone to error. Iād love an editor only or cvar type solution, or better yet let me add some āfake data into a NDC channel for preview modeā or something. To best mimic real conditions.
- Make a temporary BP actor that sends NDC events into the system in a test level. This also feels slightly cumbersome? But Iām totally new to Niagara related stuff so maybe thatās ājust how its doneā?
