extends SceneTree func _initialize() -> void: call_deferred("run") func run() -> void: root.size = Vector2i(1600, 900) var arena := RelayArena.new() root.add_child(arena) var camera := Camera3D.new() arena.add_child(camera) camera.current = true camera.fov = 72 var phase := "before" if "--before" in OS.get_cmdline_user_args() else "after" for view: Array in [["truck",Vector3(18,2,48),Vector3(13,1.8,54)], ["roof",Vector3(13,10.5,22),Vector3(12,8.5,18)], ["street", Vector3(0.2,1.7,27), Vector3(-1,2.8,0)], ["cliff",Vector3(40,1.7,-3),Vector3(46,7,-22)], ["facade",Vector3(-3,1.7,27),Vector3(-11,2,22)], ["interior",Vector3(-11.9,1.7,-14),Vector3(-8,1.6,-22)]]: camera.position = view[1] camera.look_at(view[2]) await create_timer(1.5).timeout await RenderingServer.frame_post_draw root.get_texture().get_image().save_png("res://logs/realism-%s-%s.png" % [phase, view[0]]) print("REALISM ", phase, " ", view[0], " FPS ", Engine.get_frames_per_second()) arena.queue_free() for frame in 3: await process_frame quit()