武器切换是游戏或者工业仿真中最常见的功能,一般需要先在模型骨骼响应的节点设定空物体。具体步骤:
1、在响应骨骼节点添加空物体;
2、将武器或者工器具增加为空物体的自对象,并调节其Transform,将物体的Transform复制给空对象,自身的Transform重置。
3、通过脚本控制武器位置与武器的父子关系,实现武器不同持有状态的切换。
if(Input.GetKeyDown(KeyCode.Q)){//按键Q来切换武器
isFight=!isFight;
_animator.SetBool(ISFIGHT,isFight);
if(isFight){
myCrossbow.transform.SetParent(weaponPosition2.transform,false);
}else{
myCrossbow.transform.parent=weaponPosition1.transform;
myCrossbow.transform.localPosition=Vector3.zero;
myCrossbow.transform.localRotation=Quaternion.identity;
myCrossbow.transform.localScale=new Vector3(1,1,1);
}
}