中EN
概念页

Godot UI 与 Control

Godot UI & Controls

更新于 2026-10-16 约 1 分钟GodotUIControl容器主题

Control 是 GUI 基类,与 Node2D 同属 CanvasItem。布局优先用容器(Box/Grid/Margin 等)而非手算坐标;主题与类型变体统一皮肤。

原理

  • 锚点/偏移与容器自动布局;焦点与 gui_navigation 支持手柄浏览。
  • Theme / ThemeTypeVariation 集中改样式;RichTextLabel 支持 BBCode。
  • 可做整应用级 UI(creating_applications),不仅是游戏 HUD。

应用

  • HUD 放 CanvasLayer;菜单用 Control 全屏根 + 容器。
  • 自定义控件:继承 Control,画 _draw 或组合子控件。

取舍

  • 纯坐标布局在多分辨率下脆弱;容器+锚点更稳。
  • 与世界空间 3D UI 是不同路径(Viewport / 四边形)——别混用一套假设。

参见

  1. Godot 官方文档(离线 HTML,stable) Godot 4.7/stable
  2. Godot 官方文档(离线 HTML,stable) Godot 4.7/stable
  3. Godot 官方文档(离线 HTML,stable) Godot 4.7/stable
  4. Godot 官方文档(离线 HTML,stable) Godot 4.7/stable
  5. docs.godotengine.org/en/stable/tutorials/ui/gui_containers.html
  6. docs.godotengine.org/en/stable/tutorials/ui/index.html

相关页面

游戏开发 · GodotGodot 2D 渲染与画布Godot 2D Canvas2D 一切可绘节点继承 CanvasItem(Node2D 与 Control);视口持有 canvastransform。CanvasLayer 把视差背景、世界与 HUD 分到不同层,避免整树跟着相机平移。游戏开发 · Godot输入系统Godot InputGodot 用 InputEvent 统一键鼠触手柄事件,经视口与控件冒泡;推荐 InputMap 把物理键映射为动作名,便于多键绑定与运行时重绑。图形学覆盖层与用户界面渲染Overlays & User Interface RenderingHUD、武器选择界面、各种菜单等图形用户界面,加上调试绘制,都在主 3D 场景渲染完之后才画,所以统称覆盖层 (overlay)。它们一般关闭深度测试、用屏幕空间四边形和正交投影绘制,由文字、位图、嵌入视频和矢量图形几类二维图元组成(GEA4 卷 II 12.8)。图形学文本渲染Text Rendering文本中一个像素的变化就可能把 "l" 变成 "1",因此字形渲染格外讲究。主要路线有:按字号预生成字形位图纹理(配合微调和子像素渲染)、有符号距离场纹理(可在三维表面任意缩放旋转)、以及在 GPU 上直接求值字形曲线。游戏开发游戏本地化与 UnicodeGame Localization & Unicode本地化(国际化,I18N)是把软件改编为其他语言版本,最好从第一天起规划并贯穿每个开发步骤。GEA 介绍了 Unicode 与 UTF-32/UTF-8/UTF-16/UCS-2 编码、char 与 wchart、Windows 的字符串 API 约定、主机上的选择,字符串之外的本地化问题,以及核心基础设施——字符串数据库 + 按 ID 查找当前语言字符串的运行时函数,并以 Naughty Dog 的本地化工具为例。

输入关键词开始搜索

滚轮或双指缩放 · 拖动平移 · 双击放大 / 还原