如何将向量和四元数映射到特定的游戏对象

本文关键字:游戏 对象 映射 向量 四元数 | 更新日期: 2023-09-27 17:51:02

目标是获得游戏对象名称和向量,四元数轴从XML文件和映射轴到游戏对象名称。

确切的问题是:将GameObjects映射到它的轴上,并为这个轴分配一个值,以便根据它们的轴移动映射的GameObjects。XML方面:我可以读取每个Name和MapTo属性,但我不知道如何将Name和MapTo属性相互映射,我可以将值分配给映射的GameObjects的轴线。

<GameObject Name="Cube" MapTo="x"></GameObject>//x-y are vector axis
<GameObject Name="Cube" MapTo="y"></GameObject>
<GameObject Name="Cube" MapTo="z"></GameObject>
<GameObject Name="Cube" MapTo="a"></GameObject>//a-z are quaternion's axis 
<GameObject Name="Cube" MapTo="b"></GameObject>
<GameObject Name="Cube" MapTo="c"></GameObject>
<GameObject Name="Capsule" MapTo="a"></GameObject>
<GameObject Name="Capsule" MapTo="c"></GameObject>
<GameObject Name="Cylinder" MapTo="x"></GameObject>

我不知道该尝试什么,但我想有东西可以用。有办法做到这一点吗?

如何将向量和四元数映射到特定的游戏对象

我不确定我是否完全理解这个问题,但如果你的目标是根据XML移动/旋转一组游戏对象,我建议创建一个脚本来处理"MapTo"参数,将其重新分配到轴的变量中,例如:

Vector3 objRotation;
Vector3 objMovement;
switch(MaptTo){
   case "x":
       objMovement.x = MaptTo
   break;
}