B fly in - draft

This commit is contained in:
Vojtěch Struhár 2025-06-18 23:12:28 +02:00
parent fad7a60c5e
commit 205551af5a
3 changed files with 28 additions and 15 deletions

View File

@ -72,10 +72,10 @@ tracks/0/type = "value"
tracks/0/imported = false tracks/0/imported = false
tracks/0/enabled = true tracks/0/enabled = true
tracks/0/path = NodePath("Door_8_Round2:rotation") tracks/0/path = NodePath("Door_8_Round2:rotation")
tracks/0/interp = 1 tracks/0/interp = 2
tracks/0/loop_wrap = true tracks/0/loop_wrap = true
tracks/0/keys = { tracks/0/keys = {
"times": PackedFloat32Array(0, 0.5), "times": PackedFloat32Array(0, 0.9),
"transitions": PackedFloat32Array(1, 1), "transitions": PackedFloat32Array(1, 1),
"update": 0, "update": 0,
"values": [Vector3(0, -3.14159, 0), Vector3(0, -1.39626, 0)] "values": [Vector3(0, -3.14159, 0), Vector3(0, -1.39626, 0)]

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=29 format=4 uid="uid://dtbrnxalat1d4"] [gd_scene load_steps=30 format=4 uid="uid://dtbrnxalat1d4"]
[ext_resource type="PackedScene" uid="uid://wsu3b5udqtdu" path="res://meshes/village/Wall_UnevenBrick_Straight.gltf" id="1_4mrxx"] [ext_resource type="PackedScene" uid="uid://wsu3b5udqtdu" path="res://meshes/village/Wall_UnevenBrick_Straight.gltf" id="1_4mrxx"]
[ext_resource type="Texture2D" uid="uid://bgc5rl13dopuj" path="res://addons/proton_scatter/demos/assets/textures/sky_2.png" id="1_w7kh3"] [ext_resource type="Texture2D" uid="uid://bgc5rl13dopuj" path="res://addons/proton_scatter/demos/assets/textures/sky_2.png" id="1_w7kh3"]
@ -82,13 +82,15 @@ size = Vector3(1.5, 2.5, 1)
[sub_resource type="Curve3D" id="Curve3D_lakw3"] [sub_resource type="Curve3D" id="Curve3D_lakw3"]
_data = { _data = {
"points": PackedVector3Array(0, 0, 0, 0, 0, 0, -0.489602, 2, 1.0528, 1.33258, 0, -1.33258, -1.33258, 0, 1.33258, -4.78907, 1, 2.00823, 1.96116, 0, -1.70973, -1.96116, 0, 1.70973, -8.76168, 0, 8.84715, 2.26288, 0, 1.33258, -2.26288, 0, -1.33258, -20.4532, 0, 9.17401, 0.301716, 0, 4.92804, -0.301716, 0, -4.92804, -24.9035, 0, 0.851653, -2.7406, 0, 1.83544, 2.7406, 0, -1.83544, -19.9503, 0, -8.37586, -3.04231, 0, -1.9863, 3.04231, 0, 1.9863, -8.98796, 0, -8.225, 0, 0, 0, 0, 0, 0, -6.02108, -1.2, -0.757503), "points": PackedVector3Array(2.30277, -4.88758e-05, 0.023995, -2.30277, 4.88758e-05, -0.023995, -6.02108, -1.2, -0.757503, 0.745, 0, 0.146, -0.745, 0, -0.146, -13.1853, -1.19995, -0.866791, 0.327271, -0.24122, 0.254905, -0.327271, 0.24122, -0.254905, -13.9874, 1.22199, -3.13804, 1.02478, -0.0626392, -0.0668271, -1.02478, 0.0626392, 0.0668271, -17.4659, 1.27507, -3.95528, 0.175049, 0.143319, -1.7492, -0.175049, -0.143319, 1.7492, -19.179, 1.57885, -1.43674, -1.29596, -0.060075, -0.378506, 1.29596, 0.060075, 0.378506, -16.5875, -1.26983, 1.01233),
"tilts": PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0) "tilts": PackedFloat32Array(0, 0, 0, 0, 0, 0)
} }
point_count = 8 point_count = 6
[sub_resource type="Curve3D" id="Curve3D_7t5mc"]
[node name="World" type="Node3D"] [node name="World" type="Node3D"]
metadata/movie_file = "captures/a_.png" metadata/movie_file = "captures/b_.png"
[node name="WorldEnvironment" type="WorldEnvironment" parent="."] [node name="WorldEnvironment" type="WorldEnvironment" parent="."]
environment = SubResource("Environment_o8fc1") environment = SubResource("Environment_o8fc1")
@ -266,17 +268,16 @@ shape = SubResource("BoxShape3D_7t5mc")
[node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D"] [node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D"]
shape = SubResource("WorldBoundaryShape3D_dss4m") shape = SubResource("WorldBoundaryShape3D_dss4m")
[node name="CinematicCamera" type="Camera3D" parent="." node_paths=PackedStringArray("path", "follower", "target")] [node name="CinematicCamera" type="Camera3D" parent="." node_paths=PackedStringArray("path", "target")]
cull_mask = 524287 cull_mask = 524287
current = true current = true
script = ExtResource("18_lakw3") script = ExtResource("18_lakw3")
travel_time = 10.0 travel_time = 15.0
path = NodePath("../A_FlyAround") path = NodePath("../B_Camera")
follower = NodePath("../A_FlyAround/PathFollow3D")
target = NodePath("../Target") target = NodePath("../Target")
[node name="Target" type="MeshInstance3D" parent="."] [node name="Target" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.12776, 0.638181, -3.20715) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 996.473, 0.638, -2.74)
layers = 524288 layers = 524288
mesh = SubResource("SphereMesh_lakw3") mesh = SubResource("SphereMesh_lakw3")
@ -285,7 +286,18 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15.0132, 3, -2.29886)
curve = SubResource("Curve3D_lakw3") curve = SubResource("Curve3D_lakw3")
[node name="PathFollow3D" type="PathFollow3D" parent="A_FlyAround"] [node name="PathFollow3D" type="PathFollow3D" parent="A_FlyAround"]
transform = Transform3D(-0.216929, -0.21614, 0.951955, 1.49011e-08, 0.975179, 0.221412, -0.976186, 0.0480309, -0.211544, -0.489602, 2, 1.0528) transform = Transform3D(0.0104181, 2.12225e-05, 0.999827, 0, 0.999999, -2.12211e-05, -0.999827, 2.21137e-07, 0.0104181, -6.02108, -1.2, -0.757503)
[node name="B_Camera" type="Path3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1015.01, 3, -2.299)
curve = SubResource("Curve3D_lakw3")
[node name="PathFollow3D" type="PathFollow3D" parent="B_Camera"]
transform = Transform3D(0.0104181, 2.12225e-05, 0.999827, 0, 0.999999, -2.12211e-05, -0.999827, 2.21137e-07, 0.0104181, -6.02108, -1.2, -0.757503)
[node name="B_Target" type="Path3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 996.473, 0.638, -2.74)
curve = SubResource("Curve3D_7t5mc")
[connection signal="body_entered" from="DoorOpener" to="House_Small/PortalDoor" method="open"] [connection signal="body_entered" from="DoorOpener" to="House_Small/PortalDoor" method="open"]
[connection signal="body_entered" from="DoorOpener" to="HouseBig" method="open_door"] [connection signal="body_entered" from="DoorOpener" to="HouseBig" method="open_door"]

View File

@ -2,16 +2,17 @@ extends Camera3D
@export_range(1, 100, 0.1, "suffix:s") var travel_time: float @export_range(1, 100, 0.1, "suffix:s") var travel_time: float
@export var path: Path3D @export var path: Path3D
@export var follower: PathFollow3D var follower: PathFollow3D
@export var target: MeshInstance3D @export var target: MeshInstance3D
func _ready() -> void: func _ready() -> void:
assert (path != null) assert (path != null)
follower = path.get_node("PathFollow3D")
assert(follower != null) assert(follower != null)
assert(target != null) assert(target != null)
var t = get_tree().create_tween() var t = get_tree().create_tween()
t.set_trans(Tween.TRANS_CUBIC) t.set_trans(Tween.TRANS_QUAD)
t.set_ease(Tween.EASE_IN_OUT) t.set_ease(Tween.EASE_IN_OUT)
t.tween_property(follower, "progress_ratio", 1, travel_time) t.tween_property(follower, "progress_ratio", 1, travel_time)
t.tween_callback(get_tree().quit.bind(0)) t.tween_callback(get_tree().quit.bind(0))