Unity 编辑器小技巧 30 招
精选提高效率的 Unity 编辑器技巧,涵盖快捷键、窗口布局、调试、资产管理、ScriptableObject 等,让开发体验飞跃提升。

覆盖 Unity 2020–2023 LTS,URP/HDRP/Built‑in 通用,全部技巧可在个人、团队项目即时应用。

目录

  1. 核心快捷键
  2. 层级与场景视图
  3. Project 视图检索
  4. Inspector 提效
  5. 自定义窗口与菜单
  6. ScriptableObject 技巧
  7. 资产导入与版本控制
  8. Profiler 与 Debug
  9. UI Builder & UI Toolkit
  10. 结语

一、核心快捷键

动作 Windows macOS
对齐视图到选中对象 F F
切换世界/本地坐标 Ctrl+Shift+F Cmd+Shift+F
复制组件值 Ctrl+C Cmd+C
粘贴组件值 Ctrl+V Cmd+V
关闭 Game 视图播放 Ctrl+P Cmd+P

⌘TIPS

  • 双击场景中空白区域:重置 SceneView 旋转。
  • Shift+ 空格:窗口最大化,再按缩回。

二、层级与场景视图

  1. 静态标记批量设置:多选 GameObject → Inspector 勾选 Static → 下钻全部。
  2. 孤立模式:按 Alt 点击层级眼睛图标,只显示该物体与子级,调试更专注。
  3. Prefabs 状态概览:右键 Prefab → Select Dependencies,找引用一键回溯。
  4. 场景 Gizmo 过滤Gizmo 折叠面板可隐藏 BoxCollider 等杂项,清爽视图。

三、Project 视图检索

  • 类型检索t:Texture2Dt:Material
  • 标签过滤l:ui(在 Inspector 顶部添加自定义标签)
  • 依赖/引用:选中文件 → Ctrl + Alt + F(Find References In Scene)
// 自定义过滤:"Show Missing Scripts"
t:MonoScript missing:true

四、Inspector 提效

技巧 用法
锁定 Inspector 点击右上小锁,切换选择也不丢失面板
Multi‑Edit 多选对象,批改公共字段
Context 菜单 组件右键 → Reset/Remove Component
ReorderableList UnityEditorInternal 创建可拖拽数组

Drawer 示例

[CustomPropertyDrawer(typeof(RangeInt))]
public class RangeIntDrawer : PropertyDrawer
{
    public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
    {
        EditorGUI.BeginProperty(pos, label, prop);
        var min = prop.FindPropertyRelative("min");
        var max = prop.FindPropertyRelative("max");
        // 绘制双滑块
        EditorGUI.IntSlider(pos, min, 0, max.intValue);
        EditorGUI.EndProperty();
    }
}

五、自定义窗口与菜单

  1. Quick ToolsEditorWindow.GetWindow<YourWindow>("Quick"),常用脚本一键调用。
  2. MenuItem 快捷键[MenuItem("Tools/Clear Cache %&c")] (%Ctrl, &Alt)
  3. Editor Coroutines:用于 Asset 导入进度条,包体统计等。
  4. UI Toolkit EditorWindow:用 USS + UXML 构建可拖拽表格。

六、ScriptableObject 技巧

  • 配置热更:Addressables 加载 ScriptableObject 改数值无需打包 APK。
  • CreateAssetMenu:在右键菜单快速生成数据资产。
  • OnValidate:编辑器修改时实时校验范围。
[CreateAssetMenu(menuName="Game/Config/Weapon")]
public class WeaponConfig : ScriptableObject
{
    public int atk;
    public float range;
}

七、资产导入与版本控制

操作 建议
Git LFS 存大模型、音频
.meta 文件 不可遗漏,保障 GUID 不变
Asset Import Preset 一致的纹理/模型导入规则
Sprite Packer Mode SpriteAtlas 替代旧模式

八、Profiler 与 Debug

  1. Deep Profile (Editor):定位脚本瓶颈,记得关闭再运行。
  2. Profiler ModulesRenderingMemoryAudio 自选组合。
  3. In‑Game StatsStats 面板查看 DrawCall、Tris、SetPass。
  4. Debug‑DrawDebug.DrawRay, Handles.Label 在 SceneView 输出信息。

九、UI Builder & UI Toolkit

  • UI Builder 1.1+ 提供拖拽排版、Class 样式编辑。
  • USS 变量--unity-font,主题切换!
  • Runtime Panel Debugger:在游戏运行时视察 UXML 结构。

结语

这些轻量级技巧旨在 所学即用,让你日常编辑器操作提速 2–3 倍。把常用脚本自动化、布局预设保存、快捷键记熟,就能把更多时间投入到真正的创意开发中。Happy Coding!


附件

  • Editor/QuickToolWindow.cs — 一键清缓存示例
  • Preset/TextureImportPreset.preset — 通用纹理导入规则
  • Editor/RangeIntDrawer.cs — 自定义属性绘制器

需要完整代码或项目示例?欢迎留言!


Last modified on 2025-06-09