added terrain3d

This commit is contained in:
derek
2025-03-31 14:14:50 -05:00
parent 27175618c0
commit bd767d2927
148 changed files with 2602 additions and 1381 deletions

View File

@@ -1,22 +1,10 @@
[gd_scene load_steps=8 format=3 uid="uid://dwnhqfjq7v1pq"]
[gd_scene load_steps=6 format=3 uid="uid://dwnhqfjq7v1pq"]
[ext_resource type="Texture2D" uid="uid://cr72kjil43vgj" path="res://demo/assets/textures/rock030_nrm_rgh.png" id="1_nf248"]
[ext_resource type="Texture2D" uid="uid://br7bfxcxh60df" path="res://demo/assets/textures/rock030_alb_ht.png" id="1_t4onm"]
[ext_resource type="Material" uid="uid://d0hyi5n6ng25w" path="res://demo/assets/materials/M_rock23_black_tp.tres" id="1_goand"]
[sub_resource type="BoxMesh" id="BoxMesh_1kfaq"]
size = Vector3(1025.01, 4, 1)
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_6nmqq"]
albedo_color = Color(0.670588, 0.670588, 0.670588, 1)
albedo_texture = ExtResource("1_t4onm")
roughness_texture = ExtResource("1_nf248")
roughness_texture_channel = 3
normal_enabled = true
normal_texture = ExtResource("1_nf248")
uv1_scale = Vector3(0.4, 0.4, 0.4)
uv1_triplanar = true
texture_filter = 5
[sub_resource type="BoxShape3D" id="BoxShape3D_s0c8u"]
size = Vector3(1025, 100, 1)
@@ -32,7 +20,7 @@ size = Vector3(1, 100, 3072)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, 512)
mesh = SubResource("BoxMesh_1kfaq")
skeleton = NodePath("../..")
surface_material_override/0 = SubResource("StandardMaterial3D_6nmqq")
surface_material_override/0 = ExtResource("1_goand")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 50, 512)
@@ -42,7 +30,7 @@ shape = SubResource("BoxShape3D_s0c8u")
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, -2560)
mesh = SubResource("BoxMesh_1kfaq")
skeleton = NodePath("../..")
surface_material_override/0 = SubResource("StandardMaterial3D_6nmqq")
surface_material_override/0 = ExtResource("1_goand")
[node name="CollisionShape3D2" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 50, -2560)
@@ -52,7 +40,7 @@ shape = SubResource("BoxShape3D_s0c8u")
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 512, 2, -1024)
mesh = SubResource("BoxMesh_kfxc8")
skeleton = NodePath("../..")
surface_material_override/0 = SubResource("StandardMaterial3D_6nmqq")
surface_material_override/0 = ExtResource("1_goand")
[node name="CollisionShape3D3" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 512, 50, -1024)
@@ -62,7 +50,7 @@ shape = SubResource("BoxShape3D_pyqb2")
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -512, 2, -1024)
mesh = SubResource("BoxMesh_kfxc8")
skeleton = NodePath("../..")
surface_material_override/0 = SubResource("StandardMaterial3D_6nmqq")
surface_material_override/0 = ExtResource("1_goand")
[node name="CollisionShape3D4" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -512, 50, -1024)

View File

