modules/ 下 59 个可插拔模块。每个模块 = config.py(构建声明)+ register_types.cpp/h + SCsub;按四级(CORE/SERVERS/SCENE/EDITOR)注册,见 build-system。
脚本语言
| 模块 | 说明 |
|---|---|
gdscript | 内置脚本语言,见 gdscript;依赖 jsonrpc、websocket |
mono | C# 支持;is_enabled() 默认 False(需 module_mono_enabled=yes);核心 csharp_script.h(CSharpScript : Script)、mono_gd/ 绑定生成、glue/ C# 胶水、mono_gc_handle GC 互操作 |
jsonrpc | JSON-RPC(GDScript LSP 的依赖) |
物理与导航
godot_physics_2d、godot_physics_3d(默认物理后端,经 PhysicsServer3DManager::register_server("GodotPhysics3D",...) 注册)、jolt_physics(Jolt 3D 后端)、raycast、navigation_2d、navigation_3d、vhacd(凸分解)
图形与 3D 资源
gltf、fbx、gridmap、csg、tilemap、visual_shader、lightmapper_rd、meshoptimizer、xatlas_unwrap(UV 展开)、glslang(GLSL→SPIR-V)
图像/纹理格式
svg、bmp、dds、ktx、hdr、jpg、tga、webp、tinyexr、etcpak、basis_universal、astcenc、bcdec、betsy(GPU 压缩)、cvtt、msdfgen
音频与视频
ogg、vorbis、mp3、theora、interactive_music
网络
enet、mbedtls(TLS)、multiplayer、webrtc、websocket、upnp
输入与 XR
camera、mobile_vr、openxr、visionos_xr
文本与其他
freetype(字体光栅化)、text_server_adv(HarfBuzz 高级排版)、text_server_fb(fallback 排版)、noise、zip、objectdb_profiler
config.py 约定
can_build(env, platform)— 该平台能否构建(如 godot_physics_3d 在disable_physics_3d时返回 False)configure(env)— 可选配置钩子is_enabled()— 默认启用与否(mono 默认关)get_doc_classes()/get_doc_path()— 模块自带文档类- 依赖:
env.module_add_dependencies(name, deps, True)