千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > Unity学习笔记(二)

Unity学习笔记(二)

来源:千锋教育
发布人:qyf
时间: 2022-07-19 17:27:00 1658222820

Unity

  初步了解了下unity,unity的使用,以及场景的布局,UI,以及用C#做一些简单的逻辑。好记性不如烂笔头,一些关键帧还是记起来比较好,哈哈,不然可能转瞬即逝了。

  一:MonoBehaviour类的初始化

  1, Instantiate()创建GameObject

  2, 通过Awake()和Start()来做初始化

  3, Update、LateUpdate,和FixedUpdate来更新逻辑

  4, 用OnGUI绘制UI

  5, OnCollisonEnter等进行物理运算

  6, OnPreCall等来控制渲染

  二:导航网格的设置

  1. 设置导航网格

  2. 设置Nav Mesh Agent

  3. 调用Nav Mesh Agent的方法路径

  三:如何更新逻辑

  1. 场景启动时调用所有脚本的Awake()

  2. 调用所有脚本的start()

  3. 调用Update(每一帧调用一次Update())

  4. 调用LateUpdate(所有的update调用完之后再调用LateUpdate)

  5. 调用FixedUpdate

  PS:update跟当前平台的帧数有关,而FixedUpdate是真实时间,所以处理物理逻辑的时候要把代码放在FixedUpdate而不是Update。

  Update是在每次渲染新的一帧的时候才会调用,ixedUpdate是在固定的时间间隔执行,不受游戏帧率的影响。

  FixedUpdate的时间间隔可以在项目设置中更改,点击 Edit - Project Setting - time找到 Fixed timestep,就可以修改了。

  四:脚本间的通讯

  1. GetComponment可以找到同一个物体上面挂着的其他的脚本。

  2. GameObject.Find来找到其他物体。

  3. SendMessage来

  4,有一个串口通信类 SerialPortReciever。

  脚本之间的通信有几种:

  1.利用在脚本A中定义对外接口函数,然后在脚本B中找到A所在的对象,再找到脚本A,进而调用里面的对外接口函数,这个方法在我的《unity3D NGUI中button响应事件实现》这篇文章中有仔细说明,可以参考。

  2.还有一个是利用SendMessage的方法来实现脚本互相通信。

  也是,首先在A脚本中编写对外接口函数,如下所示:

  using UnityEngine;

  using System.Collections;

  public class A : MonoBehaviour {

  public void Show_nunber(int n)

  {

  print("num: " + n );

  }

  }

  然后在脚本B中利用SendMessage机制调用脚本A里面的Show_number函数。

  如下:

  using UnityEngine;

  using System.Collections;

  public class B : MonoBehaviour {

  public GameObject Obj;//A脚本绑定在一个物体上的时候,再把脚本B拖拽到这个GameObject

  void Start ()

  {

  Obj.SendMessage("Show_number","10");//相当于调用脚本B里面的函数,第一个参数是函数名,第二个传递的整型参数

  }

  }

  五:部分方法笔记

  1,Desotry来销毁一个GameObject

  2,Collider碰撞

  3,Rigidbod控制物体移动

  4,Resume()运行

  5,profabs 模板

  更多关于“unity培训”的问题,欢迎咨询千锋教育在线名师。千锋教育多年办学,课程大纲紧跟企业需求,更科学更严谨,每年培养泛IT人才近2万人。不论你是零基础还是想提升,都可以找到适合的班型,千锋教育随时欢迎你来试听。

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT