feat: world-grid level materials + real movement test suite
- Generated CC0-style prototype grid textures (0.5 m cells) and a shared LevelMaterials factory: world-space triplanar mapping over every code-built level (test level, dust2, procedural arena) with the existing color coding kept as tints. Readable surfaces at speed instead of flat color boxes; materials are cached per tint so identical surfaces batch. - .gdignore + .gitignore the raw downloaded asset packs in addons/ whose overlong paths broke Godot import scans and spammed git warnings. - Replaced the rotted FSM test file (invalid call(t) on Callables, stateless stub nodes, hung forever without quitting) with a real suite: 10 tests covering state registration, jump bookkeeping, wall-run momentum preservation and upward-carry cap, per-player dash cooldown (regression for the old shared static), dash speed stacking, chain soft cap, landing events, and slide entry momentum. New headless entrypoint: godot --headless --path . -s res://movement/tests/run_fsm_tests.gd Co-Authored-By: Claude Fable 5 <[email protected]>
This commit is contained in:
co-authored by
Claude Fable 5
parent
7da7f9f3f2
commit
198345177a
@@ -38,14 +38,9 @@ func _spawn_player(pid: int) -> CharacterBody3D:
|
||||
|
||||
func _build_dust2_layout() -> void:
|
||||
# Materials
|
||||
var wall_mat = StandardMaterial3D.new()
|
||||
wall_mat.albedo_color = Color(0.85, 0.75, 0.6) # Sandstone
|
||||
|
||||
var floor_mat = StandardMaterial3D.new()
|
||||
floor_mat.albedo_color = Color(0.7, 0.65, 0.55) # Dusty ground
|
||||
|
||||
var box_mat = StandardMaterial3D.new()
|
||||
box_mat.albedo_color = Color(0.4, 0.3, 0.2) # Wood crates
|
||||
var wall_mat = LevelMaterials.tinted(Color(0.85, 0.75, 0.6)) # Sandstone
|
||||
var floor_mat = LevelMaterials.tinted(Color(0.7, 0.65, 0.55)) # Dusty ground
|
||||
var box_mat = LevelMaterials.tinted(Color(0.4, 0.3, 0.2), true) # Wood crates
|
||||
|
||||
# Root CSG
|
||||
var root_csg = CSGCombiner3D.new()
|
||||
|
||||
@@ -82,10 +82,7 @@ func _box_static(pos: Vector3, size: Vector3, color: Color, node_name: String =
|
||||
var mesh := MeshInstance3D.new()
|
||||
mesh.mesh = BoxMesh.new()
|
||||
mesh.mesh.size = size
|
||||
var mat := StandardMaterial3D.new()
|
||||
mat.albedo_color = color
|
||||
mat.roughness = 0.8
|
||||
mesh.mesh.surface_set_material(0, mat)
|
||||
mesh.mesh.surface_set_material(0, LevelMaterials.tinted(color))
|
||||
body.add_child(mesh)
|
||||
return body
|
||||
|
||||
|
||||
Reference in New Issue
Block a user