diff --git a/modules/terrain/terrain.cpp b/modules/terrain/terrain.cpp index 93172552..0c2b8382 100644 --- a/modules/terrain/terrain.cpp +++ b/modules/terrain/terrain.cpp @@ -2,7 +2,11 @@ #include "terrain/terrain_chunk.h" #include "terrain/terrain_modifier.h" -void Terrain::_bind_methods() {} +void Terrain::_bind_methods() { + BIND_PROPERTY(Variant::INT, side_length); + BIND_PROPERTY(Variant::INT, chunk_size); + BIND_PROPERTY(Variant::INT, detail); +} void Terrain::ready() { construct_chunk_grid(); diff --git a/modules/terrain/terrain.h b/modules/terrain/terrain.h index e53b72a3..f738dd7a 100644 --- a/modules/terrain/terrain.h +++ b/modules/terrain/terrain.h @@ -28,7 +28,7 @@ public: private: Timer *timer{ nullptr }; - size_t side_length{ 100 }; + size_t side_length{ 200 }; size_t chunk_size{ 50 }; size_t detail{ 1 }; diff --git a/project/scenes/terrain_test.tscn b/project/scenes/terrain_test.tscn index a46e9235..03e87e99 100644 --- a/project/scenes/terrain_test.tscn +++ b/project/scenes/terrain_test.tscn @@ -13,34 +13,31 @@ background_mode = 2 sky = SubResource("Sky_w3uoq") [sub_resource type="Curve" id="Curve_kbmr5"] -_limits = [0.0, 1.0, 0.0, 50.0] -_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(13.919096, 1), -0.0013848883, -0.0013848883, 0, 0, Vector2(31.5764, 0.6719189), -0.05797184, -0.05797184, 0, 0, Vector2(50, 0), -0.002701958, 0.0, 0, 0] -point_count = 4 +_limits = [0.0, 1.0, 0.0, 200.0] +_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(62.138725, 0.41686416), -0.016318396, -0.016318396, 0, 0, Vector2(99.24809, 0), 0.0, 0.0, 0, 0] +point_count = 3 [sub_resource type="Curve" id="Curve_w3uoq"] -_limits = [-30.0, 0.0, 0.0, 60.0] -_data = [Vector2(0, -0.02282238), 0.0, 0.045714226, 0, 0, Vector2(59.622047, -28.110518), -0.58994067, 0.0, 0, 0] -point_count = 2 [sub_resource type="Curve" id="Curve_chm2y"] -_limits = [0.0, 1.0, 0.0, 70.0] -_data = [Vector2(0, 1), 0.0, -0.026974231, 0, 0, Vector2(70, 0), 0.000552969, -0.05797184, 0, 0] +_limits = [0.0, 1.0, 0.0, 200.0] +_data = [Vector2(0, 1), 0.0, -0.010352392, 0, 0, Vector2(200, 0), -0.0016109183, -0.05797184, 0, 0] point_count = 2 [sub_resource type="Curve" id="Curve_o3i6r"] _limits = [-30.0, 0.0, 0.0, 100.0] -_data = [Vector2(0, 0), 0.0, -0.56894803, 0, 0, Vector2(100, -30), -0.030805072, 0.0, 0, 0] -point_count = 2 +_data = [Vector2(0, 0), 0.0, -0.56894803, 0, 0] +point_count = 1 [sub_resource type="Curve" id="Curve_nonsf"] -_limits = [0.0, 1.0, 0.0, 100.0] -_data = [Vector2(0, 1), 0.0, -0.0047784625, 0, 0, Vector2(40.63028, 0), 0.00063475175, 0.0, 0, 0] -point_count = 2 +_limits = [0.0, 1.0, 0.0, 200.0] +_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(79.132034, 0.41618794), -0.0118739465, -0.0118739465, 0, 0, Vector2(200, 0), 0.0, 0.0, 0, 0] +point_count = 3 [sub_resource type="Curve" id="Curve_4kj3c"] _limits = [0.0, 1.0, 0.0, 100.0] -_data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(79.36902, 1), 0.036407854, 0.0, 0, 0] -point_count = 2 +_data = [Vector2(0, 1), 0.036407854, 0.0, 0, 0] +point_count = 1 [sub_resource type="BoxMesh" id="BoxMesh_kbmr5"] @@ -52,23 +49,23 @@ environment = SubResource("Environment_o3i6r") [node name="Terrain" type="Terrain" parent="." unique_id=1169843565] [node name="TerrainModifierDistance" type="TerrainModifierDistance" parent="Terrain" unique_id=1885116624] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 9.701035, 8.095125, -38.253803) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 158.74449, 17.772339, 10.108765) blend_distance = 4.0 distance_weight_curve = SubResource("Curve_kbmr5") distance_height_curve = SubResource("Curve_w3uoq") [node name="TerrainModifierDistance3" type="TerrainModifierDistance" parent="Terrain" unique_id=1846439541] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.773727, 30.802101, -1.4003716) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 39.480015, 90.075294, 51.646927) blend_distance = 4.0 distance_weight_curve = SubResource("Curve_chm2y") distance_height_curve = SubResource("Curve_o3i6r") [node name="TerrainModifierDistance2" type="TerrainModifierDistance" parent="Terrain" unique_id=2110821264] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -50.95575, 1.0539904, 5.691742) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 146.0053, -20.503748, 160.74619) blend_mode = 1 distance_weight_curve = SubResource("Curve_nonsf") distance_height_curve = SubResource("Curve_4kj3c") [node name="MeshInstance3D" type="MeshInstance3D" parent="." unique_id=1089775425] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 11.772341, 0) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 98.446144, 24.222893, 90.491714) mesh = SubResource("BoxMesh_kbmr5")