@@ -1,19 +1,17 @@
[gd_scene load_steps=11 format=3 uid="uid://dyt8c2xqmddo2"]
[ext_resource type="Script" uid="uid://8atelq27qxnq" path="res://demo/src/DemoScene.gd" id="1_k7qca"]
[ext_resource type="Script" path="res://demo/src/DemoScene.gd" id="1_k7qca"]
[ext_resource type="PackedScene" uid="uid://bb2lp50sjndus" path="res://demo/components/Environment.tscn" id="2_2yeq8"]
[ext_resource type="PackedScene" uid="uid://dwnhqfjq7v1pq" path="res://demo/components/Borders.tscn" id="3_cw38j"]
[ext_resource type="PackedScene" uid="uid://domhm87hbhbg1" path="res://demo/components/Player.tscn" id="3_ht63y"]
[ext_resource type="PackedScene" uid="uid://d2jihfohphuue" path="res://demo/components/UI.tscn" id="4_gk532"]
[ext_resource type="Terrain3DAssets" uid="uid://dal3jhw6241qg" path="res://demo/data/assets.tres" id="7_mnexy"]
[sub_resource type="Resource" id="Resource_4sph2"]
metadata/__load_path__ = "res://demo/components/Player.tscn"
[sub_resource type="Gradient" id="Gradient_vs32v"]
offsets = PackedFloat32Array(0.3, 1)
[sub_resource type="Gradient" id="Gradient_f1plm"]
offsets = PackedFloat32Array(0.2, 1)
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_7glc1"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_bfcw0"]
noise_type = 2
frequency = 0.03
cellular_jitter = 3.0
@@ -25,26 +23,43 @@ domain_warp_fractal_type = 2
domain_warp_fractal_lacunarity = 1.5
domain_warp_fractal_gain = 1.0
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_pvx8q"]
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_quxx0"]
seamless = true
color_ramp = SubResource("Gradient_vs32v")
noise = SubResource("FastNoiseLite_7glc1")
color_ramp = SubResource("Gradient_f1plm")
noise = SubResource("FastNoiseLite_bfcw0")
[sub_resource type="Terrain3DMaterial" id="Terrain3DMaterial_q2wt2"]
[sub_resource type="Terrain3DMaterial" id="Terrain3DMaterial_klrp5"]
_shader_parameters = {
"_mouse_layer": 2147483648,
"auto_base_texture": 0,
"auto_height_reduction": 0.1,
"auto_overlay_texture": 1,
"auto_slope": 1.0,
"bias_distance": 512.0,
"blend_sharpness": 0.87,
"depth_blur": 0.0,
"dual_scale_far": 170.0,
"dual_scale_near": 100.0,
"dual_scale_reduction": 0.3,
"dual_scale_texture": 0,
"enable_macro_variation": true,
"enable_projection": true,
"height_blending": true,
"macro_variation1": Color(1, 1, 1, 1),
"macro_variation2": Color(1, 1, 1, 1),
"macro_variation_slope": 0.333,
"mipmap_bias": 1.0,
"noise1_angle": 0.0,
"noise1_offset": Vector2(0.5, 0.5),
"noise1_scale": 0.05,
"noise2_scale": 0.03,
"noise3_scale": 0.01,
"noise_texture": SubResource("NoiseTexture2D_pvx8q"),
"vertex_normals_distance": 128.0
"noise1_scale": 0.04,
"noise2_scale": 0.076,
"noise3_scale": 0.225,
"noise_texture": SubResource("NoiseTexture2D_quxx0"),
"projection_angular_division": 1.436,
"projection_threshold": 0.8,
"tri_scale_reduction": 0.3
}
auto_shader = true
dual_scaling = true
[node name="Demo" type="Node"]
script = ExtResource("1_k7qca")
@@ -56,12 +71,12 @@ script = ExtResource("1_k7qca")
[node name="Borders" parent="." instance=ExtResource("3_cw38j")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 512, 0, 512)
[node name="Player" parent="."]
[node name="Player" parent="." instance=ExtResource("3_ht63y")]
transform = Transform3D(0.134125, 0, -0.990965, 0, 1, 0, 0.990965, 0, 0.134125, 568, 85, -1926)
[node name="Terrain3D" type="Terrain3D" parent="."]
data_directory = "res://demo/data"
material = SubResource("Terrain3DMaterial_q2wt2")
material = SubResource("Terrain3DMaterial_klrp5")
assets = ExtResource("7_mnexy")
collision_mask = 3
top_level = true

View File

@@ -1,6 +1,6 @@
[gd_scene load_steps=6 format=3 uid="uid://di5fovhcyd7re"]
[ext_resource type="Script" uid="uid://cimcukvh7jjo5" path="res://demo/src/Enemy.gd" id="1_yudyn"]
[ext_resource type="Script" path="res://demo/src/Enemy.gd" id="1_yudyn"]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_lwhhq"]
height = 1.5

View File

