feat: scale village queries and enrich Jajce center
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
extends SceneTree
|
||||
|
||||
const OUTPUT_PATH := "res://docs/baselines/jajce_lookdev_01.png"
|
||||
const SCENE_PATH := "res://world/jajce/JajceLookdev.tscn"
|
||||
const DEFAULT_OUTPUT_PATH := "res://docs/baselines/jajce_lookdev_01.png"
|
||||
const DEFAULT_SCENE_PATH := "res://world/jajce/JajceLookdev.tscn"
|
||||
const CAPTURE_SIZE := Vector2i(1280, 720)
|
||||
const WARMUP_FRAMES := 90
|
||||
|
||||
@@ -12,15 +12,18 @@ func _initialize() -> void:
|
||||
|
||||
func _run() -> void:
|
||||
root.size = CAPTURE_SIZE
|
||||
var scene := load(SCENE_PATH) as PackedScene
|
||||
var scene_path := _get_argument_value("--scene=", DEFAULT_SCENE_PATH)
|
||||
var output_path := _get_argument_value("--output=", DEFAULT_OUTPUT_PATH)
|
||||
var scene := load(scene_path) as PackedScene
|
||||
if scene == null:
|
||||
push_error("Could not load %s" % SCENE_PATH)
|
||||
push_error("Could not load %s" % scene_path)
|
||||
quit(1)
|
||||
return
|
||||
|
||||
var lookdev := scene.instantiate() as Node3D
|
||||
root.add_child(lookdev)
|
||||
await process_frame
|
||||
_stabilize_lookdev(lookdev)
|
||||
for _frame in WARMUP_FRAMES:
|
||||
await process_frame
|
||||
|
||||
@@ -36,16 +39,40 @@ func _run() -> void:
|
||||
quit(1)
|
||||
return
|
||||
|
||||
var error := image.save_png(OUTPUT_PATH)
|
||||
var error := image.save_png(output_path)
|
||||
if error != OK:
|
||||
push_error("Could not save %s: %s" % [OUTPUT_PATH, error_string(error)])
|
||||
push_error("Could not save %s: %s" % [output_path, error_string(error)])
|
||||
quit(1)
|
||||
return
|
||||
|
||||
print("[TOOL] Saved %s | %s" % [OUTPUT_PATH, analysis])
|
||||
print("[TOOL] Saved %s | %s" % [output_path, analysis])
|
||||
quit(0)
|
||||
|
||||
|
||||
func _stabilize_lookdev(lookdev: Node3D) -> void:
|
||||
var camera := root.get_camera_3d()
|
||||
if camera != null:
|
||||
camera.set_process(false)
|
||||
var simulation_manager := lookdev.get_node_or_null("SimulationManager")
|
||||
if simulation_manager != null:
|
||||
simulation_manager.set_process(false)
|
||||
var day_night_cycle := lookdev.get_node_or_null("JajceWorld/DayNightCycle")
|
||||
if day_night_cycle == null:
|
||||
return
|
||||
day_night_cycle.set_process(false)
|
||||
day_night_cycle.call("_apply_light_rotation", 0.4)
|
||||
day_night_cycle.call("_apply_environment", 0.4)
|
||||
|
||||
|
||||
func _get_argument_value(prefix: String, default_value: String) -> String:
|
||||
for argument in OS.get_cmdline_user_args():
|
||||
if argument.begins_with(prefix):
|
||||
var value := argument.trim_prefix(prefix)
|
||||
if not value.is_empty():
|
||||
return value
|
||||
return default_value
|
||||
|
||||
|
||||
func _analyze_image(image: Image) -> Dictionary:
|
||||
var min_luma := INF
|
||||
var max_luma := -INF
|
||||
|
||||
Reference in New Issue
Block a user