开发UnityHDRP过程中,发现使用代码修改Area Light下的Shape参数SizeX,SizeY,面板数值并没有改变,这是因为HDRP的灯光下,添加了HD Additional Light Data组件做了限制,普通的
light.areaSize = Vector2.one 无法直接修改
解决方案:
1、引用using UnityEngine.Rendering.HighDefinition;命名空间
2、获取灯光上的HDAdditionalLightData
HDAdditionalLightData lightData = areaLight.GetComponent<HDAdditionalLightData>();
3、修改参数
lightData.SetAreaLightSize(Vector2.one);
延伸:其他类似的情况可尝试获取HDRP下的添加组件,并在组件中获取对应的API进行修改