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() :获取组件

        [SerializeField]:强制 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() 清除子项的父项

        

你可能感兴趣的:(小游戏,unity,c#,游戏引擎)