diff --git a/asset_src/models/electrics/hologram_projector_floor.blend b/asset_src/models/electrics/hologram_projector_floor.blend new file mode 100644 index 0000000..c6b6272 Binary files /dev/null and b/asset_src/models/electrics/hologram_projector_floor.blend differ diff --git a/asset_src/models/electrics/hologram_projector_glass.ptex b/asset_src/models/electrics/hologram_projector_glass.ptex new file mode 100644 index 0000000..13e3e27 --- /dev/null +++ b/asset_src/models/electrics/hologram_projector_glass.ptex @@ -0,0 +1,261 @@ +{ + "connections": [ + { + "from": "colorize", + "from_port": 0, + "to": "Material", + "to_port": 0 + }, + { + "from": "skewed_uneven_bricks_2", + "from_port": 0, + "to": "make_tileable_square", + "to_port": 0 + }, + { + "from": "make_tileable_square", + "from_port": 0, + "to": "colorize", + "to_port": 0 + }, + { + "from": "fbm3", + "from_port": 0, + "to": "make_tileable_square_2", + "to_port": 0 + }, + { + "from": "make_tileable_square_2", + "from_port": 0, + "to": "math", + "to_port": 1 + }, + { + "from": "colorize", + "from_port": 0, + "to": "colorize_2", + "to_port": 0 + }, + { + "from": "colorize_2", + "from_port": 0, + "to": "math", + "to_port": 0 + }, + { + "from": "math", + "from_port": 0, + "to": "invert", + "to_port": 0 + }, + { + "from": "invert", + "from_port": 0, + "to": "Material", + "to_port": 2 + } + ], + "label": "Graph", + "longdesc": "", + "name": "_Node_799", + "node_position": { + "x": 0.0, + "y": 0.0 + }, + "nodes": [ + { + "export_last_target": "Godot/Godot 4 Standard", + "export_paths": { + "Blender": "D:/Programms/Development/Game-Engines/Godot/Godot 4/Projects/MagicNStuff/asset_src/models/electrics/hologram_projector_glass", + "Godot/Godot 4 Standard": "D:/Programms/Development/Game-Engines/Godot/Godot 4/Projects/MagicNStuff/source/src/gameplay/props/electrics/hologram_projector/model/glass" + }, + "name": "Material", + "node_position": { + "x": 1158.208984375, + "y": -289.662231445312 + }, + "parameters": { + "albedo_color": { + "a": 1.0, + "b": 1.0, + "g": 1.0, + "r": 1.0, + "type": "Color" + }, + "ao": 1.0, + "depth_scale": 0.5, + "emission_energy": 1.0, + "flags_transparent": false, + "metallic": 1.0, + "normal": 1.0, + "roughness": 0.7, + "size": 8.0, + "sss": 1.0 + }, + "seed_int": 0, + "type": "material" + }, + { + "name": "skewed_uneven_bricks_2", + "node_position": { + "x": -397.5, + "y": -289.0 + }, + "parameters": { + "bevel": 0.0, + "columns": 6.0, + "corner": 0.3, + "mortar": 0.04, + "randomness": 0.0, + "round": 0.06, + "rows": 6.0 + }, + "seed_int": 0, + "type": "skewed_uneven_bricks" + }, + { + "name": "colorize", + "node_position": { + "x": 230.500015258789, + "y": -271.399993896484 + }, + "parameters": { + "gradient": { + "interpolation": 1, + "points": [ + { + "a": 1.0, + "b": 0.30078125, + "g": 0.30078125, + "pos": 0.0505725190839695, + "r": 0.30078125 + }, + { + "a": 1.0, + "b": 0.06640625, + "g": 0.06640625, + "pos": 0.445610687022901, + "r": 0.06640625 + } + ], + "type": "Gradient" + } + }, + "seed_int": 0, + "type": "colorize" + }, + { + "name": "fbm3", + "node_position": { + "x": 68.6030349731445, + "y": -5.20602083206177 + }, + "parameters": { + "folds": 0.0, + "iterations": 5.0, + "noise": 1.0, + "offset": 0.0, + "persistence": 0.5, + "scale_x": 16.0, + "scale_y": 13.0 + }, + "seed_int": 0, + "type": "fbm3" + }, + { + "name": "make_tileable_square", + "node_position": { + "x": -94.5, + "y": -234.0 + }, + "parameters": { + "fw": 0.2 + }, + "seed_int": 0, + "type": "make_tileable_square" + }, + { + "name": "math", + "node_position": { + "x": 639.997985839844, + "y": -80.1040115356445 + }, + "parameters": { + "clamp": false, + "default_in1": 0.0, + "default_in2": 0.0, + "op": 3.0 + }, + "seed_int": 0, + "type": "math" + }, + { + "name": "make_tileable_square_2", + "node_position": { + "x": 361.857055664062, + "y": 11.725022315979 + }, + "parameters": { + "fw": 0.47 + }, + "seed_int": 0, + "type": "make_tileable_square" + }, + { + "name": "colorize_2", + "node_position": { + "x": 367.584899902344, + "y": -176.591888427734 + }, + "parameters": { + "gradient": { + "interpolation": 0, + "points": [ + { + "a": 1.0, + "b": 0.48046875, + "g": 0.48046875, + "pos": 0, + "r": 0.48046875 + }, + { + "a": 1.0, + "b": 0.48046875, + "g": 0.48046875, + "pos": 0.173070560815243, + "r": 0.48046875 + }, + { + "a": 1.0, + "b": 0.13671875, + "g": 0.13671875, + "pos": 0.173090560815243, + "r": 0.13671875 + } + ], + "type": "Gradient" + } + }, + "seed_int": 0, + "type": "colorize" + }, + { + "name": "invert", + "node_position": { + "x": 925.055053710938, + "y": -112.261871337891 + }, + "parameters": { + + }, + "seed_int": 0, + "type": "invert" + } + ], + "parameters": { + + }, + "seed_int": 0, + "shortdesc": "", + "type": "graph" +} \ No newline at end of file diff --git a/asset_src/models/electrics/hologram_projector_glass_albedo.png b/asset_src/models/electrics/hologram_projector_glass_albedo.png new file mode 100644 index 0000000..39557ff Binary files /dev/null and b/asset_src/models/electrics/hologram_projector_glass_albedo.png differ diff --git a/asset_src/models/electrics/hologram_projector_glass_powered.ptex b/asset_src/models/electrics/hologram_projector_glass_powered.ptex new file mode 100644 index 0000000..4cd690d --- /dev/null +++ b/asset_src/models/electrics/hologram_projector_glass_powered.ptex @@ -0,0 +1,235 @@ +{ + "connections": [ + { + "from": "skewed_uneven_bricks_2", + "from_port": 0, + "to": "make_tileable_square", + "to_port": 0 + }, + { + "from": "make_tileable_square", + "from_port": 0, + "to": "colorize", + "to_port": 0 + }, + { + "from": "colorize", + "from_port": 0, + "to": "greyscale", + "to_port": 0 + }, + { + "from": "greyscale", + "from_port": 0, + "to": "colorize_2", + "to_port": 0 + }, + { + "from": "colorize_2", + "from_port": 0, + "to": "Material", + "to_port": 0 + }, + { + "from": "colorize_2", + "from_port": 0, + "to": "colorize_3", + "to_port": 0 + }, + { + "from": "colorize_3", + "from_port": 0, + "to": "Material", + "to_port": 3 + } + ], + "label": "Graph", + "longdesc": "", + "name": "_Node_799", + "node_position": { + "x": 0.0, + "y": 0.0 + }, + "nodes": [ + { + "export_last_target": "Godot/Godot 4 Standard", + "export_paths": { + "Blender": "D:/Programms/Development/Game-Engines/Godot/Godot 4/Projects/MagicNStuff/asset_src/models/electrics/hologram_projector_glass", + "Godot/Godot 4 Standard": "D:/Programms/Development/Game-Engines/Godot/Godot 4/Projects/MagicNStuff/source/src/gameplay/props/electrics/hologram_projector/model/glass_active" + }, + "name": "Material", + "node_position": { + "x": 1588.208984375, + "y": -315.662231445312 + }, + "parameters": { + "albedo_color": { + "a": 1.0, + "b": 1.0, + "g": 1.0, + "r": 1.0, + "type": "Color" + }, + "ao": 1.0, + "depth_scale": 0.5, + "emission_energy": 1.0, + "flags_transparent": false, + "metallic": 1.0, + "normal": 1.0, + "roughness": 0.7, + "size": 8.0, + "sss": 1.0 + }, + "seed_int": 0, + "type": "material" + }, + { + "name": "skewed_uneven_bricks_2", + "node_position": { + "x": -397.5, + "y": -289.0 + }, + "parameters": { + "bevel": 0.0, + "columns": 6.0, + "corner": 0.3, + "mortar": 0.04, + "randomness": 0.0, + "round": 0.06, + "rows": 6.0 + }, + "seed_int": 0, + "type": "skewed_uneven_bricks" + }, + { + "name": "colorize", + "node_position": { + "x": 230.500015258789, + "y": -271.399993896484 + }, + "parameters": { + "gradient": { + "interpolation": 1, + "points": [ + { + "a": 1.0, + "b": 0.30078125, + "g": 0.30078125, + "pos": 0.0505725190839695, + "r": 0.30078125 + }, + { + "a": 1.0, + "b": 0.06640625, + "g": 0.06640625, + "pos": 0.445610687022901, + "r": 0.06640625 + } + ], + "type": "Gradient" + } + }, + "seed_int": 0, + "type": "colorize" + }, + { + "name": "make_tileable_square", + "node_position": { + "x": -94.5, + "y": -234.0 + }, + "parameters": { + "fw": 0.2 + }, + "seed_int": 0, + "type": "make_tileable_square" + }, + { + "name": "greyscale", + "node_position": { + "x": 787.90380859375, + "y": -288.896728515625 + }, + "parameters": { + "mode": 2.0 + }, + "seed_int": 0, + "type": "greyscale" + }, + { + "name": "colorize_2", + "node_position": { + "x": 1020.0, + "y": -320.0 + }, + "parameters": { + "gradient": { + "interpolation": 1, + "points": [ + { + "a": 1.0, + "b": 1.0, + "g": 0.765625, + "pos": 0.0, + "r": 0.375 + }, + { + "a": 1.0, + "b": 0.0, + "g": 0.0, + "pos": 1.0, + "r": 0.0 + } + ], + "type": "Gradient" + } + }, + "seed_int": 0, + "type": "colorize" + }, + { + "name": "colorize_3", + "node_position": { + "x": 1206.23718261719, + "y": -251.841186523438 + }, + "parameters": { + "gradient": { + "interpolation": 0, + "points": [ + { + "a": 1.0, + "b": 0.0, + "g": 0.0, + "pos": 0, + "r": 0.0 + }, + { + "a": 1.0, + "b": 0.0, + "g": 0.0, + "pos": 0.611631221374046, + "r": 0.0 + }, + { + "a": 1.0, + "b": 1.0, + "g": 0.765625, + "pos": 0.611651221374046, + "r": 0.375 + } + ], + "type": "Gradient" + } + }, + "seed_int": 0, + "type": "colorize" + } + ], + "parameters": { + + }, + "seed_int": 0, + "shortdesc": "", + "type": "graph" +} \ No newline at end of file diff --git a/asset_src/models/electrics/hologram_projector_glass_rough.exr b/asset_src/models/electrics/hologram_projector_glass_rough.exr new file mode 100644 index 0000000..7814c58 Binary files /dev/null and b/asset_src/models/electrics/hologram_projector_glass_rough.exr differ diff --git a/source/assets/models/electrics/Glass.tres b/source/assets/models/electrics/Glass.tres new file mode 100644 index 0000000..5143097 --- /dev/null +++ b/source/assets/models/electrics/Glass.tres @@ -0,0 +1,13 @@ +[gd_resource type="StandardMaterial3D" load_steps=5 format=2] +[ext_resource path="Glass_albedo.png" type="Texture" id=1] +[ext_resource path="Glass_orm.png" type="Texture" id=2] +[resource] +albedo_color = Color(1.0, 1.0, 1.0, 1.0) +albedo_texture = ExtResource( 1 ) +metallic = 1.0 +roughness = 0.7 +roughness_texture = ExtResource( 2 ) +roughness_texture_channel = 1 + + + diff --git a/source/assets/models/electrics/Glass_albedo.png b/source/assets/models/electrics/Glass_albedo.png new file mode 100644 index 0000000..39557ff Binary files /dev/null and b/source/assets/models/electrics/Glass_albedo.png differ diff --git a/source/assets/models/electrics/Glass_albedo.png.import b/source/assets/models/electrics/Glass_albedo.png.import new file mode 100644 index 0000000..351da9e --- /dev/null +++ b/source/assets/models/electrics/Glass_albedo.png.import @@ -0,0 +1,41 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cjdn0al3k5sr1" +path.s3tc="res://.godot/imported/Glass_albedo.png-11a38e2ea0392d99b9c5666124e14317.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://assets/models/electrics/Glass_albedo.png" +dest_files=["res://.godot/imported/Glass_albedo.png-11a38e2ea0392d99b9c5666124e14317.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +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 diff --git a/source/assets/models/electrics/Glass_orm.png b/source/assets/models/electrics/Glass_orm.png new file mode 100644 index 0000000..36feab1 Binary files /dev/null and b/source/assets/models/electrics/Glass_orm.png differ diff --git a/source/assets/models/electrics/Glass_orm.png.import b/source/assets/models/electrics/Glass_orm.png.import new file mode 100644 index 0000000..70c4b4f --- /dev/null +++ b/source/assets/models/electrics/Glass_orm.png.import @@ -0,0 +1,41 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bdri3fghliji3" +path.s3tc="res://.godot/imported/Glass_orm.png-ab661433c67191ce8cc45b129ded3d93.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://assets/models/electrics/Glass_orm.png" +dest_files=["res://.godot/imported/Glass_orm.png-ab661433c67191ce8cc45b129ded3d93.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +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 diff --git a/source/assets/models/electrics/cable.tres b/source/assets/models/electrics/cable.tres new file mode 100644 index 0000000..d764bb5 --- /dev/null +++ b/source/assets/models/electrics/cable.tres @@ -0,0 +1,5 @@ +[gd_resource type="StandardMaterial3D" format=3 uid="uid://c14t1vuns51wj"] + +[resource] +albedo_color = Color(0.1148968, 0.11489681, 0.1148968, 1) +roughness = 0.85 diff --git a/source/assets/models/electrics/cable.tscn b/source/assets/models/electrics/cable.tscn new file mode 100644 index 0000000..92edf98 --- /dev/null +++ b/source/assets/models/electrics/cable.tscn @@ -0,0 +1,25 @@ +[gd_scene load_steps=3 format=3 uid="uid://cer1fv8lofop5"] + +[ext_resource type="Material" uid="uid://c14t1vuns51wj" path="res://assets/models/electrics/cable.tres" id="1_r7sii"] + +[sub_resource type="Curve3D" id="Curve3D_8p0cs"] +resource_local_to_scene = true + +[node name="Cable" type="Path3D"] +curve = SubResource("Curve3D_8p0cs") + +[node name="CableMesh" type="CSGPolygon3D" parent="."] +polygon = PackedVector2Array(-0.015, 0, 0, 0.015, 0.015, 0, 0, -0.015) +mode = 2 +path_node = NodePath("..") +path_interval_type = 0 +path_interval = 0.05 +path_simplify_angle = 0.5 +path_rotation = 2 +path_rotation_accurate = false +path_local = true +path_continuous_u = true +path_u_distance = 1.0 +path_joined = false +smooth_faces = true +material = ExtResource("1_r7sii") diff --git a/source/src/gameplay/props/electrics/hologram_projector/hologram_projector_floor.gd b/source/src/gameplay/props/electrics/hologram_projector/hologram_projector_floor.gd new file mode 100644 index 0000000..596ca15 --- /dev/null +++ b/source/src/gameplay/props/electrics/hologram_projector/hologram_projector_floor.gd @@ -0,0 +1,22 @@ +class_name HologramProjectorFloor +extends Node3D + +@export var active: bool = false: set = set_glowing + +@export_group("Materials") +@export var powered_material: Material = preload("model/glass_powered.tres") +@export var override_surface_index: int = 1 +@export var projector_mesh: MeshInstance3D + +@onready var glow_mesh: MeshInstance3D = $GlowMesh + + +func _ready() -> void: + set_glowing(false) + + +func set_glowing(value: bool) -> void: + active = value + var material: Material = powered_material if value else null + projector_mesh.set_surface_override_material(override_surface_index, material) + glow_mesh.visible = value diff --git a/source/src/gameplay/props/electrics/hologram_projector/hologram_projector_floor.gd.uid b/source/src/gameplay/props/electrics/hologram_projector/hologram_projector_floor.gd.uid new file mode 100644 index 0000000..6159481 --- /dev/null +++ b/source/src/gameplay/props/electrics/hologram_projector/hologram_projector_floor.gd.uid @@ -0,0 +1 @@ +uid://c6j42r4fsxiha diff --git a/source/src/gameplay/props/electrics/hologram_projector/hologram_projector_floor.tscn b/source/src/gameplay/props/electrics/hologram_projector/hologram_projector_floor.tscn new file mode 100644 index 0000000..7e48250 --- /dev/null +++ b/source/src/gameplay/props/electrics/hologram_projector/hologram_projector_floor.tscn @@ -0,0 +1,42 @@ +[gd_scene load_steps=7 format=3 uid="uid://k3edwxkml8dd"] + +[ext_resource type="Script" uid="uid://c6j42r4fsxiha" path="res://src/gameplay/props/electrics/hologram_projector/hologram_projector_floor.gd" id="1_0n826"] +[ext_resource type="PackedScene" uid="uid://dlyy375sgb4m2" path="res://src/gameplay/props/electrics/hologram_projector/model/hologram_projector_floor.glb" id="2_xkimn"] + +[sub_resource type="Gradient" id="Gradient_0n826"] +interpolation_mode = 2 +offsets = PackedFloat32Array(0.25420874, 0.34175083, 0.503367) +colors = PackedColorArray(1, 1, 1, 0, 1, 1, 1, 0.86718756, 1, 1, 1, 0) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_tek7r"] +gradient = SubResource("Gradient_0n826") +width = 1 +fill_from = Vector2(0, 1) + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_xkimn"] +transparency = 4 +cull_mode = 2 +shading_mode = 0 +disable_ambient_light = true +albedo_color = Color(0.4738321, 1.353256, 1.353256, 0.21568628) +albedo_texture = SubResource("GradientTexture2D_tek7r") + +[sub_resource type="CylinderMesh" id="CylinderMesh_hg5uv"] +top_radius = 1.0 +bottom_radius = 0.15 +rings = 0 +cap_top = false +cap_bottom = false + +[node name="HologramProjectorFloor" type="Node3D" node_paths=PackedStringArray("projector_mesh")] +script = ExtResource("1_0n826") +projector_mesh = NodePath("ProjectorModel/Projector") + +[node name="ProjectorModel" parent="." instance=ExtResource("2_xkimn")] + +[node name="GlowMesh" type="MeshInstance3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) +material_override = SubResource("StandardMaterial3D_xkimn") +mesh = SubResource("CylinderMesh_hg5uv") + +[editable path="ProjectorModel"] diff --git a/source/src/gameplay/props/electrics/hologram_projector/model/glass.tres b/source/src/gameplay/props/electrics/hologram_projector/model/glass.tres new file mode 100644 index 0000000..29c335e --- /dev/null +++ b/source/src/gameplay/props/electrics/hologram_projector/model/glass.tres @@ -0,0 +1,11 @@ +[gd_resource type="StandardMaterial3D" load_steps=3 format=3 uid="uid://0flhh6x31lm"] + +[ext_resource type="Texture2D" uid="uid://4o14cgnq50tf" path="res://src/gameplay/props/electrics/hologram_projector/model/glass_albedo.png" id="1"] +[ext_resource type="Texture2D" uid="uid://d4miapi6rxu6" path="res://src/gameplay/props/electrics/hologram_projector/model/glass_orm.png" id="2"] + +[resource] +albedo_texture = ExtResource("1") +metallic = 1.0 +roughness = 0.7 +roughness_texture = ExtResource("2") +roughness_texture_channel = 1 diff --git a/source/src/gameplay/props/electrics/hologram_projector/model/glass_albedo.png b/source/src/gameplay/props/electrics/hologram_projector/model/glass_albedo.png new file mode 100644 index 0000000..39557ff Binary files /dev/null and b/source/src/gameplay/props/electrics/hologram_projector/model/glass_albedo.png differ diff --git a/source/src/gameplay/props/electrics/hologram_projector/model/glass_albedo.png.import b/source/src/gameplay/props/electrics/hologram_projector/model/glass_albedo.png.import new file mode 100644 index 0000000..7be43d5 --- /dev/null +++ b/source/src/gameplay/props/electrics/hologram_projector/model/glass_albedo.png.import @@ -0,0 +1,41 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://4o14cgnq50tf" +path.s3tc="res://.godot/imported/glass_albedo.png-d294b0b28cf143b6f113fee8f11ab478.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://src/gameplay/props/electrics/hologram_projector/model/glass_albedo.png" +dest_files=["res://.godot/imported/glass_albedo.png-d294b0b28cf143b6f113fee8f11ab478.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +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 diff --git a/source/src/gameplay/props/electrics/hologram_projector/model/glass_orm.png b/source/src/gameplay/props/electrics/hologram_projector/model/glass_orm.png new file mode 100644 index 0000000..be4b2f1 Binary files /dev/null and b/source/src/gameplay/props/electrics/hologram_projector/model/glass_orm.png differ diff --git a/source/src/gameplay/props/electrics/hologram_projector/model/glass_orm.png.import b/source/src/gameplay/props/electrics/hologram_projector/model/glass_orm.png.import new file mode 100644 index 0000000..b66cda2 --- /dev/null +++ b/source/src/gameplay/props/electrics/hologram_projector/model/glass_orm.png.import @@ -0,0 +1,41 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d4miapi6rxu6" +path.s3tc="res://.godot/imported/glass_orm.png-86a3901eb585eb7ea0e0aedb4d6362e1.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://src/gameplay/props/electrics/hologram_projector/model/glass_orm.png" +dest_files=["res://.godot/imported/glass_orm.png-86a3901eb585eb7ea0e0aedb4d6362e1.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +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 diff --git a/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered.tres b/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered.tres new file mode 100644 index 0000000..653f195 --- /dev/null +++ b/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered.tres @@ -0,0 +1,12 @@ +[gd_resource type="StandardMaterial3D" load_steps=4 format=3 uid="uid://dsvaigjgpnym8"] + +[ext_resource type="Texture2D" uid="uid://duurnt41nf6r3" path="res://src/gameplay/props/electrics/hologram_projector/model/glass_powered_albedo.png" id="1"] +[ext_resource type="Texture2D" uid="uid://d4miapi6rxu6" path="res://src/gameplay/props/electrics/hologram_projector/model/glass_orm.png" id="3_aas0i"] +[ext_resource type="Texture2D" uid="uid://d0xioyj6wpk5t" path="res://src/gameplay/props/electrics/hologram_projector/model/glass_powered_emission.png" id="5"] + +[resource] +albedo_texture = ExtResource("1") +metallic = 1.0 +roughness_texture = ExtResource("3_aas0i") +emission_enabled = true +emission_texture = ExtResource("5") diff --git a/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered_albedo.png b/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered_albedo.png new file mode 100644 index 0000000..29711d6 Binary files /dev/null and b/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered_albedo.png differ diff --git a/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered_albedo.png.import b/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered_albedo.png.import new file mode 100644 index 0000000..231e46d --- /dev/null +++ b/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered_albedo.png.import @@ -0,0 +1,41 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://duurnt41nf6r3" +path.s3tc="res://.godot/imported/glass_powered_albedo.png-71bc4371d5afd012446f4b5b550fc73a.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://src/gameplay/props/electrics/hologram_projector/model/glass_powered_albedo.png" +dest_files=["res://.godot/imported/glass_powered_albedo.png-71bc4371d5afd012446f4b5b550fc73a.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +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 diff --git a/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered_emission.png b/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered_emission.png new file mode 100644 index 0000000..62d8019 Binary files /dev/null and b/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered_emission.png differ diff --git a/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered_emission.png.import b/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered_emission.png.import new file mode 100644 index 0000000..1c098fb --- /dev/null +++ b/source/src/gameplay/props/electrics/hologram_projector/model/glass_powered_emission.png.import @@ -0,0 +1,41 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d0xioyj6wpk5t" +path.s3tc="res://.godot/imported/glass_powered_emission.png-756b911d0049184d27da7ff7a6da9ec3.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://src/gameplay/props/electrics/hologram_projector/model/glass_powered_emission.png" +dest_files=["res://.godot/imported/glass_powered_emission.png-756b911d0049184d27da7ff7a6da9ec3.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +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 diff --git a/source/src/gameplay/props/electrics/hologram_projector/model/hologram_projector_floor.glb b/source/src/gameplay/props/electrics/hologram_projector/model/hologram_projector_floor.glb new file mode 100644 index 0000000..913a54c Binary files /dev/null and b/source/src/gameplay/props/electrics/hologram_projector/model/hologram_projector_floor.glb differ diff --git a/source/src/gameplay/props/electrics/hologram_projector/model/hologram_projector_floor.glb.import b/source/src/gameplay/props/electrics/hologram_projector/model/hologram_projector_floor.glb.import new file mode 100644 index 0000000..f236356 --- /dev/null +++ b/source/src/gameplay/props/electrics/hologram_projector/model/hologram_projector_floor.glb.import @@ -0,0 +1,55 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://dlyy375sgb4m2" +path="res://.godot/imported/hologram_projector_floor.glb-991e68289f534a679c8126a320c5fe46.scn" + +[deps] + +source_file="res://src/gameplay/props/electrics/hologram_projector/model/hologram_projector_floor.glb" +dest_files=["res://.godot/imported/hologram_projector_floor.glb-991e68289f534a679c8126a320c5fe46.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"base": { +"use_external/enabled": false, +"use_external/fallback_path": "res://src/gameplay/props/electrics/hologram_projector/model/base.tres", +"use_external/path": "uid://bpm7jw1i152wa" +}, +"glass": { +"use_external/enabled": true, +"use_external/fallback_path": "res://src/gameplay/props/electrics/hologram_projector/model/glass.tres", +"use_external/path": "uid://0flhh6x31lm" +} +} +} +gltf/naming_version=2 +gltf/embedded_image_handling=0 diff --git a/source/src/levels/levels/entrance_hall.tscn b/source/src/levels/levels/entrance_hall.tscn index 3004350..ac4caf7 100644 --- a/source/src/levels/levels/entrance_hall.tscn +++ b/source/src/levels/levels/entrance_hall.tscn @@ -1,10 +1,13 @@ -[gd_scene load_steps=8 format=3 uid="uid://cmdy6f6kesmbj"] +[gd_scene load_steps=12 format=3 uid="uid://cmdy6f6kesmbj"] [ext_resource type="Script" uid="uid://cigop0ivp5vvu" path="res://src/core/level/level.gd" id="1_s41bt"] [ext_resource type="Script" uid="uid://dk4pqgs08xphi" path="res://src/core/camera/camera_trauma_causer.gd" id="2_ht7mm"] [ext_resource type="Material" uid="uid://c38215ysnknyk" path="res://assets/materials/dev/dark/dark_01.tres" id="3_8clfj"] [ext_resource type="PackedScene" uid="uid://c0jearfhlqcvr" path="res://src/gameplay/hazards/saw/saw.tscn" id="4_jdv38"] +[ext_resource type="Material" uid="uid://bahys2ntbh2ap" path="res://assets/materials/dev/orange/orange_01.tres" id="4_ppsfm"] [ext_resource type="PackedScene" uid="uid://u56f1ks46ob6" path="res://src/gameplay/hazards/saw/saw.blend" id="5_y0n8k"] +[ext_resource type="PackedScene" uid="uid://cer1fv8lofop5" path="res://assets/models/electrics/cable.tscn" id="6_bsmr2"] +[ext_resource type="PackedScene" uid="uid://k3edwxkml8dd" path="res://src/gameplay/props/electrics/hologram_projector/hologram_projector_floor.tscn" id="8_ppsfm"] [sub_resource type="Environment" id="Environment_ht7mm"] ambient_light_source = 2 @@ -16,7 +19,15 @@ glow_enabled = true height = 2.75 radius = 0.8 -[node name="OutsideArea" type="Node3D"] +[sub_resource type="Curve3D" id="Curve3D_bsmr2"] +resource_local_to_scene = true +_data = { +"points": PackedVector3Array(1, 0, 0, -1, 0, 0, 0, 0, 0, 0.4, 0, -0.6, -0.4, 0, 0.6, -2.15, 0, 2.935, 0.1, 0, -0.6, -0.1, 0, 0.6, -4.358, 0, 4.187, 0.5, 0, -0.5, 0.5, 0, 0.5, -3.9699998, 0, 7.9750004, -0.4, 0, -0.3, 0.4, 0, 0.3, -2.929, 0, 9.889, -0.1, 0, -0.6, 0.1, 0, 0.6, -0.96700007, 0, 11.043999), +"tilts": PackedFloat32Array(0, 0, 0, 0, 0, 0) +} +point_count = 6 + +[node name="EntranceHall" type="Node3D"] script = ExtResource("1_s41bt") metadata/_custom_type_script = "uid://cigop0ivp5vvu" @@ -86,11 +97,16 @@ transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0.49 size = Vector3(31, 14, 1) material = ExtResource("3_8clfj") -[node name="CSGBox3D9" type="CSGBox3D" parent="Blockout/Outline"] +[node name="Floor" type="CSGBox3D" parent="Blockout/Outline"] transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0.49999782, -0.5, 22) size = Vector3(33, 1, 27) material = ExtResource("3_8clfj") +[node name="FloorCableHightlight" type="CSGBox3D" parent="Blockout/Outline"] +transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, -2.000002, -0.5, 24.5) +size = Vector3(6, 1, 12) +material = ExtResource("4_ppsfm") + [node name="CSGBox3D10" type="CSGBox3D" parent="Blockout/Outline"] transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0.49999782, 14.5, 22) size = Vector3(33, 1, 27) @@ -177,7 +193,7 @@ transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -5, 0. transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -1, 0.5, 23) [node name="SawSkin" parent="Gameplay/Hazards/Saw7" index="0"] -transform = Transform3D(-0.83029896, -0.4343731, 0, 0.4343731, -0.83029896, 0, 0, 0, 1, 0, 0, 0) +transform = Transform3D(0.31371143, 0.87682027, 0, -0.87682027, 0.31371143, 0, 0, 0, 1, 0, 0, 0) [node name="SawSkin2" parent="Gameplay/Hazards/Saw7/SawSkin" index="1" instance=ExtResource("5_y0n8k")] transform = Transform3D(0.907697, -0.41963, -2.22045e-16, 0.41963, 0.907697, 0, -3.55271e-15, -3.55271e-15, 1, 0, 0, 0.0999999) @@ -267,4 +283,17 @@ transform = Transform3D(1.00001, 0.00207399, -1.06581e-14, -0.00207399, 1.00001, transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 5.96046e-08, 1.275) shape = SubResource("CylinderShape3D_bsmr2") +[node name="Cable" parent="." instance=ExtResource("6_bsmr2")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 19) +curve = SubResource("Curve3D_bsmr2") + +[node name="HologramProjectorFloor" parent="." instance=ExtResource("8_ppsfm")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 19) + +[node name="HologramProjectorFloor2" parent="." instance=ExtResource("8_ppsfm")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 0, 27) + +[node name="HologramProjectorFloor3" parent="." instance=ExtResource("8_ppsfm")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0, 30) + [editable path="Gameplay/Hazards/Saw7"] diff --git a/source/src/levels/levels/outside_area.tscn b/source/src/levels/levels/outside_area.tscn index 0677ea0..87858ba 100644 --- a/source/src/levels/levels/outside_area.tscn +++ b/source/src/levels/levels/outside_area.tscn @@ -4,12 +4,10 @@ [ext_resource type="Material" uid="uid://bahys2ntbh2ap" path="res://assets/materials/dev/orange/orange_01.tres" id="2_gpfgd"] [ext_resource type="Material" uid="uid://c38215ysnknyk" path="res://assets/materials/dev/dark/dark_01.tres" id="3_ccf7j"] -[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_f7x8u"] -sky_horizon_color = Color(0.66224277, 0.6717428, 0.6867428, 1) -ground_horizon_color = Color(0.66224277, 0.6717428, 0.6867428, 1) +[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_k31xi"] [sub_resource type="Sky" id="Sky_gpfgd"] -sky_material = SubResource("ProceduralSkyMaterial_f7x8u") +sky_material = SubResource("ProceduralSkyMaterial_k31xi") [sub_resource type="Environment" id="Environment_ccf7j"] background_mode = 2