Move files and folders to new repo format to enable multi-project format

This commit is contained in:
2025-03-06 22:07:25 -08:00
parent 12cbb82ac9
commit a09f6ec5a5
3973 changed files with 1781 additions and 2938 deletions

View File

@@ -0,0 +1,103 @@
[gd_scene load_steps=10 format=3 uid="uid://crr6031qmir35"]
[ext_resource type="Script" path="res://addons/SimpleDungeons/DungeonRoom3D.gd" id="1_1c8qy"]
[sub_resource type="Gradient" id="Gradient_omn5o"]
[sub_resource type="GradientTexture2D" id="GradientTexture2D_ls0we"]
gradient = SubResource("Gradient_omn5o")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_1b4dt"]
albedo_texture = SubResource("GradientTexture2D_ls0we")
uv1_triplanar = true
uv1_world_triplanar = true
[sub_resource type="GDScript" id="GDScript_4tekc"]
script/source = "extends Node
func _ready():
$\"..\".connect(\"dungeon_done_generating\", remove_unused_doors)
func remove_unused_doors():
for door in $\"..\".get_doors():
if door.get_room_leads_to() == null:
door.door_node.queue_free()
"
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_sva35"]
albedo_color = Color(1, 0.44, 0.44, 1)
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_8485v"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_1qq54"]
albedo_color = Color(0.5, 0.243333, 0.225, 1)
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ca5kw"]
albedo_color = Color(0.5, 0.243333, 0.225, 1)
[node name="Bedroom" type="Node3D"]
script = ExtResource("1_1c8qy")
size_in_voxels = Vector3i(3, 1, 3)
min_count = 5
max_count = 10
[node name="CSGBox3D" type="CSGBox3D" parent="."]
use_collision = true
size = Vector3(30, 10, 30)
[node name="CSGBox3D2" type="CSGBox3D" parent="CSGBox3D"]
operation = 2
size = Vector3(29, 9, 29)
[node name="DOOR" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -9.5, 0, -14.5)
operation = 2
size = Vector3(10, 9, 2)
[node name="CSGBox3D3" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -4.42782, 0)
operation = 2
size = Vector3(29, 0.2, 29)
material = SubResource("StandardMaterial3D_1b4dt")
[node name="RemoveUnusedDoors" type="Node" parent="."]
script = SubResource("GDScript_4tekc")
[node name="CSGCombiner3D" type="CSGCombiner3D" parent="."]
use_collision = true
[node name="CSGBox3D2" type="CSGBox3D" parent="CSGCombiner3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.5, -3, 0)
size = Vector3(8, 1, 8)
material = SubResource("StandardMaterial3D_sva35")
[node name="CSGBox3D9" type="CSGBox3D" parent="CSGCombiner3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 9.5, -3, 0)
size = Vector3(4, 1, 8)
material = SubResource("StandardMaterial3D_8485v")
[node name="CSGBox3D4" type="CSGBox3D" parent="CSGCombiner3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.91372, -3.3, 0)
size = Vector3(13.1274, 1, 8.3)
material = SubResource("StandardMaterial3D_1qq54")
[node name="CSGBox3D3" type="CSGBox3D" parent="CSGCombiner3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, -2, 0)
size = Vector3(1, 3, 8)
material = SubResource("StandardMaterial3D_ca5kw")
[node name="CSGBox3D5" type="CSGBox3D" parent="CSGCombiner3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, -4.3, 3.5)
material = SubResource("StandardMaterial3D_ca5kw")
[node name="CSGBox3D6" type="CSGBox3D" parent="CSGCombiner3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -4.3, 3.5)
material = SubResource("StandardMaterial3D_ca5kw")
[node name="CSGBox3D7" type="CSGBox3D" parent="CSGCombiner3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, -4.3, -3.63669)
material = SubResource("StandardMaterial3D_ca5kw")
[node name="CSGBox3D8" type="CSGBox3D" parent="CSGCombiner3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -4.3, -3.63669)
material = SubResource("StandardMaterial3D_ca5kw")

View File

@@ -0,0 +1,76 @@
[gd_scene load_steps=9 format=3 uid="uid://bn6lta2vs6qh8"]
[ext_resource type="Script" uid="uid://ce73fuh74l81l" path="res://addons/SimpleDungeons/DungeonRoom3D.gd" id="1_m0wvh"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_8tlf5"]
albedo_color = Color(0, 0, 0, 1)
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_4tt88"]
albedo_color = Color(0.176419, 0.176419, 0.176419, 1)
[sub_resource type="Gradient" id="Gradient_nd35r"]
offsets = PackedFloat32Array(0.276119, 1)
colors = PackedColorArray(0.301961, 0, 0, 1, 0.555762, 0.29171, 0.357937, 1)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_4grxn"]
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_4g5kp"]
color_ramp = SubResource("Gradient_nd35r")
noise = SubResource("FastNoiseLite_4grxn")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ovx52"]
albedo_texture = SubResource("NoiseTexture2D_4g5kp")
[sub_resource type="GDScript" id="GDScript_nl3oo"]
script/source = "extends Node
func _ready():
$\"..\".connect(\"dungeon_done_generating\", remove_unused_doors)
func remove_unused_doors():
for door in $\"..\".get_doors():
if door.get_room_leads_to() == null:
door.door_node.queue_free()
"
[node name="Corridor" type="Node3D"]
script = ExtResource("1_m0wvh")
[node name="CSGBox3D" type="CSGBox3D" parent="."]
use_collision = true
size = Vector3(10, 10, 10)
material = SubResource("StandardMaterial3D_8tlf5")
[node name="CSGBox3D2" type="CSGBox3D" parent="CSGBox3D"]
operation = 2
size = Vector3(9, 9, 9)
material = SubResource("StandardMaterial3D_4tt88")
[node name="CSGBox3D3" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -4.52714, 0)
operation = 2
size = Vector3(9, 0.096, 9)
material = SubResource("StandardMaterial3D_ovx52")
[node name="DOOR?" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -5)
operation = 2
size = Vector3(9, 9, 3)
[node name="DOOR?2" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 5)
operation = 2
size = Vector3(9, 9, 3)
[node name="DOOR?3" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 4, 0, 0)
operation = 2
size = Vector3(9, 9, 3)
[node name="DOOR?4" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -4, 0, 0)
operation = 2
size = Vector3(9, 9, 3)
[node name="RemoveUnusedDoors" type="Node" parent="."]
script = SubResource("GDScript_nl3oo")

View File

@@ -0,0 +1,158 @@
[gd_scene load_steps=9 format=3 uid="uid://bnxjj8dpefmfd"]
[ext_resource type="Script" path="res://addons/SimpleDungeons/DungeonRoom3D.gd" id="1_vbc11"]
[ext_resource type="Texture2D" uid="uid://i7rtr0ewxm5j" path="res://addons/SimpleDungeons/sample_assets/blue-checkerboard-cc0.png" id="2_1ufaf"]
[sub_resource type="Shader" id="Shader_vq8fj"]
code = "// NOTE: Shader automatically converted from Godot Engine 4.2.2.stable's StandardMaterial3D.
shader_type spatial;
render_mode blend_mix,depth_draw_opaque,cull_back,diffuse_burley,specular_schlick_ggx;
uniform vec4 albedo : source_color;
uniform sampler2D texture_albedo : source_color,filter_linear_mipmap,repeat_enable;
uniform float point_size : hint_range(0,128);
uniform float roughness : hint_range(0,1);
uniform sampler2D texture_metallic : hint_default_white,filter_linear_mipmap,repeat_enable;
uniform vec4 metallic_texture_channel;
uniform sampler2D texture_roughness : hint_roughness_r,filter_linear_mipmap,repeat_enable;
uniform float specular;
uniform float metallic;
varying vec3 uv1_triplanar_pos;
uniform float uv1_blend_sharpness;
varying vec3 uv1_power_normal;
uniform vec3 uv1_scale;
uniform vec3 uv1_offset;
uniform vec3 uv2_scale;
uniform vec3 uv2_offset;
void vertex() {
vec3 normal = MODEL_NORMAL_MATRIX * NORMAL;
TANGENT = vec3(0.0,0.0,-1.0) * abs(normal.x);
TANGENT+= vec3(1.0,0.0,0.0) * abs(normal.y);
TANGENT+= vec3(1.0,0.0,0.0) * abs(normal.z);
TANGENT = inverse(MODEL_NORMAL_MATRIX) * normalize(TANGENT);
BINORMAL = vec3(0.0,1.0,0.0) * abs(normal.x);
BINORMAL+= vec3(0.0,0.0,-1.0) * abs(normal.y);
BINORMAL+= vec3(0.0,1.0,0.0) * abs(normal.z);
BINORMAL = inverse(MODEL_NORMAL_MATRIX) * normalize(BINORMAL);
uv1_power_normal=pow(abs(normal),vec3(uv1_blend_sharpness));
uv1_triplanar_pos = (MODEL_MATRIX * vec4(VERTEX, 1.0f)).xyz * uv1_scale + uv1_offset + TIME * 0.01;
uv1_power_normal/=dot(uv1_power_normal,vec3(1.0));
uv1_triplanar_pos *= vec3(1.0,-1.0, 1.0);
}
vec4 triplanar_texture(sampler2D p_sampler,vec3 p_weights,vec3 p_triplanar_pos) {
vec4 samp=vec4(0.0);
samp+= texture(p_sampler,p_triplanar_pos.xy) * p_weights.z;
samp+= texture(p_sampler,p_triplanar_pos.xz) * p_weights.y;
samp+= texture(p_sampler,p_triplanar_pos.zy * vec2(-1.0,1.0)) * p_weights.x;
return samp;
}
void fragment() {
vec4 albedo_tex = triplanar_texture(texture_albedo,uv1_power_normal,uv1_triplanar_pos);
ALBEDO = albedo.rgb * albedo_tex.rgb;
float metallic_tex = dot(triplanar_texture(texture_metallic,uv1_power_normal,uv1_triplanar_pos),metallic_texture_channel);
METALLIC = metallic_tex * metallic;
vec4 roughness_texture_channel = vec4(1.0,0.0,0.0,0.0);
float roughness_tex = dot(triplanar_texture(texture_roughness,uv1_power_normal,uv1_triplanar_pos),roughness_texture_channel);
ROUGHNESS = roughness_tex * roughness;
SPECULAR = specular;
}
"
[sub_resource type="FastNoiseLite" id="FastNoiseLite_fe7vc"]
noise_type = 2
frequency = 0.0165
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_bispe"]
seamless = true
noise = SubResource("FastNoiseLite_fe7vc")
[sub_resource type="ShaderMaterial" id="ShaderMaterial_g7p6c"]
render_priority = 0
shader = SubResource("Shader_vq8fj")
shader_parameter/albedo = Color(1, 1, 1, 1)
shader_parameter/texture_albedo = SubResource("NoiseTexture2D_bispe")
shader_parameter/point_size = 1.0
shader_parameter/roughness = 1.0
shader_parameter/metallic_texture_channel = null
shader_parameter/specular = 0.5
shader_parameter/metallic = 0.0
shader_parameter/uv1_blend_sharpness = 1.0
shader_parameter/uv1_scale = Vector3(0.08, 0.08, 0.08)
shader_parameter/uv1_offset = Vector3(0, 0, 0)
shader_parameter/uv2_scale = Vector3(1, 1, 1)
shader_parameter/uv2_offset = Vector3(0, 0, 0)
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_07mhj"]
albedo_texture = ExtResource("2_1ufaf")
[sub_resource type="GDScript" id="GDScript_17gef"]
script/source = "extends Node
func remove_unused_doors():
for door in $\"..\".get_doors():
if door.get_room_leads_to() == null:
door.door_node.queue_free()
func _on_living_room_dungeon_done_generating():
remove_unused_doors()
"
[node name="LivingRoom" type="Node3D"]
script = ExtResource("1_vbc11")
size_in_voxels = Vector3i(3, 1, 2)
min_count = 5
max_count = 10
[node name="CSGBox3D" type="CSGBox3D" parent="."]
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 2.49155e-06, 0, 0)
material_override = SubResource("ShaderMaterial_g7p6c")
use_collision = true
size = Vector3(30, 10, 20)
[node name="CSGBox3D3" type="CSGBox3D" parent="CSGBox3D"]
operation = 2
size = Vector3(29.5, 9.5, 19.5)
[node name="DOOR?_B_CUT" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -2.75, 9.75)
operation = 2
size = Vector3(2, 4, 1)
[node name="DOOR?_R2_CUT2" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 15, -2.75, -5)
operation = 2
size = Vector3(2, 4, 1)
[node name="DOOR?_R1_CUT2" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 15, -2.75, 5)
operation = 2
size = Vector3(2, 4, 1)
[node name="DOOR?_L2_CUT" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -15, -2.75, -5)
operation = 2
size = Vector3(2, 4, 1)
[node name="DOOR?_L1_CUT" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -15, -2.75, 5)
operation = 2
size = Vector3(2, 4, 1)
[node name="CSGBox3D2" type="CSGBox3D" parent="."]
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 2.49155e-06, -4.825, 0)
material_override = SubResource("StandardMaterial3D_07mhj")
use_collision = true
size = Vector3(8, 0.2, 13)
[node name="RemoveUnusedDoors" type="Node" parent="."]
script = SubResource("GDScript_17gef")
[connection signal="dungeon_done_generating" from="." to="RemoveUnusedDoors" method="_on_living_room_dungeon_done_generating"]

View File

@@ -0,0 +1,90 @@
[gd_scene load_steps=12 format=3 uid="uid://najwcu57f6bc"]
[ext_resource type="Script" path="res://addons/SimpleDungeons/DungeonRoom3D.gd" id="1_ht4j3"]
[ext_resource type="PackedScene" uid="uid://bak8ltrhbmlv5" path="res://addons/SimpleDungeons/utils/CSGStairMaker3D.tscn" id="3_1hkio"]
[sub_resource type="Gradient" id="Gradient_n7jmt"]
colors = PackedColorArray(1, 1, 1, 1, 0.5832, 0.5832, 0.81, 1)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_xy5n2"]
noise_type = 2
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_wo5pc"]
color_ramp = SubResource("Gradient_n7jmt")
noise = SubResource("FastNoiseLite_xy5n2")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_0vchj"]
albedo_texture = SubResource("NoiseTexture2D_wo5pc")
uv1_scale = Vector3(4.165, 4.165, 4.165)
uv1_triplanar = true
uv1_world_triplanar = true
[sub_resource type="Gradient" id="Gradient_i80ea"]
offsets = PackedFloat32Array(0, 0.442623)
colors = PackedColorArray(0, 0, 0, 1, 0.52, 0.1872, 0.275947, 1)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_805tn"]
noise_type = 3
seed = 16
frequency = 0.029
fractal_type = 0
fractal_octaves = 1
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_wr6uy"]
in_3d_space = true
generate_mipmaps = false
seamless = true
color_ramp = SubResource("Gradient_i80ea")
noise = SubResource("FastNoiseLite_805tn")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_hudx1"]
albedo_texture = SubResource("NoiseTexture2D_wr6uy")
uv1_scale = Vector3(0.705, 0.705, 0.705)
uv1_triplanar = true
uv1_world_triplanar = true
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_i5qk8"]
albedo_texture = SubResource("NoiseTexture2D_wr6uy")
uv1_scale = Vector3(0.705, 0.705, 0.705)
uv1_triplanar = true
uv1_world_triplanar = true
[node name="Stair" type="Node3D"]
script = ExtResource("1_ht4j3")
size_in_voxels = Vector3i(2, 2, 1)
min_count = 5
max_count = 30
is_stair_room = true
[node name="CSGBox3D" type="CSGBox3D" parent="."]
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 0)
material_override = SubResource("StandardMaterial3D_0vchj")
use_collision = true
size = Vector3(20, 20, 10)
[node name="CSGBox3D2" type="CSGBox3D" parent="CSGBox3D"]
operation = 2
size = Vector3(19.5, 19.5, 9.5)
[node name="DOOR?_R_CUT" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 9.8, -7.75, 0)
operation = 2
size = Vector3(2, 4, 1)
[node name="DOOR?_L_CUT" type="CSGBox3D" parent="CSGBox3D"]
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -9.9, 2.25, 0)
operation = 2
size = Vector3(2, 4, 1)
[node name="CSGStairMaker3D" parent="." instance=ExtResource("3_1hkio")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.75, -4.75, 0)
material_override = SubResource("StandardMaterial3D_hudx1")
use_collision = true
size = Vector3(14, 10, 9.5)
num_stairs = 32
[node name="CSGBox3D2" type="CSGBox3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.98486, -9.75, 0)
material_override = SubResource("StandardMaterial3D_i5qk8")
use_collision = true
size = Vector3(5.96973, 0.1, 4.2)