SuperAPI AI 工具集

godot-3d-essentials

通用与其它

查看项目

更新于 10-16 05:48

技能介绍

用途:在 Godot 4.7 中新建或修复 3D 场景,包括摆放 Camera3D、添加灯光、配置 WorldEnvironment(天空、环境光、色调映射、辉光/SSAO)、指定材质,以及用 GridMap 搭建关卡。不适用于编写空间着色器(用 godot-shaders)、3D 物理与射线(godot-physics)、角色动画混合(godot-animation)或完整 FPS 模板(fps-shooter)。

主要能力与用法:所有 3D 对象都是带 Transform3D 的 Node3D,用 global_position 移动,用 rotate_y(angle) 或 look_at(target) 旋转。添加 Camera3D 并设为 current 或调用 make_current(),可设置 fov、near、far,也可挂到 rig/pivot 上做环绕或跟随相机。灯光方面,DirectionalLight3D 相当于太阳,OmniLight3D/SpotLight3D 为局部光源,需逐灯开启阴影;没有灯光和环境光时表面会渲染为黑色。WorldEnvironment 配合 Environment 资源设置背景(天空/颜色)、环境光、色调映射与后处理(辉光、SSAO、雾、调整)。网格通过 MeshInstance3D 上的 StandardMaterial3D 或 ShaderMaterial 赋材质。GridMap 在 3D 网格上放置 MeshLibrary 条目,类似 3D 版 tilemap。

常见模式:跟随相机在 _physics_process 中用 lerp 平滑跟随并 look_at 目标;代码创建太阳与 Environment;用 material_override 赋 StandardMaterial3D;用 grid.set_cell_item(Vector3i(x,0,z), item_id) 铺地板,set_cell_item(cell, -1) 清除格子。

限制与注意:场景全黑通常是缺灯光和环境光;无相机或相机未设为 current 则不显示;局部与全局变换混用、父节点带旋转时结果异常;Node3D 非均匀缩放会扭曲子节点碰撞与灯光;look_at 的目标等于自身位置或 up 与视线平行会产生 NaN/翻转;GridMap 未指定 MeshLibrary 不会放置任何东西;HDR/辉光过强需检查 tonemap_mode 与辉光阈值。更多 Transform3D 数学、相机投影、灯光阴影参数、Environment 后处理、MeshLibrary 创建及 ReflectionProbe/LightmapGI 见 references/scene-and-environment.md。