概念页
Godot UI 与 Control
Godot UI & Controls
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 / 四边形)——别混用一套假设。
参见
出处
- Godot 官方文档(离线 HTML,stable) Godot 4.7/stable
- Godot 官方文档(离线 HTML,stable) Godot 4.7/stable
- Godot 官方文档(离线 HTML,stable) Godot 4.7/stable
- Godot 官方文档(离线 HTML,stable) Godot 4.7/stable
- docs.godotengine.org/en/stable/tutorials/ui/gui_containers.html
- 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 的本地化工具为例。