This commit is contained in:
team3
2026-10-10 16:35:28 +02:00
commit b9ff5c1e64
33 changed files with 1705 additions and 0 deletions

34
preview/shot.gd Normal file
View File

@@ -0,0 +1,34 @@
extends SceneTree
## Lädt eine Mockup-Szene oder ein Control-Skript, macht einen Screenshot und beendet.
## godot --path preview -s shot.gd -- mockup.gd out.png
## Braucht ein Fenster (kein --headless). Fenstergröße aus project.godot: 1280×800.
func _init() -> void:
var args := OS.get_cmdline_user_args()
if args.size() < 2:
printerr("Aufruf: -- szene.tscn|skript.gd out.png")
quit(1)
return
var node: Node
if args[0].ends_with(".tscn"):
node = (load(args[0]) as PackedScene).instantiate()
else:
node = (load(args[0]) as GDScript).new()
if node is Control:
node.size = Vector2(root.size) # vor _ready, damit Kinder die Größe kennen
root.add_child(node)
if node is Control:
node.set_anchors_and_offsets_preset(Control.PRESET_FULL_RECT)
_shot(args[1])
func _shot(out: String) -> void:
for i in 6:
await process_frame
await RenderingServer.frame_post_draw
var err := root.get_texture().get_image().save_png(out)
if err != OK:
printerr("PNG-Fehler %d" % err)
quit(1)
return
print("shot " + out)
quit(0)