四、Unity3D的输入控制、GameObject和Prefab

1、Input也是只读属性的类

  • 键盘控制(返回bool值)
    • Input.GetKey( “a” );
      Input.GetKey ( KeyCode.A );
      都表示判断键盘”A”键是否持续按下的状态
    • Input.GetKeyDown()//只判断按下的那一帧
    • Input.GetKeyUp()//只判断抬起的那一帧
  • 鼠标控制
    • Input.GetMouseButton( 0 );
      Input.GetMouseButtonDown( 1 );
      Input.GetMouseButtonUp(2 );
      0:表示鼠标左键
      1:表示鼠标右键
      2:表示鼠标中键
  • 轴值控制(返回轴值,取值范围-1~1,默认0)
    • Input.GetAxis ( “Horizontal” );//获取水平轴值(←、→、A、D)
    • Input.GetAxis ( “Vertical” );//获取垂直轴值(↑、↓、W、S)
  • 功能键
    • Input.GetButton(“Fire1”);//左Ctrl
    • Input.GetButton(“Fire2”);//左Alt

Input面板在菜单栏Edit-Project Settings-Input

input

我们可以做一些设置

设置

2、GameObject

GameObject也是只读属性的类,父类是Object!

  • 实例化
    • Instantiate (obj);
  • 销毁
    • Destroy( obj );//下一帧进行销毁
    • DestroyImmediate( obj );//Update以及LateUpdate之后进行销毁
  • “.”出的东西(区分大小写!)
    • gameObject.name//游戏物体的名字
    • GameObject.Find(name);//根据名字获取游戏物体
    • GameObject[] objs = FindGameObjectsWithTag( “Enemy” );//根据标签获取所有该类型的物体
      -GameObject.CreatePrimitive( PrimitiveType.Cube );//创建基本几何体
      gameObject.AddComponent< Light >();//给游戏物体挂上组件
    • -

3、预制体(Prefab)
预制体相当于一个模版,例如可以将一个子弹模型存为一个预制体,实例化一个预制体就等于实例化一颗子弹。生成多个子弹时,只需要改变预制体的形状大小等就使得所有子弹同时改变了!

创建如下

创建

生成

Prefab

设置:将层级面板中的游戏物体拖动到上面的图标上即可

完成

或者直接拖动层级面板中的游戏物体到资源面板中也可快速创建预制体!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值