gpt4 book ai didi

unity3d - Unity ShaderGraph/Material 属性问题与 SetFloat

转载 作者:行者123 更新时间:2023-12-01 12:09:04 24 4
gpt4 key购买 nike

我将以下脚本附加到场景中的立方体:

public class TestShaderGraph : MonoBehaviour 
{
void Start()
{
Material material = GetComponent<Renderer>().sharedMaterial;
material.SetFloat("_Min", -.5f);
material.SetFloat("_Max", .5f);
}
}

这是 shader graph
这是 actual result运行场景时产生
这是 intended result在检查器中手动更新 Material 的最小值和最大值时产生

我还在图形设置中附加了轻量级渲染管道 Assets 。
我在这里错过了什么?现在有人为什么不更新 Material 的值吗?

我还尝试使用以下方法输出值:
material.GetFloat("_Min");
material.GetFloat("_Max");

这实际上分别导致 -0.5 和 0.5,即使它没有显示在 Material 上。

PSA:在写出这个问题时,我实际上找到了解决方案。
我想不张贴这个,但也许它会帮助将来也遇到这个问题的人。

最佳答案

我犯的错误实际上非常简单。
着色器图中的属性名称不是对该属性的引用。引用是令人惊讶的标记为“引用”的字段。



编辑:我需要投资一只橡皮鸭

关于unity3d - Unity ShaderGraph/Material 属性问题与 SetFloat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53797235/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com