extends SceneTree func _initialize() -> void: call_deferred("run") func run() -> void: DisplayServer.window_set_vsync_mode(DisplayServer.VSYNC_DISABLED) root.size=Vector2i(960,720) root.content_scale_size=Vector2i(960,720) var g=load("res://games/robotron/Robotron.tscn").instantiate() root.add_child(g) g.set_physics_process(false) g.sound_enabled=false g.demo=true g.wave=20 g.setup_wave() g.phase="play" for i in range(30): await process_frame var started := Time.get_ticks_usec() var peak := 0 for i in range(360): g.invulnerable=10 g.step_world(1.0/60,Vector2.ZERO,Vector2.from_angle(i*.04)) g.clock+=1.0/60 g.board.queue_redraw() peak=maxi(peak,g.entities.size()) await process_frame await RenderingServer.frame_post_draw var elapsed := (Time.get_ticks_usec()-started)/1000000.0 print("360 dense-wave frames; peak entities ",peak,"; ",snappedf(elapsed,.001)," seconds; ",snappedf(360/elapsed,1)," FPS desktop uncapped") g.free() quit()