Unity基本操做

主要内容:html

Unity操做git

<h2 id="1">调试</h2> 在某函数内进行`Debug.Log(...)`可实现调试检测,例如: ``` public class Player : MonoBehaviour {github

// Use this for initialization
void Start () {
    Debug.Log("Hello");
}

// Update is called once per frame
void Update () {
	Debug.Log(" World");
}

} //在控制台查看调试信息ide

<h2 id="2">碰撞体</h2>
前提:碰撞二者都有碰撞器 Collider ,至少一物体有刚体 Rigidbody(详细前提见 [Unity-Manual-Colliders](https://docs.unity3d.com/Manual/CollidersOverview.html) )

// 碰撞触发检测 private void OnCollisionEnter(Collision collision) { print(collision.collider); //获取碰撞体+碰撞器类型 print(collision.collider.name); //碰撞体名称 print(collision.collider.tag); //碰撞体标签 }函数

// 碰撞结束检测 private void OnCollisionExit(Collision collision) print("OnCollisionExit");学习

// 碰撞持续检测 private void OnCollisionStay(Collision collision) print("OnCollisionSaty");this

<h2 id="3">触发器</h2>
存在于碰撞体collider页面栏,勾选is Trigger 则表示物体为触发器(能够穿过),不然物体为碰撞体。

<h2 id="4">视角</h2>
游戏视角的移动

<h3 id="4.1">键盘视角平移</h3>
对`Main Camera`建立脚本,在`Update`内调用:`transform.Translate()`实现视角移动

<h2 id="5">光照贴图</h2>
灯光是实时计算的(默认设置:`Light|Mode|Realtime`),对不变更的灯光进行贴图能够节省资源,在`Windows|Rendering|Lighting Setting` 打开了`Lighting Setting` 页面点击 `Generate Lighting` 实现灯光贴图。

<h2 id="6">游戏对象</h2>

关于Gameobject的一些列操做


<h3 id="6.1">访问对象</h3>

在脚本内建立一个字段,例如子弹`bullet`:`public Gameobject bullet;`,在Unity页面经过将`Prefab`赋到脚本内`bullet`一栏,从而实如今脚本内经过`bullet`字段访问到`Prefab`。

<h3 id="6.2">实体化游戏对象</h3>

实例化用到了`GameObject.Instantiate(m_object, m_transform.position,m_transform.rotation)`
- GameObject.Instantiate():建立实体化函数
- m.object:所建立的预制体
- m_transform.position,m_transform.rotation:预制体位置及旋转角度,默认下为`transform.position,transrotation`说明地址为脚本所在对象的位置;也可自行修改

用法:

//建立对象 b 接收实体化的预制体 bullet GameObject b = GameObject.Instantiate(bullet, transform.position, transform.rotation);3d

<h3 id="6.3">获得组件</h3>

//rgd 获得对象 b 的刚体组件 Rigidbody rgd = b.GetComponent<Rigidbody>();调试

<h3 id="6.4">对象的移动</h3>


<h2 id="7">交互类</h2>
<h3 id="7.1">鼠标输入</h3>
`Input.GetMouseButtonDown()`:读取鼠标按下状况,括号内容即为鼠标不一样状态:
- 0:左键
- 1:右键

<h3 id="7.2">键盘输入</h3>

`Input.GetAxis("")`:返回键盘输入的浮点数值
- Horizontal:读取键盘AD左右移动的值(反映在Unity中的X方向)
- Vertical:读取键盘WS上下移动的值反映在Unity中的Y方向)

用法:`float h = Input.GetAxis("Horizontal");`
相关文章
相关标签/搜索