2024年4月22日
#unity/日常积累 TreeView class in UnityEditor.IMGUI.Controls 描述 TreeView 是一种 IMGUI 控件,可用于为 Editor 工具创建树视图、列表视图和多列表格。 对于项的行内容渲染、拖动逻辑、选择逻辑、搜索、排序和重命名,均可进行自定义。为确保 TreeView 之间的一致性,以下功能不可自定义:折叠箭头渲染、选择渲染、拖动标记渲染。 BuildRoot 是一个很好的起点。 变量 baseIndent 用……
协奏
2024年4月22日
#unity/日常积累 TreeViewItem class in UnityEditor.IMGUI.Controls 描述 TreeViewItem 用于构建树数据结构的树形表示。 可以派生 TreeViewItem 来添加自定义数据。 另请参阅:TreeView。 变量 children 此 TreeViewItem 的子项列表。 depth 深度指的是此项具有的父级数量,与此项具有的水平“缩进”数量相对应。 displayName 渲染此项时显示的名称。 hasChildren 如果 children 有任何项,则返回 true。 icon 如果已设……
协奏
2024年4月22日
Unity性能优化总思路 可以使用Unity UPR对整个项目进行性能分析,找出问题后,再手动优化它们。 Unity UPR网址:https://upr.unity.cn/instructions/desktop 其中Unity UPR中的Asset Checker能对本地的整个Unity项目进行性能……
协奏
2024年4月22日
Unity Profile Analyzer窗口 Profile Analyzer配合Profiler使用。当我们使用Profiler收集了数据之后,不要关闭Profiler,并且打开Profile Analyzer,把Profiler收集的数据导入到Profile Analyzer,使用Profile Analyzer可以……
协奏
2024年4月22日
Unity DOTS DOTS(Data-Oriented Technology Stack)是Unity引擎中的一个新的编程模型和工具集。它旨在提供更高性能、更可扩展和更并行化的游戏开发体验。 DOTS中包含了三个主要部分: 1、ECS框架:ECS是一种用于组织和管理游戏对象的方式。它将游戏对象分解为实体(Entity)……
协奏
2024年4月22日
Unity合并网格 合并网格就是把多个网格合并为一个整体,从而提升游戏性能。 但是这样一来,我们就不能单独控制这些网格运动了,只能控制合并后的整个网格运动。而且合并的网格使用的材质必须是相同的,合并才可能成功,否则合并之后依然不能提升性能。 可以在Unity资源商店搜Mesh Combi……
协奏
2024年4月22日
C#托管内存、非托管内存、托管堆 托管内存是由垃圾回收器自动管理的内存,当达到一定量时,会由垃圾回收器自动释放它们。 托管内存存放在托管堆中。托管堆是一种用于存储和管理托管对象的内存区域。每当创建一个新的托管对象时,托管堆就会分配内存空间给这个对象,并记录这个对象的信息。当托管对象不……
协奏
2024年4月22日
Unity LODGroup组件、LOD结构体 LOD是Level of Detail的简称,意思是细节层次,它是一种优化技术。 LOD的原理,就是我们可以为一个游戏对象设定多个模型,这些模型消耗的游戏性能由高到低排列。会根据摄像机距离模型的远近自动显示对应的模型。 近的时候显示最精细的模型,距离中等……
协奏
2024年4月22日
Unity Stats窗口(统计数据窗口) 通过Stats窗口可以初步查看游戏运行时,当前一帧的各项性能。 Stats是英文单词Statistics的缩写,意思是“统计数据”。 打开方法:Game窗口右上角,找到Stats,点击它。 Audio表示音频的数据 Level表示声音强度,单位是分贝,也就……
协奏
2024年4月22日
Unity Memory Profiler Memory Profiler可以查看游戏当前一帧具体的内存使用情况,我们可以详细地看到各种东西占用了多少内存。 如果发现某样东西占用了过高的内存,则可以考虑问题是不是出在它身上,从它身上入手来进行优化。也可以分析是不是存在内存泄漏问题,即可以分析是不是某些资源一直占着内存得不到释放,才……
协奏