一、基本控制
玩家所看见的画面是通过相机(camera)来控制,这和我们的编辑视角是不同的。在game窗口,我们可以切换到玩家的相机视角。在unity中,相机也是游戏对象,可以通过和其他游戏对象的一样的操作方式来操作它,控制它的位置和旋转。
故,可以通过把相机放置在某个游戏物体之下来对相机位置进行动态改变,当然一般是不会这么做的。
二、脚本控制
首先是获取相对位置,通过获取对方的Transform来得知对方的相对位置。可以通过相机绑定的脚本来获取主角,也可以通过主角绑定脚本来获得相机。
public Transform playerTransform;
通过transfrom可以直接获得绑定对象的transform,其中的成员变量position即位置坐标,这是一个3维向量,创建一个vector3来存储它。随后在update里不断再计算transform就可以使相机跟随操作物体,即playerTransform绑定的对象。
private Vector3 offset;
// Use this for initialization
void Start () {
offset=transform.position - playerTransform.position;
}
// Update is called once per frame
void Update () {
transform.position = playerTransform.position + offset;
}