Files
tactical-shooter/client/test_materials.gd
T
shawn d631ff784a build: baked lighting pass on kit_demo test map
- Restructured kit_demo.tscn from linear demo to enclosed 5.12x5.12 room
  with walls, floor tiles, pillar, beam, doorway, window
- Added WorldEnvironment with ProceduralSky for ambient lighting
- Added DirectionalLight3D (sun key light, 45° angle, shadows enabled)
- Added OmniLight3D (warm interior fill light)
- Added ReflectionProbe for interior specular reflections
  (box projection, room-sized extents)
- Added LightmapGI with balanced quality settings
  (bounces=3, texel_scale=1.0, max_texture_size=2048, denoiser=true)
- Added tool script (kit_demo.gd) that prints bake status in editor
- Added bake_lighting.gd CLI bake script (requires GPU-enabled instance)
- Updated project.godot with reflection atlas and shadow map quality settings

Headless baking note: Godot's standard editor build requires a GPU/display
for LightmapGI.bake(). Open the scene in the Godot editor and click 'Bake
Lightmap' on the LightmapGI node to generate the baked lightmap data.
2026-07-01 00:10:19 -04:00

30 lines
820 B
GDScript

extends Node
func _ready():
var materials = [
"res://assets/materials/wall_concrete_01.tres",
"res://assets/materials/wall_concrete_02.tres",
"res://assets/materials/floor_tile_01.tres",
"res://assets/materials/floor_concrete_01.tres",
"res://assets/materials/metal_structural_01.tres",
"res://assets/materials/accent_team_blue.tres",
"res://assets/materials/accent_team_red.tres",
]
var all_ok = true
for mat_path in materials:
var res = ResourceLoader.exists(mat_path)
if res:
var mat = load(mat_path)
print("OK: " + mat_path + " -> " + str(mat.resource_name))
else:
print("FAIL: " + mat_path + " not found")
all_ok = false
if all_ok:
print("\nAll materials loaded successfully.")
get_tree().quit(0)
else:
print("\nSome materials failed to load.")
get_tree().quit(1)