Unity3d--摄像机的一些属性及相机跟随
程序员文章站
2022-07-12 23:33:46
...
摄像机(Camera)用于观察游戏世界
摄像机的观察区域叫做“视锥体”,在“视锥体”范围内的物体,我们可以看到。
一、摄像机的基本操作:
-
在Hierarchy面板上选中摄像机,Scene视图会出现预览窗口
-
根据轴向移动摄像机的位置,旋转摄像机的角度
-
GameObject–>Align With View(Ctrl+Shift+F)对其视图
-
创建摄像机,在Hierarchy面板上右键Camera
二、摄像机相关属性
1.Clear Flags 【清除标记】
-
Skybox :天空盒子
-
Solid Color :固定颜色(纯色)
2.Background【背景颜色】 -
当CLear Flag为Solid Color时,场景的背景颜色
3.Projectction【投影】 -
Perspction :透视模式,3D游戏使用
-
Orthographic:正交模式,2D游戏使用
4.Clipping Planes【切割面】 -
Near : *面,摄像机最近能看到的东西
-
Far:远平面,摄像机最远能看到的东西
三、相机跟随
1.首先在Hierarchy面板上创建一个Cube,令其动起来
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class move : MonoBehaviour {
public float speed = 0.3f;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
float h = Input.GetAxis("Horizontal");
float v = Input.GetAxis("Vertical");
transform.Translate(new Vector3(h, v, 0) * speed);
}
}
此时相机并没有跟随
2.我们在相机上添加一个脚本组件,使其跟着物体运动
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class followmove : MonoBehaviour {
private Vector3 dis;
//这里的到的是游戏物体的Transform信息,因为,我们需要的到它的位置信息即可
public Transform GameCube;
// Use this for initialization
void Start () {
//通过向量运算,得到物体与相机之间的相对(也可能是绝对,我忘了叫啥了)位置
dis = GameCube.position - transform.position ;
}
// Update is called once per frame
void Update () {
//游戏物体的位置加上相对(绝对)位置,就是相机的位置
transform.position = GameCube.position-dis;
}
}
注意:不要忘了绑定游戏物体