找回密码
 立即注册
查看: 278|回复: 0

Unity教程2D入门

[复制链接]
发表于 2022-4-20 14:20 | 显示全部楼层 |阅读模式
此文仅用来记录学习笔记,教程连接: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>() :获取组件
        [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开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2025-5-4 06:00 , Processed in 0.111275 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表