diff --git a/MyPlayer.tscn b/MyPlayer.tscn index d7ff873..da72c6b 100644 --- a/MyPlayer.tscn +++ b/MyPlayer.tscn @@ -1,6 +1,7 @@ -[gd_scene load_steps=4 format=3 uid="uid://bvb06v550jq4l"] +[gd_scene load_steps=5 format=3 uid="uid://bvb06v550jq4l"] [ext_resource type="Script" uid="uid://c8xqu4vvon4sg" path="res://MyPlayer.cs" id="1_0an8n"] +[ext_resource type="Script" uid="uid://csosedbkxelo8" path="res://number_change.cs" id="2_b740q"] [sub_resource type="CapsuleMesh" id="CapsuleMesh_kak5s"] @@ -20,5 +21,6 @@ shape = SubResource("CapsuleShape3D_kak5s") [node name="Label3D" type="Label3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.5, 0) billboard = 1 -text = "我是3D 显示的文字" +text = "14" font_size = 48 +script = ExtResource("2_b740q") diff --git a/actor/girl.tscn b/actor/girl.tscn new file mode 100644 index 0000000..0bbbbfd --- /dev/null +++ b/actor/girl.tscn @@ -0,0 +1,95 @@ +[gd_scene load_steps=2 format=3 uid="uid://dfp1cuy14cj5p"] + +[ext_resource type="PackedScene" uid="uid://bctcp65yp8t3f" path="res://graphics/characters/godette/godette.glb" id="1_fedqu"] + +[node name="godette" instance=ExtResource("1_fedqu")] + +[node name="Skeleton3D" parent="Rig" index="0"] +bones/1/position = Vector3(0, 0.36806417, 0) +bones/1/rotation = Quaternion(-1.11122625e-10, 0.043157753, 2.5724098e-09, 0.9990683) +bones/1/scale = Vector3(0.99999994, 1, 0.99999994) +bones/2/rotation = Quaternion(-6.938893e-18, 7.105427e-15, 4.9303798e-32, 1) +bones/2/scale = Vector3(1.0000001, 1, 1.0000001) +bones/3/rotation = Quaternion(8.271806e-25, 3.7252903e-09, -2.75506e-40, 1) +bones/3/scale = Vector3(1, 0.9999999, 1) +bones/4/position = Vector3(0.21200736, 0.13413203, 7.9299625e-08) +bones/4/rotation = Quaternion(-0.55059403, -0.05685804, -0.64008653, 0.5328253) +bones/4/scale = Vector3(0.9999991, 0.9999986, 0.9999996) +bones/5/rotation = Quaternion(4.5581086e-08, -3.2501575e-08, -0.51263374, 0.8586075) +bones/5/scale = Vector3(1.0000006, 0.99999946, 1) +bones/6/rotation = Quaternion(1.44633185e-08, 1.2667185e-08, 0.026658092, 0.99964464) +bones/6/scale = Vector3(0.99999994, 1, 1) +bones/7/rotation = Quaternion(-0.32061428, -0.33890042, 0.14806904, 0.87202555) +bones/7/scale = Vector3(0.9999998, 0.99999976, 1.0000004) +bones/8/position = Vector3(8.348433e-10, 0.096125185, -0.057500035) +bones/8/rotation = Quaternion(0.0012039485, 0.0012039482, -0.70267296, 0.7115109) +bones/8/scale = Vector3(1, 1.0000001, 1.0000001) +bones/9/position = Vector3(-0.21200737, 0.13413203, 8.6813984e-08) +bones/9/rotation = Quaternion(-0.6093574, 0.077397466, 0.6154345, 0.49389622) +bones/9/scale = Vector3(0.99999905, 0.9999985, 0.9999996) +bones/10/rotation = Quaternion(5.4229922e-08, 5.845856e-08, 0.53512496, 0.8447729) +bones/10/scale = Vector3(1.0000008, 0.9999997, 0.9999999) +bones/11/rotation = Quaternion(-4.946142e-10, -1.4597426e-08, -0.026658095, 0.99964464) +bones/11/scale = Vector3(1.0000001, 1, 1) +bones/12/rotation = Quaternion(-0.31973833, 0.31489155, -0.23025647, 0.8634772) +bones/12/scale = Vector3(0.9999998, 0.9999999, 1.0000002) +bones/13/position = Vector3(-1.5735983e-08, 0.096125126, -0.057499975) +bones/13/rotation = Quaternion(0.003717572, 0.0043787514, 0.7032315, 0.7109377) +bones/13/scale = Vector3(1, 1.0000001, 1.0000001) +bones/14/rotation = Quaternion(-5.8060785e-11, -0.031341746, -1.880125e-09, 0.99950874) +bones/14/scale = Vector3(1, 0.99999994, 1) +bones/15/position = Vector3(0.17094508, 0.1135872, 1.5994091e-08) +bones/15/rotation = Quaternion(0.9893496, 0.08381841, 0.0788919, 0.08909483) +bones/15/scale = Vector3(0.99999994, 0.9999997, 1.0000008) +bones/16/rotation = Quaternion(0.4004246, 5.7162595e-08, -2.7202873e-07, 0.9163297) +bones/16/scale = Vector3(1.0000004, 0.9999999, 0.99999994) +bones/17/rotation = Quaternion(-0.6243519, -0.20048644, 0.07775025, 0.7509627) +bones/17/scale = Vector3(0.99999964, 1.0000006, 0.99999946) +bones/18/rotation = Quaternion(-2.2432162e-06, 0.92015594, -0.39155215, 5.9089143e-07) +bones/18/scale = Vector3(0.99999994, 0.99999774, 1.0000024) +bones/19/position = Vector3(-0.17094508, 0.11358732, 1.5575491e-08) +bones/19/rotation = Quaternion(0.9911618, -0.033515707, 0.029745417, 0.12486052) +bones/19/scale = Vector3(0.9999999, 0.99999976, 1.0000008) +bones/20/rotation = Quaternion(0.44400105, -5.888543e-08, 3.1203066e-07, 0.89602625) +bones/20/scale = Vector3(0.99999994, 0.99999976, 0.99999994) +bones/21/rotation = Quaternion(-0.65014625, 0.11237189, -0.023841547, 0.7510752) +bones/21/scale = Vector3(0.99999976, 1.0000006, 0.9999992) +bones/22/rotation = Quaternion(-8.934892e-05, 0.9202217, -0.3913977, 2.0290998e-05) +bones/22/scale = Vector3(1.0000002, 0.9999979, 1.0000024) +bones/23/rotation = Quaternion(0.7071068, -2.2930234e-07, -4.6055177e-08, 0.7071068) +bones/24/position = Vector3(0.20218208, 0.025990263, 0.20518117) +bones/24/rotation = Quaternion(-0.7071068, -7.052851e-08, -7.0528486e-08, 0.7071068) +bones/25/rotation = Quaternion(9.6579225e-09, 1.7795515e-09, 0.98571914, -0.1683977) +bones/26/position = Vector3(-2.6049378e-08, 0.21343614, -5.171498e-09) +bones/26/rotation = Quaternion(-1.01273386e-07, 0.39108434, 0.92035484, -3.3509142e-08) +bones/26/scale = Vector3(1, 0.99999994, 0.9999999) +bones/27/position = Vector3(8.589883e-09, 0.16565004, -2.4096343e-09) +bones/27/rotation = Quaternion(-0.39108434, -6.885001e-08, -6.5628775e-08, 0.92035484) +bones/27/scale = Vector3(1, 0.99999994, 1) +bones/28/rotation = Quaternion(1, -2.3313602e-09, 1.9977652e-07, -1.3421108e-15) +bones/28/scale = Vector3(1, 1.0000001, 0.99999994) +bones/29/rotation = Quaternion(4.1633502e-17, -6.740975e-17, -1.9466928e-08, 1) +bones/30/rotation = Quaternion(0.7071068, -3.8238497e-08, 1.4500867e-07, 0.7071068) +bones/31/rotation = Quaternion(-0.7071068, -7.0528515e-08, -7.05285e-08, 0.7071068) +bones/32/rotation = Quaternion(-5.8358944e-09, 6.4383693e-10, 0.9948094, 0.10175614) +bones/33/position = Vector3(-1.1148221e-08, 0.21343614, -2.509419e-15) +bones/33/rotation = Quaternion(-1.05795486e-07, 0.39108434, 0.92035484, -2.5864253e-08) +bones/33/scale = Vector3(1.0000001, 1, 0.9999999) +bones/34/position = Vector3(-6.3112737e-09, 0.16565004, 2.7069604e-09) +bones/34/rotation = Quaternion(-0.39108434, -6.739311e-08, -6.220015e-08, 0.92035484) +bones/34/scale = Vector3(1.0000001, 1, 1) +bones/35/rotation = Quaternion(1, 3.7652548e-09, 1.9487908e-07, 7.4505815e-09) +bones/35/scale = Vector3(0.99999994, 1, 0.99999994) +bones/36/rotation = Quaternion(1.00614094e-16, -6.740982e-17, -1.5741623e-08, 1) +bones/36/scale = Vector3(1.0000001, 1, 1) +bones/37/rotation = Quaternion(-0.7071068, -7.279511e-08, -7.279509e-08, 0.7071068) +bones/38/position = Vector3(0.52084064, 0.77183884, -0.057637356) +bones/38/rotation = Quaternion(0.7946267, -1.1175871e-07, 0.6070983, -5.9604645e-08) +bones/39/rotation = Quaternion(-0.7071068, -7.279511e-08, -7.279509e-08, 0.7071068) +bones/40/position = Vector3(-0.5108437, 0.7718388, 0.059736915) +bones/40/rotation = Quaternion(-0.7582528, -1.527369e-07, 0.65196073, -1.1175871e-08) +bones/40/scale = Vector3(1, 1.0000001, 1) + +[node name="AnimationPlayer" parent="." index="1"] +autoplay = "Idle" +movie_quit_on_finish = true diff --git a/graphics/characters/godette/godette.glb.import b/graphics/characters/godette/godette.glb.import index d69e8d9..68b2c9c 100644 --- a/graphics/characters/godette/godette.glb.import +++ b/graphics/characters/godette/godette.glb.import @@ -6212,7 +6212,7 @@ _subresources={ "save_to_file/fallback_path": "", "save_to_file/keep_custom_tracks": "", "save_to_file/path": "", -"settings/loop_mode": 0, +"settings/loop_mode": 2, "slice_1/end_frame": 0, "slice_1/loop_mode": 0, "slice_1/name": "", diff --git a/number_change.cs b/number_change.cs new file mode 100644 index 0000000..8a379a9 --- /dev/null +++ b/number_change.cs @@ -0,0 +1,50 @@ +using Godot; +using System; + +public partial class number_change : Label3D +{ + private Label3D _label3D; + private int _currentNumber = 13; // 初始数字 + // Called when the node enters the scene tree for the first time. + public override void _Ready() + { + // 尝试获取Label3D节点 + //_label3D = GetNodeOrNull("Label3D"); + + _label3D = this; + + + // 初始化显示 + UpdateDisplay(); + + } + + public override void _Input(InputEvent @event) + { + // 检测回车键按下 + if (@event is InputEventKey keyEvent && keyEvent.Pressed) + { + if (keyEvent.Keycode == Key.Enter || keyEvent.Keycode == Key.KpEnter) + { + // 数字增加 + _currentNumber++; + + // 更新显示 + UpdateDisplay(); + } + } + } + + private void UpdateDisplay() + { + if (_label3D != null) + { + _label3D.Text = _currentNumber.ToString(); + } + } + // Called every frame. 'delta' is the elapsed time since the previous frame. + public override void _Process(double delta) + { + + } +} diff --git a/number_change.cs.uid b/number_change.cs.uid new file mode 100644 index 0000000..a52944e --- /dev/null +++ b/number_change.cs.uid @@ -0,0 +1 @@ +uid://csosedbkxelo8 diff --git a/project.godot b/project.godot index ebc28fb..b236388 100644 --- a/project.godot +++ b/project.godot @@ -30,6 +30,11 @@ import/blender/enabled=false [input] +ui_accept={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":32,"physical_keycode":0,"key_label":0,"unicode":32,"location":0,"echo":false,"script":null) +] +} left={ "deadzone": 0.5, "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":97,"location":0,"echo":false,"script":null) diff --git a/scene/level2.tscn b/scene/level2.tscn new file mode 100644 index 0000000..e6223b8 --- /dev/null +++ b/scene/level2.tscn @@ -0,0 +1,51 @@ +[gd_scene load_steps=6 format=3 uid="uid://bo2qeryinphil"] + +[ext_resource type="PackedScene" uid="uid://5qhvowm03lqg" path="res://scene/my_player2.tscn" id="1_qhexg"] + +[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_j2tch"] +sky_horizon_color = Color(0.66224277, 0.6717428, 0.6867428, 1) +ground_horizon_color = Color(0.66224277, 0.6717428, 0.6867428, 1) + +[sub_resource type="Sky" id="Sky_s4405"] +sky_material = SubResource("ProceduralSkyMaterial_j2tch") + +[sub_resource type="Environment" id="Environment_36wlx"] +background_mode = 2 +sky = SubResource("Sky_s4405") +tonemap_mode = 2 +glow_enabled = true + +[sub_resource type="BoxShape3D" id="BoxShape3D_s4405"] +size = Vector3(40, 0.5, 40) + +[node name="level" type="Node3D"] + +[node name="MyPlayer2" parent="." instance=ExtResource("1_qhexg")] + +[node name="WorldEnvironment" type="WorldEnvironment" parent="."] +environment = SubResource("Environment_36wlx") + +[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."] +transform = Transform3D(-0.8660254, -0.43301278, 0.25, 0, 0.49999997, 0.86602545, -0.50000006, 0.75, -0.43301266, 7.394389, 7.099562, 9.536743e-07) +light_color = Color(0.7263125, 0.7740616, 0.5067892, 1) +shadow_enabled = true + +[node name="Camera3D" type="Camera3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 3) + +[node name="Environment" type="Node3D" parent="."] + +[node name="StaticBody3D" type="StaticBody3D" parent="Environment"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.25, 0) + +[node name="CSGBox3D" type="CSGBox3D" parent="Environment/StaticBody3D"] +transform = Transform3D(40, 0, 0, 0, 0.5, 0, 0, 0, 40, 0, 0, 0) + +[node name="CollisionShape3D" type="CollisionShape3D" parent="Environment/StaticBody3D"] +shape = SubResource("BoxShape3D_s4405") + +[node name="Label" type="Label" parent="."] +offset_right = 400.0 +offset_bottom = 150.0 +theme_override_font_sizes/font_size = 32 +text = "ASDF" diff --git a/scene/my_player2.tscn b/scene/my_player2.tscn new file mode 100644 index 0000000..8ef0a1a --- /dev/null +++ b/scene/my_player2.tscn @@ -0,0 +1,21 @@ +[gd_scene load_steps=4 format=3 uid="uid://5qhvowm03lqg"] + +[ext_resource type="Script" uid="uid://c8xqu4vvon4sg" path="res://MyPlayer.cs" id="1_2a064"] +[ext_resource type="PackedScene" uid="uid://dfp1cuy14cj5p" path="res://actor/girl.tscn" id="2_i8k2p"] + +[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_kak5s"] + +[node name="MyPlayer2" type="CharacterBody3D"] +script = ExtResource("1_2a064") + +[node name="CollisionShape3D" type="CollisionShape3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) +shape = SubResource("CapsuleShape3D_kak5s") + +[node name="Label3D" type="Label3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.5, 0) +billboard = 1 +text = "我是3D 显示的文字" +font_size = 48 + +[node name="godette" parent="." instance=ExtResource("2_i8k2p")]