Files
Blockline/tests/styloo_visual.gd
T

44 lines
1.6 KiB
GDScript

extends SceneTree
func _initialize() -> void:
call_deferred("run")
func run() -> void:
root.size = Vector2i(1400,900)
var stage := Node3D.new()
root.add_child(stage)
var camera := Camera3D.new()
stage.add_child(camera)
camera.position = Vector3(0.85,0.25,0.55)
camera.look_at(Vector3(0,0,-0.15))
var light := DirectionalLight3D.new()
stage.add_child(light)
light.rotation_degrees = Vector3(-35,-30,0)
light.light_energy = 1.8
var environment := WorldEnvironment.new()
environment.environment = Environment.new()
environment.environment.background_mode = Environment.BG_COLOR
environment.environment.background_color = Color("333d45")
environment.environment.ambient_light_source = Environment.AMBIENT_SOURCE_COLOR
environment.environment.ambient_light_color = Color.WHITE
environment.environment.ambient_light_energy = 0.6
stage.add_child(environment)
for index in [2,3,9]:
var model := WeaponModels.build(index)
stage.add_child(model)
WeaponSkins.apply(model,{})
assert(model.get_node("Frame/receiver").get_child_count()>0)
await create_timer(0.3).timeout
await RenderingServer.frame_post_draw
root.get_texture().get_image().save_png("res://logs/styloo-%s.png" % index)
if index == 4:
WeaponSkins.apply(model,{"soviet_variant":1})
assert(model.get_meta("soviet_model") == "tokarev")
await process_frame
await RenderingServer.frame_post_draw
root.get_texture().get_image().save_png("res://logs/styloo-tokarev.png")
WeaponSkins.apply(model,{"attachments":{"optic":1,"muzzle":1,"magazine":1}})
model.free()
stage.queue_free()
await process_frame
print("STYLOO MODELS / ATTACHMENTS PASS")
quit()