@@ -0,0 +1,44 @@
[gd_scene load_steps=7 format=3 uid="uid://domhm87hbhbg1"]
[ext_resource type="Script" path="res://demo/src/Player.gd" id="1_nm1yx"]
[ext_resource type="Script" path="res://demo/src/CameraManager.gd" id="2_loos7"]
[sub_resource type="SphereShape3D" id="SphereShape3D_smq6u"]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_lwhhq"]
height = 1.5
[sub_resource type="SeparationRayShape3D" id="SeparationRayShape3D_twc2s"]
[sub_resource type="CapsuleMesh" id="CapsuleMesh_lsqiy"]
[node name="Player" type="CharacterBody3D"]
collision_layer = 2
script = ExtResource("1_nm1yx")
[node name="CameraManager" type="Node3D" parent="."]
script = ExtResource("2_loos7")
[node name="Arm" type="SpringArm3D" parent="CameraManager"]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 0.906308, 0.422618, 0, -0.422618, 0.906308, 0, 2.32515, -0.0321627)
shape = SubResource("SphereShape3D_smq6u")
spring_length = 6.0
margin = 0.5
[node name="Camera3D" type="Camera3D" parent="CameraManager/Arm"]
unique_name_in_owner = true
near = 0.25
far = 16384.0
[node name="CollisionShapeBody" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.25, 0)
shape = SubResource("CapsuleShape3D_lwhhq")
[node name="CollisionShapeRay" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 1, 0)
shape = SubResource("SeparationRayShape3D_twc2s")
[node name="Body" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
mesh = SubResource("CapsuleMesh_lsqiy")

View File

@@ -1,4 +1,4 @@
[gd_scene load_steps=12 format=3 uid="uid://djhl3foqkj4e2"]
[gd_scene load_steps=10 format=3 uid="uid://djhl3foqkj4e2"]
[ext_resource type="PackedScene" uid="uid://be6nrf0b8j4l0" path="res://demo/assets/models/RockA.tscn" id="1_m1xck"]
[ext_resource type="PackedScene" uid="uid://bwvtgwartxt0g" path="res://demo/assets/models/RockB.tscn" id="2_hybky"]
@@ -6,30 +6,8 @@
[ext_resource type="PackedScene" uid="uid://vvayjv3rbx1d" path="res://demo/assets/models/Tunnel.tscn" id="4_klbpo"]
[ext_resource type="PackedScene" uid="uid://cribhhvg03u8g" path="res://demo/assets/models/CrystalC.tscn" id="5_bb2w0"]
[ext_resource type="Material" uid="uid://cso4f2iyuxpmc" path="res://demo/assets/materials/M_crystal_purple.tres" id="6_s6twx"]
[ext_resource type="Texture2D" uid="uid://br7bfxcxh60df" path="res://demo/assets/textures/rock030_alb_ht.png" id="7_pqaf8"]
[ext_resource type="Texture2D" uid="uid://cr72kjil43vgj" path="res://demo/assets/textures/rock030_nrm_rgh.png" id="8_hh7se"]
[ext_resource type="Script" uid="uid://bpye6axtbsyq2" path="res://demo/src/CaveEntrance.gd" id="9_fn2ke"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_0v0nf"]
transparency = 1
albedo_color = Color(0.670588, 0.0588235, 0.384314, 0.509804)
metallic_specular = 1.0
roughness = 0.2
roughness_texture = ExtResource("8_hh7se")
roughness_texture_channel = 3
emission_enabled = true
emission = Color(0.258824, 0.0823529, 0.25098, 1)
normal_enabled = true
normal_scale = 0.4
normal_texture = ExtResource("8_hh7se")
rim_enabled = true
rim = 0.25
clearcoat_roughness = 0.0
ao_light_affect = 1.0
ao_texture = ExtResource("7_pqaf8")
ao_texture_channel = 3
refraction_enabled = true
refraction_scale = -0.1
[ext_resource type="Material" uid="uid://ickkffutwcvo" path="res://demo/assets/materials/M_crystal_red.tres" id="7_7fkm2"]
[ext_resource type="Script" uid="uid://c444j1ucmv5ti" path="res://demo/src/CaveEntrance.gd" id="9_fn2ke"]
[sub_resource type="BoxShape3D" id="BoxShape3D_goiy4"]
size = Vector3(530.482, 38.6343, 235.603)
@@ -151,19 +129,19 @@ transform = Transform3D(-0.536793, -0.0213862, -0.199931, 0.0789312, -0.546626,
transform = Transform3D(0.898105, -0.188271, 0.0864646, 0.196692, 0.654036, -0.618921, 0.0650697, 0.621535, 0.677476, 0.589844, 2.22089, 3.04785)
[node name="Rock3" parent="CrystalGroup3/CrystalC" index="0"]
surface_material_override/0 = SubResource("StandardMaterial3D_0v0nf")
surface_material_override/0 = ExtResource("7_7fkm2")
[node name="CrystalC3" parent="CrystalGroup3" instance=ExtResource("5_bb2w0")]
transform = Transform3D(0.15544, 0.0752453, -1.06348, -0.370935, 1.01139, 0.0173435, 0.999527, 0.363637, 0.171821, 4.00867, 3.69458, -0.617432)
[node name="Rock3" parent="CrystalGroup3/CrystalC3" index="0"]
surface_material_override/0 = SubResource("StandardMaterial3D_0v0nf")
surface_material_override/0 = ExtResource("7_7fkm2")
[node name="CrystalC2" parent="CrystalGroup3" instance=ExtResource("5_bb2w0")]
transform = Transform3D(-0.573134, -0.100696, 0.847536, 0.285048, 0.939695, 0.304405, -0.804489, 0.404691, -0.495942, 7.2887, 1.71283, 4.52771)
[node name="Rock3" parent="CrystalGroup3/CrystalC2" index="0"]
surface_material_override/0 = SubResource("StandardMaterial3D_0v0nf")
surface_material_override/0 = ExtResource("7_7fkm2")
[node name="OmniLight3D" type="OmniLight3D" parent="CrystalGroup3"]
transform = Transform3D(1.74454, 2.98023e-08, -2.98023e-08, -5.60482e-08, 1.74454, 1.49012e-07, 3.43338e-08, -1.78814e-07, 1.74454, 1.11737, 4.79865, 1.8949)

View File

@@ -1,6 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://d2jihfohphuue"]
[ext_resource type="Script" uid="uid://d0otq0fkpg0nh" path="res://demo/src/UI.gd" id="1_why5e"]
[ext_resource type="Script" path="res://demo/src/UI.gd" id="1_why5e"]
[node name="UI" type="Control"]
layout_mode = 3