- 博客(110)
- 收藏
- 关注
原创 Unity基础学习(十一)Debug的内容以及异常清单
时,Unity 编辑器会立即暂停(相当于手动点击工具栏的 暂停),冻结游戏时间轴。主要是用于指定内容执行完你想暂停查看才会使用,再点击上面的暂停结束就会恢复。Debug类提供了一系列方法用于调试和输出信息,仅在开发版本生效,发布时会被移除。注意:上述两个方法都只能绘制线,但是不会返回任何信息,仅视觉作用。第一点异常非常常见,在编写代码时千万注意对引用对象的判空处理。暂停编辑器,方便检查当前状态。输出普通日志(白色),用于跟踪程序流程。输出警告(黄色),提示潜在问题。输出错误(红色),标识严重问题。
2025-05-28 07:44:01
456
原创 Unity学习总结篇(1)关于各种坐标系
在Unity中,坐标系系统是游戏开发中的基础概念,主要包括世界坐标系、物体坐标系、屏幕坐标系和视口坐标系。世界坐标系是全局参考系,原点为场景原点,所有对象的位置、旋转和缩放均基于此坐标系。物体坐标系则是相对于父对象的位置,若无父对象则与世界坐标系一致。屏幕坐标系基于屏幕像素,左下角为(0,0),右上角为(Screen.width, Screen.height)。视口坐标系是归一化坐标系,范围[0,1],基于摄像机视口。 Unity提供了多种API和属性用于这些坐标系之间的转换,如transform.posi
2025-05-18 07:32:18
568
原创 Unity基础学习(十五)核心系统——音效系统
本文介绍了Unity中音频处理的核心组件和方法。首先,音频文件可以通过多种格式(如wav、mp3等)导入Unity,并提供了多种参数设置,如单声道转换、后台加载等。其次,AudioSource组件用于播放音频,支持多种控制参数,如音量、音调、循环播放等。AudioListener组件则负责接收和混合音频信号,通常绑定到主摄像机。此外,文章还介绍了如何通过代码控制音频的播放、暂停、停止等操作,以及如何使用麦克风进行音频录制和处理。最后,通过示例代码展示了如何实现麦克风录音和播放功能。
2025-05-15 14:06:13
1224
原创 Untiy基础学习(十四)核心系统—物理系统之碰撞检测代码篇 刚体,碰撞体,材质
一、碰撞/触发事件函数对照表函数名类型触发条件参数类型用途碰撞事件两物体碰撞开始时Collision处理碰撞开始逻辑(如伤害、音效)碰撞事件两物体碰撞持续中每帧Collision处理持续接触逻辑(如摩擦音效)碰撞事件两物体碰撞结束时Collision处理碰撞结束逻辑(如状态重置)触发器事件物体进入触发器范围时Collider处理触发开始逻辑(如拾取道具、传送)触发器事件物体停留在触发器内每帧Collider处理持续触发逻辑(如持续治疗、区域伤害)触发器事件物体离开触发器范围时。
2025-05-14 08:26:56
1103
原创 Unity基础学习(十二)核心系统—物理系统之碰撞检测组件篇(1)刚体,碰撞体,材质
RigidBody组件是Unity物理系统的核心,用于模拟游戏对象的物理行为,如重力、弹力和摩擦力。刚体分为2D和3D两种,分别适用于不同的游戏场景。刚体的关键参数包括质量(Mass)、空气阻力(Drag)、旋转阻力(AngularDrag)、是否受重力影响(UseGravity)、是否参与动力学计算(IsKinematic)、插值模式(Interpolation)和碰撞检测模式(CollisionDetection)。这些参数共同决定了物体在虚拟世界中的运动方式和交互效果。例如,质量影响物体的惯性和碰撞动
2025-05-12 08:22:38
1108
原创 Unity基础学习(九)输入系统全解析:鼠标、键盘与轴控制
Unity中的Input类提供了多种输入检测功能,包括鼠标、键盘、默认轴和其他输入设备。鼠标输入可以通过Input.mousePosition获取位置,并通过GetMouseButtonDown/Up/Button检测按键状态。键盘输入使用GetKeyDown/Up/Key检测按键,支持组合键检测。默认轴输入通过InputManager配置,支持键盘、鼠标、手柄等多种设备,常用轴如Horizontal、Vertical、Fire1等,通过GetAxis或GetButton调用。其他输入设备包括触摸屏、手柄、
2025-05-09 08:33:23
1844
原创 力扣每日一题1128等价多米诺骨牌对的数量
就这么想:【1,2】和【2,1】是相等的,也就是说。我们可以将每个都变成先小后大的样子,存到一个哈希表中。如果提供的顺序是【1,2】,【1,2】,【1,2】。那么满足题意的有几个呢?输入:dominoes = [[1,2],[1,2],[1,1],[1,2],[2,2]]输入:dominoes = [[1,2],[2,1],[3,4],[5,6]]即一张骨牌可以通过旋转。度得到另一张多米诺骨牌。
2025-05-05 08:47:14
414
原创 力扣每日一题 838. 推多米诺
当pre和i之间的个数为偶数时,首先明确R的填充范围,就是前一半,即pre + 1 ~ (i - (pre+1))/2+1,然后明确L的填充范围,就是后一半,即(i - (pre+1))/2+2)~ i - 1;③不中的话,就是另外的情况,其实我们只需要判断第四种情况,因为第1中情况不会发生什么变化:首先明确总的填充范围是 :pre + 1 到 i- 1,因为pre和i位置上的是确定的 不用你修改。当pre和i之间的个数为奇数时,首先明确R的填充范围,就是前一半,即pre + 1 ~ (i - 1)/2;
2025-05-03 10:08:16
309
原创 Unity基础学习(四)生命周期函数
生命周期函数是Unity引擎在游戏对象(GameObject)或脚本的特定阶段自动调用的预定义方法。这些方法属于MonoBehaviour类,开发者通过实现它们来控制对象的初始化、更新、销毁等行为。它们的执行顺序和触发时机由Unity内部管理,无需手动调用。函数名触发时机使用场景注意事项Awake脚本加载时(无论对象是否激活)初始化变量、获取组件引用仅调用一次,在OnEnable前执行OnEnable对象激活或脚本启用时事件订阅、启用时初始化可能多次触发Start。
2025-05-03 08:23:44
831
原创 Unity基础学习(二)Unity中的父子关系及Unity的工作原理
1.文件操作:新建工程,新建场景,工程打包等2.编辑操作:对象编辑操作相关,工程设置,引擎设置相关3.资源操作:基本等同于Project窗口中右键的相关功能4.对象操作:基本等同于Hierarchy窗口中右键相关功能5.脚本(组件)操作:Unity自带的脚本,可以添加各系统中的脚本6.窗口:可以打开Unity各核心系统的窗口7.帮助:检查更新,查看版本等等功能Pivot模式定义:以对象的建模原点(由3D软件导出时定义)为变换基准点。
2025-05-01 08:36:17
1025
原创 C#进阶学习(十七)PriorityQueue<TElement, TPriority>优先级队列的介绍
本文主要介绍了C#中关于优先级队列的功能
2025-04-29 08:17:51
1626
原创 C#进阶学习(十六)C#中的迭代器
摘要C#迭代器通过IEnumerable和IEnumerator接口实现集合遍历,解耦了数据存储与遍历逻辑。手动实现迭代器需定义嵌套枚举器类,维护游标状态并实现MoveNext()、Current等方法,适用于需深度控制遍历行为的场景。借助yield return语法糖,编译器自动生成状态机,大幅简化代码,支持延迟执行与按需生成元素。泛型迭代器通过类型参数增强安全性与性能,而显式接口实现确保兼容性。示例对比显示,手动实现灵活但冗长,yield版本高效简洁,适用于多数场景。理解二者差异,可基于需求选择实现方
2025-04-28 08:11:16
960
原创 C#进阶学习(十五)关于特性的认识
本文系统探讨了C#中特性(Attribute)的核心概念与实践应用。首先,特性被定义为一种为代码元素附加元数据的“标签”,支持自定义扩展与反射读取。通过AttributeUsage可限制特性的作用范围,自定义特性需继承Attribute类并定义构造函数及可选参数。在应用层面,反射技术(如GetCustomAttributes)能够动态读取特性信息。此外,系统内置的Obsolete、CallerMemberName、Conditional及DllImport等特性,分别用于标记过时代码、捕获调用上下文、条件编
2025-04-27 08:05:36
1005
数字信号处理+重庆邮电大学通信工程实验课+平常检查轻轻松松
2025-03-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人