Unity基本操作

主要内容:

Unity操作

调试

在某函数内进行Debug.Log(...)可实现调试检测,例如:

public class Player : MonoBehaviour {

    // Use this for initialization
    void Start () {
        Debug.Log("Hello");
    }
    
    // Update is called once per frame
    void Update () {
        Debug.Log(" World");
    }
}
//在控制台查看调试信息

碰撞体

前提:碰撞两者都有碰撞器 Collider ,至少一物体有刚体 Rigidbody(详细前提见 Unity-Manual-Colliders

// 碰撞触发检测
 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");

触发器

存在于碰撞体collider页面栏,勾选is Trigger 则表示物体为触发器(可以穿过),否则物体为碰撞体。

视角

游戏视角的移动

键盘视角平移

Main Camera创建脚本,在Update内调用:transform.Translate()实现视角移动

光照贴图

灯光是实时计算的(默认设置:Light|Mode|Realtime),对不变动的灯光进行贴图可以节省资源,在Windows|Rendering|Lighting Setting 打开了Lighting Setting 页面点击 Generate Lighting 实现灯光贴图。

游戏对象

关于Gameobject的一些列操作

访问对象

在脚本内创建一个字段,例如子弹bulletpublic Gameobject bullet;,在Unity页面通过将Prefab赋到脚本内bullet一栏,从而实现在脚本内通过bullet字段访问到Prefab

实体化游戏对象

实例化用到了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);

得到组件

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

对象的移动

交互类

鼠标输入

Input.GetMouseButtonDown():读取鼠标按下情况,括号内容即为鼠标不同状态:

  • 0:左键
  • 1:右键

键盘输入

Input.GetAxis(""):返回键盘输入的浮点数值

  • Horizontal:读取键盘AD左右移动的值(反映在Unity中的X方向)
  • Vertical:读取键盘WS上下移动的值反映在Unity中的Y方向)

用法:float h = Input.GetAxis("Horizontal");

转载于:https://www.cnblogs.com/SouthBegonia/p/10890031.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值