acecase 发表于 2022-4-20 14:20

Unity教程2D入门

此文仅用来记录学习笔记,教程连接:M_Studio的个人空间_哔哩哔哩_Bilibili

02.

      素材绘制至Tilemap上:window - 2D - TilePalette
03.

      图层排序:Sorting Layer 中设置,排序越下,越靠前,在相同排序中,看图层顺序,数字越大,越靠前。
      建立角色:1.直接将角色文件拖拽至层级中
                        2.在层级中创建 2D Object - Sprites ,再将角色拖拽至Sprites 选项中


      给角色添加组件:Add Compoonent
                Rigidbody 2D : 将图片变为实体
                Collider 2D : 添加碰撞体积
                Tilemap Colloder 2D : 给Tilemap添加碰撞体积
04.

      按键设置:Edit - Project Setting - Input - Axes
      Rigidbody2D.velocity:刚体的线速度。
      锁定Z轴 :Rigidbody 2D面板内可以锁定轴
05.

      transform.localScale: 用于旋转等
      Time.deltaTime : 完成上一帧所用的时间(以秒为单位)(只读)。
FixedUpdate(): 调用之间的默认时间为 0.02 秒(50 次调用/秒)。使用 Time.fixedDeltaTime 来访问该值。
06.

      Animator : 组件
      Animator Controller : 允许您为角色或对象安排和维护一组动画剪辑以及关联的动画过渡。
      Animation : Window - Animation - Animation然后点击层级中的组件即可创建(注意需要在相应层级下编辑)
      Animator 内可以查看动画绑定,右键animation可以 Make Transition,进行条件转换。
      实现跑动效果:在Animator菜单下的Parameters面板里可以设置参数。
                                 选择箭头,在Inspector面板的Conditions设置条件
                                 Has Exit Time : 转换时间
                                 最后需要在代码中实现参数设置
      动画循环播放 :在animation 文件中的Inspector中勾选Loop Time
07.

      Tybe.GetTybe("name"):获取相应值
      LayerMask:指定要在 Physics.Raycast 中使用的层。
      Collider2D.IsTouchingLayers:检查该碰撞体是否正在接触指定 layerMask 上的任何碰撞体。
08.

      使用圆碰撞体组件:Circle Collider 优化碰撞
      GetComponent<tybe>() :获取组件
      :强制 Unity 对私有字段进行序列化。写在声明前。
09.

      镜头跟随角色:1. 思路:使相机的位置与角色一致
                                     使用transform.position 字段,将角色的position赋予给它,让相机的position与角色的position跟随变换。
                                  2.使用Cinemachine Package :
                                     通过 Cinemachine建立2D虚拟相机
                                     Dead Zone 值可以控制相机的延迟跟随的范围
                                     添加Confiner组件可以规定相机运动的范围
10.

      利用 OnTriggerEnter2D(Collider2D):当另一个对象进入附加到该对象的触发器对撞机时触发(仅限 2D 物理)。
Collider2D.tag: 标记可用于标识游戏对象。(tag 在Inspector中设置)
Destroy (Object obj) : 移除 GameObject、组件或资源。(注意物体的碰撞盒改为触发 :在碰撞盒设置中勾选 Is Tigger)
11.

      解决角色与场景碰撞不掉落:使用Material
Physics Material 2D:用于调整 2D 物理对象碰撞时这些对象之间的摩擦和弹性。
      使用 .enabled可以控制组件的禁用与开启。
12.

      创建UI:在进行UI的构建前,需要建立Canvas,在Canvas基础上添加其他UI 组成部分。
      UI的编辑界面与游戏编辑界面有区分,双击Canvas组件,自动跳转。
      创建Text 类之前需要 using UnityEngine.UI 。
      访问 Text类的文字内容时,需要 .text 获得文本内容。
      int 类型可以使用 .ToString 将int类型改为string类型变量
      关于UI在游戏画面中显示位置因为游戏画面调整而出现问题时:
                原因:UI的默认参照区域在中间,需要相应更改
                解决:在Inspector 面板中更改参照区域
13.

      利用 OnCollisionExit2D() 函数判断碰撞
15.

      transform.DetachChildren() 清除子项的父项
页: [1]
查看完整版本: Unity教程2D入门