Unity IL2CPP 发布程序的错误
作者:互联网
最近项目需要,使用了IL2CPP发布的程序。结果发现会报错——MeshRenderer的ReceiveShadows属性找不到。尝试解决的过程中,偶尔会错误消失,一度以为是偶现的编辑器问题。
由于代码中使用了反射获取ReceiveShadows的值,怀疑是Unity的Strip把MeshRenderer的值去除了。
经过查找资料,发现可以通过添加link.xml手动添加ReceiveShadows,这样就不会Strip这个属性,问题解决。
至于错误偶尔消失的问题,是由于寻找解决方案时代码中直接访问了ReceiveShadows,这样Unity也不会Strip这个属性。所以这也是一种间接的解决方案。
以下为简单的link,详细介绍参照Unity官方文档,功能比较多。
1 <linker> 2 <assembly fullname="UnityEngine.CoreModule"> 3 <type fullname="UnityEngine.Renderer"> 4 <property signature="System.Boolean receiveShadows"/> 5 </type> 6 </assembly> 7 </linker>
标签:ReceiveShadows,错误,IL2CPP,Unity,link,MeshRenderer,Strip 来源: https://www.cnblogs.com/LightZhang/p/14275390.html