初学unity学习七天,经验收获总结

初学unity七天,经验收获总结

学习就是认识新观念和新想法的过程。

假如人们始终以同一种思维方式来考虑问题的话,那么始终只会得到同样的结果。

因为我对你讲述的许多内容是你以前从未接触过的,所以我建议你,在你还没有做之前,不要轻易下结论。

没有想象力的人是很难成就大事的。

​ ----送给正在学习的我们。

start

  • 番茄我始终有一个梦,一个大家可能都有过的梦,那就是:做游戏。

  • 内心中总会有一个声音,它告诉我,我应该做点什么。我想最好的开始时间就是现在,于是我出发了。

  • 目前学习了一周的unity,总结一下自己的所学。

  • 时常总结,才会感受到收获。

收获

1. 控制人物角色的移动。

从原理上来看,其实任务角色的移动就是修改对应角色再坐标轴上的位置。

人物角色的移动,目前我学习到有两种方式。

  1. 普通的物体,直接修改物体的 transform 属性即可。 它有三个参数,分别对应 X轴,Y轴,Z轴。
  2. 对于 rigid body 的元素,可以修改物体的 velocity 元素,给予物体一个力;

当然这只是目前学习到的移动物体的方式,后续其他厂家在做学习。

其他人编写的博客–Unity中人物移动的几种方式

怎么获取到角色移动的方向?

//  分别获取-垂直和水平。 返回值返回范围 -1~1
float translation = Input.GetAxis("Vertical");
float rotation = Input.GetAxis("Horizontal");

// 除此之外,还有函数 GetAxisRaw。
// GetAxis对比GetAxisRaw,拥有平滑过渡。
// input.GetAxis()的值是根据你 按键时间 以及 按键顺序 决定。例如当你一直按住 “A键” ,input.GetAxis()的返回值会随时间从 0 到 1 ,但是中途如果按下了 “D键”,那么就会保持按下 “D键”时的返回值。

GetAxisRaw方法的官方解释

初学unity学习七天,经验收获总结_第1张图片

2. 角色的动画

可以选中角色,然后打开动画器,添加多个图片,按指定的时间频率切换,达到一种动态的效果。

同时一个角色可以有多个动画,可以添加多个动画,然后在 动画器 中,添加参数,增加判断条件,来切换角色的动画。

例如:原地站立,奔跑,跳跃,攻击。

3. 元素的销毁

static void Destroy(Object obj, float t = 0.0F);

// 使用 Destroy 销毁元素,传入元素对象即可,第二个参数可以定义延迟多久销毁元素。
// 销毁当前元素,可以使用 this ,例如: Destroy(this.gameObject);

4.unity中的生命周期

生命周期的钩子比较多,说一下目前学习到的常见的。

场景第一次加载阶段
场景开始时被调用,场景中的每个对象调用一次
Awake 方法:始终在任何 Start 方法之前并在实例化预制体之后调用。(如果游戏对象在启动期间处于非活动状态,则在激活之后才会调用 Awake 。)
OnEnable 方法:(仅在对象处于激活状态时调用)在启用对象后立即调用此函数。当一个MonoBehaviour 实例被创建时(例如加载关卡或实例化具有脚本组件的游戏对象时)调用。


第一帧更新之前的阶段
Start 方法:启用脚本实例后,在第一帧更新之前调用 Start 方法。
注意:对于当前场景中所有的游戏对象而言,Start 方法会在所有脚本中的 Update 方法之前调用。在游戏运行过程中实例化对象时,不能强制执行此调用。


FixedUpdate 方法:调用 FixedUpdate 的次数比 Update 更多。帧率比较低时,该方法每帧会被调用多次;帧率比较高时,可能不会每帧都被调用。这也是因为 FixedUpdate 是基于可靠的计时器(独立于帧率,不受帧率影响)。因此,FixedUpdate 主要用来处理物理计算和更新的相关逻辑,例如处理刚体。在 FixedUpdate 内应用运动计算时,无需将值乘以 Time.deltaTime。
Update 方法:每帧调用一次 Update。按帧更新的主要方法。
LateUpdate 方法:每帧调用一次 LateUpdate(在 Update 执行完成后)。LateUpdate 的一个常见用途就是第三人称的摄像机跟随。如果你把角色的移动和选择放到 Update 中,那么就可以把所有摄像机的移动和旋转放在 LateUpdate 中计算执行。这是为了摄像机追踪角色位置之前,确保角色已经完成移动。


初学unity学习七天,经验收获总结_第2张图片

unity生命周期相关博客

英文单词

transform 转换

rigid body 刚体

animation 动画

attack 战斗

idle 闲置的,懒惰的

jump

Vertical 垂直的

horizontal 水平的

axis 对称轴

end

  • 目前总结的就这么多,加油。
  • 很好奇以后在回过头看现在自己所写的会是什么感受。┓( ´∀` )┏

你可能感兴趣的:(Unity,unity,学习,游戏引擎)