In Unreal Engine, materials can expose parameters that can then be modified via instances (MaterialInstanceConstant). The UMaterialEditingLibrary provides several functions to modify these parameters at runtime or through editor scripts.
However, these setter functions (e.g., SetMaterialInstanceTextureParameterValue) currently always return false, even when the parameter update is successful. This may mislead users into thinking the operation failed.
A user initially reported this behavior for one function, but upon further inspection, this issue affects multiple setter functions across UMaterialEditingLibrary.
It would be helpful to review and correct the return logic for these functions to reflect whether the parameter update was successfully applied, and optionally provide more diagnostic output in case of failure.
This also do happen for the following functions:
Call any from the following functions in C++ for a MaterialInstance from the UMaterialEditingLibrary class:
SetMaterialInstanceScalarParameterValue
SetMaterialInstanceTextureParameterValue
SetMaterialInstanceRuntimeVirtualTextureParameterValue
SetMaterialInstanceSparseVolumeTextureParameterValue
SetMaterialInstanceVectorParameterValue
SetMaterialInstanceStaticSwitchParameterValue
SetMaterialInstanceEnumerationParameterValue
Just call UMaterialEditingLibrary::SetMaterialInstanceTextureParameterValue, iIt always fails. The bool return condition is not implemented in any of them.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-291403 in the post.
0 |
Component | UE - Rendering Architecture - Materials |
---|---|
Affects Versions | 5.0, 5.1, 5.2, 5.3, 5.4, 5.5, 5.6 |
Target Fix | 5.8 |
Created | May 30, 2025 |
---|---|
Updated | Jun 16, 2025 |