When adding support for cube texture ([Link Removed]) there was no check added for render targets, making them invalid for Set Texture Object, when they were previously supported.

Steps to Reproduce
  1. In the content examples project navigate to the Niagara Map
  2. Find example 3.4, Texture Sampling (note this will work with any system that samples a texture)
  3. Open the System and add a new User Texture Sample parameter, name it Texture
  4. Set the user parameter's default texture
  5. Link the texture in the Sample Texture module to the new user parameter
  6. In the level blueprint get a reference to the system, and get it's Niagara component.
  7. Call Set Texture Object on the component with Texture as the Override Name, and use any render target for the texture. Trigger this on begin play, or through a button press.
  8. Compile, PIE and navigate to the system


**The system's texture will not change, and a warning will be printed:


LogNiagara: Warning: Texture in "SetTextureObject" is of an unsupported type "Texture", OverrideName "TextureRenderTarget2D" and NiagaraSystem "NiagaraComponent /Game/Maps/UEDPIE_0_Niagara.Niagara:PersistentLevel.TextureSampling_System_2.NiagaraComponent0", skipping.



The warning should be enough to repro without setting up a system to sample a texture.


Have Comments or More Details?

There's no existing public thread on this issue, so head over to AnswerHub just mention UE-132901 in the post.

Login to Vote

ComponentUE - Rendering - Niagara
Affects Versions4.27.1
Target Fix4.27.2
Fix Commit17964655
Release Commit17964655
CreatedOct 27, 2021
ResolvedOct 28, 2021
UpdatedNov 10, 2021