Is there no way to write material variables to niagara data channel? I’m generating a material dynamically and sending it to a niagara system currently, but there doesn’t seam to be a function to write materials. Does this need to be moved to the niagara effect in something like a scratch pad? Is it possible to call create dynamic material there or create canvases there?
Hi! @HIHEAPK_Inc I’m not an expert in this topic, but I came across some relevant information that might help clarify your questions.
Can you write material variables to a Niagara data channel?
From what I’ve found, it’s not possible to directly pass material instances or dynamic material variables into a Niagara Data Channel, as these are designed for simple data types (float, vector, int, etc.).
Should this logic be moved into the Niagara effect, like a scratch pad?
If you want Niagara to react to material data, the recommended method is to extract those values (e.g., colors, parameters) in Blueprint or C++, and then pass them into Niagara via User Parameters.
Can you call Create Dynamic Material or create canvases in Niagara?
As far as I’ve seen, this is not supported directly in Niagara. Creating materials or canvases should be done outside the system (e.g., in Blueprint), and any needed values should be passed into Niagara indirectly.