Files
tactical-shooter/client/scripts/profiling/test_process.gd
T
shawn e385eae0f5 feat: performance budget profiling setup
- docs/performance-budget.md: 60fps/2GB VRAM budget with CPU, GPU,
  memory, and draw-call targets (P95<16.6ms, P99<50ms)
- scripts/profiling/: SceneTree + Node profilers, test scenes
- scripts/generate_occluders.gd: auto-generate OccluderInstance3D
  from CSG wall pieces (128^3 voxel occlusion culling)
- scripts/convert_csg_to_mesh.gd: CSG->StaticMesh baker with LOD
  slots (LOD1@15m, LOD2@30m)
- project.godot: occlusion culling + LOD settings enabled
- modular scene UV2 data from lightmapping pass
- rcon_command_handler.gd conflict resolved (kept upstream plugin cmd)
- Fixed profiler_node.gd warmup frame bug (60 frames, not 3)
- Fixed convert_csg_to_mesh.gd LOD API (add_lod + distance)
2026-07-01 19:01:03 -04:00

22 lines
409 B
GDScript

extends SceneTree
func _init():
print("_init called")
# Add a simple node to trigger processing
var n = Node.new()
n.name = "test"
n.set_process(true)
root.add_child(n)
print("Node added")
func _process(delta: float) -> bool:
print("_process called: delta=", delta)
if frame_count > 5:
print("Quitting after 5 frames")
quit(0)
return true
frame_count += 1
return true
var frame_count := 0