【背景】
上一篇帖子我们基本完成了一个VR身体基本的骨架运动设定。 其中涉及一个细节,就是声明了一个自定义的public class VRMap后,后续需要在Inspector面板中关联这个结构中的一些Public变量。 结果会发现无法直接在Inspector面板中看到这个结构。 要解决这个问题,只需要注意在结构变量前加一行。 今后遇到类似Public变量不显示的问题时都可以这么尝试。
【解决办法-解决声明的Public结构在Inspector面板看不到】直接声明如下形式的Public structure。 inspector面板中仍然不会出现对应的设置内容:
public class VRMap
{
public Transform vrTarget;
public Transform rigTarget;
public Vector3 trackingPositionOffset;
public Vector3 trackingRotationOffset;
public void Map()
{
rigTarget.position = vrTarget.TransformPoint(trackingPositionOffset);
rigTarget.rotation = vrTarget.rotation*Quaternion.Euler(trackingRotationOffset);
}
}
其实只要在前面加上一行修饰符。 这样就可以在Inspector面板上观察到自定义结构了:
[System.Serializable]