【Unity】光照解决方案笔记 【Unity】光照解决方案笔记 https://docs.unity.cn/cn/2022.3/Manual/BestPracticeLightingPipelines.html 确定对象显示效果的三阶段 剔除 列出了需要渲染的对象,确保这些对象摄像机可见(视锥体剔除)且不被遮挡(遮挡剔除)。 渲染 将这些对象绘制到基于像素的缓冲区中(通过正确的光照以及它们的一些属性)。 后期处理 在 2024-03-04 工具使用 > Unity
【数学】立体几何 【数学】立体几何 线 若有 n⃗\vec{n}n:线的方向 p⃗\vec{p}p:线的位置 a⃗\vec{a}a:线上任意一点 ttt:点 a⃗\vec{a}a 相对线位置的法向偏移关系 则根据线的性质有:a⃗=n⃗t+p⃗\vec{a} = \vec{n}t +\vec{p}a=nt+p 即 a 点为: {a⃗x=n⃗xt+p⃗xa⃗y=n⃗yt+p⃗ya⃗z=n⃗zt+p⃗z \beg 2025-06-09 书本知识 > 数学 > 几何
【生活杂谈】关于我对数学和世界的感悟 【生活杂谈】关于我对数学和世界的感悟 前段时间中二病犯了,突发奇想了些个人感悟,这波总算趁着过年时间把病发完了。 别看标题有数学,放心,全文不用计算任何公式,很多前置知识还配有科普小视频,阅读起来毫无难度,除了写的乱七八糟外。 (高端的我也写不出来啊_(:з)∠)_)。 引入 “你听说过牛顿分形吗?” “哎,没有吗?” “那,不妨我们先来玩一个游戏吧。” 我这有三只不同颜色的笔,请用它们帮我在张 2022-02-03 生活杂谈
【生活杂谈】突破自己可解锁人生隐藏内容 【生活杂谈】突破自己可解锁人生隐藏内容 概述 太离谱了,以前我好几次感到并明确说过这么一句话: 这个世界好像有一种规律。当你费劲心思完成某件事,这个世界就会像试图打击你一样,忽然让你发现一堆优秀解决方案,就像是为了提醒你自己是多么愚蠢一样。 今天我不出所料的再次遇到了这个现象,我现在已经逐渐相信了这个事实。所以今天我要重新概括这个现象: 当你在某件事上得到突破时,世界就会为你解锁更多内容。无 2022-08-21 生活杂谈
【Unity】人形动画 【Unity】人形动画 人形模型 这是 Unity 中的概念,是一种被 Unity 特殊处理的蒙皮模型。使用该功能,Unity 便会以人体结构的方式去识别骨架,同时对骨骼的控制方式进行约束,使其符合人体的关节的运动规律。如人的膝盖只能做前后移动,而膝盖对应着一根骨骼,所以该骨骼也只能前后移动,这些信息都被存在了多出的 Avatar 文件下。 Avatar 文件 人形模型比普通蒙皮模型额外多出一个 2025-06-09 工具使用 > Unity
【Unity】UGUI 【Unity】UGUI 原理 UGUI 基于网格渲染,图片文字等都是网格,由程序在运行时生成。 当一个 UI 的布局或材质等信息改变时会触发重新构建,重构分为布局和渲染两类分别对应两个重构队列,UGUI 每帧会处理这些队列。 由于 UGUI 基于网格渲染,所以同样支持批处理,UGUI 会自动将可合并的小网格合并为大网格,可同时渲染时会自动合批。 优化 根据合批性质要尽可能减少 UGUI 重新计 2025-06-09 工具使用 > Unity
【Unity】个人编码规范 【Unity】个人编码规范 文件结构规范 先确保动静态分离 当一个类存在静态和非静态两种成员时,需要利用 partial 将类分成两部分,分别存放静态与非静态成员。 再按访问修饰符排序 公开成员 保护成员 私有 SerializeField 字段 私有成员 私有用户事件 私有 Unity 事件 最后按成员类型排序 数据结构定义 构造函数 字段 属性 函数 代码设计规范 字段永远是私有的, 2024-02-03 工具使用 > Unity
【Unity】URP 中的 UGUIShader 实现 【Unity】URP 中的 UGUIShader 实现 参考官方 Shader 代码实现: https://github.com/TwoTailsGames/Unity-Built-in-Shaders/blob/master/DefaultResourcesExtra/UI/UI-Default.shader 1234567891011121314151617181920212223242526 2024-02-28 工具使用 > Unity
【Unity】各种操作触发 GC 情况 【Unity】各种操作触发 GC 情况 在 Update 中持续执行下列操作,统计每帧触发 GC 的情况,仅首帧触发 GC 的情况不计入。 使用 Linq 处理数据 基本上使用就会分配内存,所以不要用。 利用 Foreach 遍历容器 不会分配内存,可以用,但根据不同的迭代器实现,速度可能不如 For 循环。 将值类型装箱 会触发内存分配,不要使用。 使用 enum 做键的字典 使用 enum 作 2024-02-04 工具使用 > Unity
【Unity】热更新原理与 Xlua 配置 【Unity】热更新原理与 Xlua 配置 热更新 直接理解即是让代码可以像资源包一样被运行时更新。当然它其实还一个名称叫热修复,即实现不重新打包项目也能把 Bug 修好,这也正是它常用的地方。 原理 C# 无法直接热更新 C# 是编译型语言,需要先编译成 IL 再送到虚拟机里才可运行。部分平台不支持 C# 编译器的使用,所以没法通过直接重新编译 C# 代码来实现热更新。 lua 可以轻松 2024-02-04 工具使用 > Unity