build update
This commit is contained in:
@@ -1,11 +1,30 @@
|
|||||||
[gd_scene load_steps=9 format=3 uid="uid://0t0cvsitlfmm"]
|
[gd_scene load_steps=14 format=3 uid="uid://0t0cvsitlfmm"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://c61rr6to3q566" path="res://Scripts/build_object.gd" id="1_nn5da"]
|
[ext_resource type="Script" uid="uid://c61rr6to3q566" path="res://Scripts/build_object.gd" id="1_nn5da"]
|
||||||
[ext_resource type="ArrayMesh" uid="uid://cahq2fdeqqwhx" path="res://Blends/Mobel/DoubleBeds.obj" id="2_8ssp7"]
|
[ext_resource type="ArrayMesh" uid="uid://cahq2fdeqqwhx" path="res://Blends/Mobel/DoubleBeds.obj" id="2_8ssp7"]
|
||||||
[ext_resource type="Texture2D" uid="uid://84bnb4rnuhuq" path="res://Blends/Mobel/textures/double_bed_metal.png" id="3_nn5da"]
|
[ext_resource type="Texture2D" uid="uid://84bnb4rnuhuq" path="res://Blends/Mobel/textures/double_bed_metal.png" id="3_nn5da"]
|
||||||
|
[ext_resource type="Shader" uid="uid://bfv6ckihralab" path="res://Shaders/build_transparent.gdshader" id="3_pdq8c"]
|
||||||
[ext_resource type="Texture2D" uid="uid://lbbig7lpdun3" path="res://Blends/Mobel/textures/Material.003 Roughness.png" id="4_dn7et"]
|
[ext_resource type="Texture2D" uid="uid://lbbig7lpdun3" path="res://Blends/Mobel/textures/Material.003 Roughness.png" id="4_dn7et"]
|
||||||
[ext_resource type="Texture2D" uid="uid://kl1jplui8wfq" path="res://Blends/Mobel/textures/Material.003 Base Color.png" id="5_sp2kd"]
|
[ext_resource type="Texture2D" uid="uid://kl1jplui8wfq" path="res://Blends/Mobel/textures/Material.003 Base Color.png" id="5_sp2kd"]
|
||||||
|
|
||||||
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_dn7et"]
|
||||||
|
render_priority = 0
|
||||||
|
shader = ExtResource("3_pdq8c")
|
||||||
|
shader_parameter/alpha = 0.5
|
||||||
|
shader_parameter/color = Vector3(0, 1, 0)
|
||||||
|
|
||||||
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_sp2kd"]
|
||||||
|
render_priority = 0
|
||||||
|
shader = ExtResource("3_pdq8c")
|
||||||
|
shader_parameter/alpha = 0.5
|
||||||
|
shader_parameter/color = Vector3(0, 1, 0)
|
||||||
|
|
||||||
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_c1046"]
|
||||||
|
render_priority = 0
|
||||||
|
shader = ExtResource("3_pdq8c")
|
||||||
|
shader_parameter/alpha = 0.5
|
||||||
|
shader_parameter/color = Vector3(0, 1, 0)
|
||||||
|
|
||||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_c1046"]
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_c1046"]
|
||||||
albedo_texture = ExtResource("3_nn5da")
|
albedo_texture = ExtResource("3_nn5da")
|
||||||
roughness_texture = ExtResource("4_dn7et")
|
roughness_texture = ExtResource("4_dn7et")
|
||||||
@@ -16,8 +35,26 @@ albedo_texture = ExtResource("5_sp2kd")
|
|||||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_tma46"]
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_tma46"]
|
||||||
albedo_texture = ExtResource("5_sp2kd")
|
albedo_texture = ExtResource("5_sp2kd")
|
||||||
|
|
||||||
[node name="DoubleBeds" type="Node3D"]
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_k1k40"]
|
||||||
|
render_priority = 0
|
||||||
|
shader = ExtResource("3_pdq8c")
|
||||||
|
shader_parameter/alpha = 0.5
|
||||||
|
shader_parameter/color = Vector3(1, 0, 0)
|
||||||
|
|
||||||
|
[node name="DoubleBeds" type="Node3D" node_paths=PackedStringArray("meshInstance", "greenMeshInstance", "RedMeshInstance")]
|
||||||
script = ExtResource("1_nn5da")
|
script = ExtResource("1_nn5da")
|
||||||
|
meshInstance = NodePath("DoubleBeds")
|
||||||
|
greenMeshInstance = NodePath("Green_preview")
|
||||||
|
RedMeshInstance = NodePath("Red_preview")
|
||||||
|
|
||||||
|
[node name="Green_preview" type="MeshInstance3D" parent="."]
|
||||||
|
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -1.83435, 0, 0)
|
||||||
|
visible = false
|
||||||
|
mesh = ExtResource("2_8ssp7")
|
||||||
|
skeleton = NodePath("../DoubleBeds")
|
||||||
|
surface_material_override/0 = SubResource("ShaderMaterial_dn7et")
|
||||||
|
surface_material_override/1 = SubResource("ShaderMaterial_sp2kd")
|
||||||
|
surface_material_override/2 = SubResource("ShaderMaterial_c1046")
|
||||||
|
|
||||||
[node name="DoubleBeds" type="MeshInstance3D" parent="."]
|
[node name="DoubleBeds" type="MeshInstance3D" parent="."]
|
||||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -1.83435, 0, 0)
|
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -1.83435, 0, 0)
|
||||||
@@ -25,3 +62,11 @@ mesh = ExtResource("2_8ssp7")
|
|||||||
surface_material_override/0 = SubResource("StandardMaterial3D_c1046")
|
surface_material_override/0 = SubResource("StandardMaterial3D_c1046")
|
||||||
surface_material_override/1 = SubResource("StandardMaterial3D_k1k40")
|
surface_material_override/1 = SubResource("StandardMaterial3D_k1k40")
|
||||||
surface_material_override/2 = SubResource("StandardMaterial3D_tma46")
|
surface_material_override/2 = SubResource("StandardMaterial3D_tma46")
|
||||||
|
|
||||||
|
[node name="Red_preview" type="MeshInstance3D" parent="."]
|
||||||
|
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -1.83435, 0, 0)
|
||||||
|
visible = false
|
||||||
|
mesh = ExtResource("2_8ssp7")
|
||||||
|
surface_material_override/0 = SubResource("ShaderMaterial_k1k40")
|
||||||
|
surface_material_override/1 = SubResource("ShaderMaterial_k1k40")
|
||||||
|
surface_material_override/2 = SubResource("ShaderMaterial_k1k40")
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ size = Vector3(5.40002, 4.29805, 2.28394)
|
|||||||
render_priority = 0
|
render_priority = 0
|
||||||
shader = ExtResource("6_ru0md")
|
shader = ExtResource("6_ru0md")
|
||||||
shader_parameter/alpha = 0.5
|
shader_parameter/alpha = 0.5
|
||||||
|
shader_parameter/color = Vector3(0, 0, 0)
|
||||||
|
|
||||||
[node name="Cart" type="Node3D" node_paths=PackedStringArray("cartTop")]
|
[node name="Cart" type="Node3D" node_paths=PackedStringArray("cartTop")]
|
||||||
script = ExtResource("1_esjgi")
|
script = ExtResource("1_esjgi")
|
||||||
|
|||||||
@@ -1,29 +1,37 @@
|
|||||||
extends Node3D
|
extends Node3D
|
||||||
|
|
||||||
var meshInstance: MeshInstance3D
|
|
||||||
var default_materials
|
|
||||||
|
|
||||||
#var build_material
|
@export var meshInstance: MeshInstance3D
|
||||||
@onready var build_material = load("res://Shaders/build_transparent.gdshader")
|
@export var greenMeshInstance: MeshInstance3D
|
||||||
|
@export var RedMeshInstance: MeshInstance3D
|
||||||
|
|
||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
default_materials = Array()
|
|
||||||
meshInstance = $DoubleBeds
|
|
||||||
default_materials.resize(meshInstance.get_surface_override_material_count())
|
|
||||||
set_default_materials()
|
|
||||||
Global.preview_created.connect(_on_preview_create)
|
Global.preview_created.connect(_on_preview_create)
|
||||||
print(build_material)
|
Global.object_placed.connect(_on_object_placed)
|
||||||
|
|
||||||
func set_default_materials():
|
|
||||||
for i in meshInstance.get_surface_override_material_count():
|
|
||||||
default_materials[i] = meshInstance.get_surface_override_material(i)
|
|
||||||
|
|
||||||
|
|
||||||
func set_green_color():
|
func set_green_color():
|
||||||
for i in meshInstance.get_surface_override_material_count():
|
hide_mainMesh()
|
||||||
meshInstance.set_surface_override_material(i, Global.build_material)
|
greenMeshInstance.visible = true
|
||||||
|
|
||||||
|
func set_red_color():
|
||||||
|
hide_mainMesh()
|
||||||
|
RedMeshInstance.visible = true
|
||||||
|
|
||||||
|
func hide_mainMesh():
|
||||||
|
meshInstance.visible = false
|
||||||
|
|
||||||
|
func show_mainMesh():
|
||||||
|
meshInstance.visible = true
|
||||||
|
greenMeshInstance.visible = false
|
||||||
|
RedMeshInstance.visible = false
|
||||||
|
|
||||||
func _on_preview_create():
|
func _on_preview_create():
|
||||||
set_green_color()
|
set_green_color()
|
||||||
|
|
||||||
|
|
||||||
|
func _on_object_placed():
|
||||||
|
show_mainMesh()
|
||||||
|
greenMeshInstance.queue_free()
|
||||||
|
RedMeshInstance.queue_free()
|
||||||
|
|||||||
@@ -45,6 +45,7 @@ func hide_preview():
|
|||||||
func place_object():
|
func place_object():
|
||||||
is_placed = true
|
is_placed = true
|
||||||
buildTransparentPreivew.visible = false
|
buildTransparentPreivew.visible = false
|
||||||
|
Global.object_placed.emit()
|
||||||
|
|
||||||
func _on_enter_build_mode():
|
func _on_enter_build_mode():
|
||||||
if !is_placed:
|
if !is_placed:
|
||||||
@@ -52,7 +53,3 @@ func _on_enter_build_mode():
|
|||||||
func _on_exit_build_mode():
|
func _on_exit_build_mode():
|
||||||
hide_preview()
|
hide_preview()
|
||||||
buildTransparentPreivew.visible = false
|
buildTransparentPreivew.visible = false
|
||||||
|
|
||||||
func set_preview_material():
|
|
||||||
#beds
|
|
||||||
pass
|
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
extends Node3D
|
extends Node3D
|
||||||
@export var debugLabel1: Label
|
@export var debugLabel1: Label
|
||||||
@onready var build_material = load("res://Shaders/build_transparent.gdshader")
|
|
||||||
|
|
||||||
signal exit_build_mode
|
signal exit_build_mode
|
||||||
signal enter_build_mode
|
signal enter_build_mode
|
||||||
@@ -8,12 +7,11 @@ signal enter_build_mode
|
|||||||
signal preview_created
|
signal preview_created
|
||||||
signal preview_destroyed
|
signal preview_destroyed
|
||||||
|
|
||||||
|
signal object_placed
|
||||||
|
|
||||||
var build_mode: bool = false
|
var build_mode: bool = false
|
||||||
|
|
||||||
|
|
||||||
func _ready() -> void:
|
|
||||||
build_material.set("alpha", 0.5)
|
|
||||||
|
|
||||||
func _input(event: InputEvent) -> void:
|
func _input(event: InputEvent) -> void:
|
||||||
if event.is_action_released("enter_build_mode"):
|
if event.is_action_released("enter_build_mode"):
|
||||||
if build_mode:
|
if build_mode:
|
||||||
|
|||||||
@@ -1,11 +1,13 @@
|
|||||||
shader_type spatial;
|
shader_type spatial;
|
||||||
uniform float alpha;
|
uniform float alpha;
|
||||||
|
uniform vec3 color;
|
||||||
|
|
||||||
void vertex() {
|
void vertex() {
|
||||||
// Called for every vertex the material is visible on.
|
// Called for every vertex the material is visible on.
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment() {
|
void fragment() {
|
||||||
ALBEDO = vec3(0,1.0,0);
|
ALBEDO = color;
|
||||||
ALPHA = alpha;
|
ALPHA = alpha;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user