添加单个目标
1.让角色看向某个物体
首先给角色添加 look Animator脚本,
在Lead bone/Head 接口里面添加 角色模型 ,Auto Find 设置参与动画骨骼
2.某些时候望向天空的时候肩关节可能有些怪,可以在 Bones Compensatione Settings
里面 自动加载 骨骼补偿设置
image.png
3.Object To Follow (Target)
添加单个目标运行就可以看到效果了
添加多个目标
给角色添加Player标签
1.需要给这个角色模型物体添加一个 Flook Animatione Demo Target脚本,并将 需要关联的物体关联进去。
2.多个目标物体设置collider给目标 并勾选触发器
3.有的时候需要绑定骨骼的时候可以 增加一个脚本可以 自动将当前物体变为目标物体的子物体
实现
using UnityEngine;
public class DynamicChildAssignment : MonoBehaviour
{
public Transform targetParent; // 目标父物体
public bool worldPositionStays = true; // 是否保持世界坐标不变
void Start()
{
// 自动将当前物体变为目标物体的子物体
if (targetParent != null)
{
// 设置为目标父物体的子物体
transform.SetParent(targetParent, worldPositionStays);
// 将局部坐标归零
transform.localPosition = Vector3.zero;
Debug.Log($"{gameObject.name} 已被设为 {targetParent.name} 的子物体,并重置了局部坐标");
}
else
{
Debug.LogWarning("目标父物体未设置!");
}
}
}
运行以后可以看到 角色碰到触发器的时候就会方向触发器的中心。