blob: 9569f28cf089a7b51ff22a938acb1545b0993537 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
using UnityEngine;
//Player <FollowRig> 相当于模型关节是rig的子节点。相对位置和旋转不变
public class FollowRig : MonoBehaviour
{
public Transform target;
private Vector3 startRot;
private Vector3 startRotUp;
private Vector3 startPos;
private void Awake()
{
if (target != null)
{
startPos = target.InverseTransformPoint(base.transform.position);
startRot = target.InverseTransformDirection(base.transform.forward);
startRotUp = target.InverseTransformDirection(base.transform.up);
}
}
private void LateUpdate()
{
if (target != null)
{
base.transform.position = target.TransformPoint(startPos);
base.transform.rotation = Quaternion.LookRotation(target.TransformDirection(startRot), target.TransformDirection(startRotUp));
}
}
}
|