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)
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
extends Node
|
||||
|
||||
var count := 0
|
||||
|
||||
func _ready():
|
||||
print("_ready called")
|
||||
set_process(true)
|
||||
|
||||
func _process(delta):
|
||||
count += 1
|
||||
print("_process #", count, " delta=", delta)
|
||||
if count >= 5:
|
||||
print("Quitting")
|
||||
get_tree().quit()
|
||||
Reference in New Issue
Block a user