| @ -0,0 +1,9 @@ | |||||
| [gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://uex0dq00xomt"] | |||||
| [ext_resource type="Texture2D" uid="uid://li36txj7oweq" path="res://assets/textures/dirt.png" id="1_jy2vk"] | |||||
| [resource] | |||||
| albedo_texture = ExtResource("1_jy2vk") | |||||
| metallic_specular = 0.0 | |||||
| roughness = 0.0 | |||||
| texture_filter = 0 | |||||
| @ -0,0 +1,9 @@ | |||||
| [gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://cx7m27qa4ds4s"] | |||||
| [ext_resource type="Texture2D" uid="uid://ct1iawpfkdf5l" path="res://assets/textures/stone.png" id="1_vwsbh"] | |||||
| [resource] | |||||
| albedo_texture = ExtResource("1_vwsbh") | |||||
| metallic_specular = 0.0 | |||||
| roughness = 0.0 | |||||
| texture_filter = 0 | |||||
| @ -0,0 +1,34 @@ | |||||
| [remap] | |||||
| importer="texture" | |||||
| type="CompressedTexture2D" | |||||
| uid="uid://li36txj7oweq" | |||||
| path="res://.godot/imported/dirt.png-eff3bf0cf4f0b63edc466aba593ca4e6.ctex" | |||||
| metadata={ | |||||
| "vram_texture": false | |||||
| } | |||||
| [deps] | |||||
| source_file="res://assets/textures/dirt.png" | |||||
| dest_files=["res://.godot/imported/dirt.png-eff3bf0cf4f0b63edc466aba593ca4e6.ctex"] | |||||
| [params] | |||||
| compress/mode=0 | |||||
| compress/high_quality=false | |||||
| compress/lossy_quality=0.7 | |||||
| compress/hdr_compression=1 | |||||
| compress/normal_map=0 | |||||
| compress/channel_pack=0 | |||||
| mipmaps/generate=false | |||||
| mipmaps/limit=-1 | |||||
| roughness/mode=0 | |||||
| roughness/src_normal="" | |||||
| process/fix_alpha_border=true | |||||
| process/premult_alpha=false | |||||
| process/normal_map_invert_y=false | |||||
| process/hdr_as_srgb=false | |||||
| process/hdr_clamp_exposure=false | |||||
| process/size_limit=0 | |||||
| detect_3d/compress_to=0 | |||||
| @ -0,0 +1,34 @@ | |||||
| [remap] | |||||
| importer="texture" | |||||
| type="CompressedTexture2D" | |||||
| uid="uid://ct1iawpfkdf5l" | |||||
| path="res://.godot/imported/stone.png-005a59f14bd4c49707ae6ded67307167.ctex" | |||||
| metadata={ | |||||
| "vram_texture": false | |||||
| } | |||||
| [deps] | |||||
| source_file="res://assets/textures/stone.png" | |||||
| dest_files=["res://.godot/imported/stone.png-005a59f14bd4c49707ae6ded67307167.ctex"] | |||||
| [params] | |||||
| compress/mode=0 | |||||
| compress/high_quality=false | |||||
| compress/lossy_quality=0.7 | |||||
| compress/hdr_compression=1 | |||||
| compress/normal_map=0 | |||||
| compress/channel_pack=0 | |||||
| mipmaps/generate=false | |||||
| mipmaps/limit=-1 | |||||
| roughness/mode=0 | |||||
| roughness/src_normal="" | |||||
| process/fix_alpha_border=true | |||||
| process/premult_alpha=false | |||||
| process/normal_map_invert_y=false | |||||
| process/hdr_as_srgb=false | |||||
| process/hdr_clamp_exposure=false | |||||
| process/size_limit=0 | |||||
| detect_3d/compress_to=0 | |||||
| @ -0,0 +1,16 @@ | |||||
| class_name Block | |||||
| extends StaticBody3D | |||||
| @export var material: StandardMaterial3D | |||||
| @onready var block_faces: Node3D = $BlockFaces | |||||
| func _ready() -> void: | |||||
| apply_materials() | |||||
| func apply_materials() -> void: | |||||
| for face: MeshInstance3D in block_faces.get_children(): | |||||
| face.set_surface_override_material(0, material) | |||||
| @ -0,0 +1 @@ | |||||
| uid://buvqmrrtmxs2h | |||||
| @ -0,0 +1,45 @@ | |||||
| [gd_scene load_steps=4 format=3 uid="uid://col07xd76y60h"] | |||||
| [ext_resource type="Script" uid="uid://buvqmrrtmxs2h" path="res://scenes/blocks/block.gd" id="1_7fut1"] | |||||
| [sub_resource type="BoxShape3D" id="BoxShape3D_n5naa"] | |||||
| [sub_resource type="QuadMesh" id="QuadMesh_n5naa"] | |||||
| [node name="Block" type="StaticBody3D"] | |||||
| script = ExtResource("1_7fut1") | |||||
| [node name="CollisionShape3D" type="CollisionShape3D" parent="."] | |||||
| shape = SubResource("BoxShape3D_n5naa") | |||||
| [node name="BlockFaces" type="Node3D" parent="."] | |||||
| [node name="EastFace" type="MeshInstance3D" parent="BlockFaces"] | |||||
| transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0.5) | |||||
| mesh = SubResource("QuadMesh_n5naa") | |||||
| skeleton = NodePath("../..") | |||||
| [node name="WestFace" type="MeshInstance3D" parent="BlockFaces"] | |||||
| transform = Transform3D(-1, 0, 8.74228e-08, 0, 1, 0, -8.74228e-08, 0, -1, 0, 0, -0.5) | |||||
| mesh = SubResource("QuadMesh_n5naa") | |||||
| skeleton = NodePath("../..") | |||||
| [node name="NorthFace" type="MeshInstance3D" parent="BlockFaces"] | |||||
| transform = Transform3D(-1.3411e-07, 0, -1, 0, 1, 0, 1, 0, -1.3411e-07, -0.5, 0, 7.45058e-09) | |||||
| mesh = SubResource("QuadMesh_n5naa") | |||||
| skeleton = NodePath("../..") | |||||
| [node name="SouthFace" type="MeshInstance3D" parent="BlockFaces"] | |||||
| transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 0.5, 0, 0) | |||||
| mesh = SubResource("QuadMesh_n5naa") | |||||
| skeleton = NodePath("../..") | |||||
| [node name="TopFace" type="MeshInstance3D" parent="BlockFaces"] | |||||
| transform = Transform3D(1.91069e-15, -1, -4.37114e-08, -4.37114e-08, -4.37114e-08, 1, -1, 0, -4.37114e-08, 0, 0.5, 0) | |||||
| mesh = SubResource("QuadMesh_n5naa") | |||||
| skeleton = NodePath("../..") | |||||
| [node name="BottomFace" type="MeshInstance3D" parent="BlockFaces"] | |||||
| transform = Transform3D(-4.37114e-08, 1, -4.37114e-08, 0, -4.37114e-08, -1, -1, -4.37114e-08, 1.91069e-15, 0, -0.5, 0) | |||||
| mesh = SubResource("QuadMesh_n5naa") | |||||
| skeleton = NodePath("../..") | |||||