diff --git a/asset_dev/beast/slutch/FaceNodule.png b/asset_dev/beast/slutch/FaceNodule.png new file mode 100644 index 0000000..0e93309 --- /dev/null +++ b/asset_dev/beast/slutch/FaceNodule.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb0d549d92c18cdef56390a544ad2d5c81268cb85d87989da47b0e3f81a184c8 +size 12471 diff --git a/asset_dev/beast/slutch/face_nodule.xcf b/asset_dev/beast/slutch/face_nodule.xcf new file mode 100644 index 0000000..f35433f Binary files /dev/null and b/asset_dev/beast/slutch/face_nodule.xcf differ diff --git a/asset_dev/beast/slutch/slutch.blend b/asset_dev/beast/slutch/slutch.blend index 432ce6e..68898a9 100644 Binary files a/asset_dev/beast/slutch/slutch.blend and b/asset_dev/beast/slutch/slutch.blend differ diff --git a/asset_dev/beast/slutch/slutch.blend1 b/asset_dev/beast/slutch/slutch.blend1 index 0a9bb56..a119c12 100644 Binary files a/asset_dev/beast/slutch/slutch.blend1 and b/asset_dev/beast/slutch/slutch.blend1 differ diff --git a/assets/npc/slutch_beast/face_nodule_C.png b/assets/npc/slutch_beast/face_nodule_C.png new file mode 100644 index 0000000..cd42936 --- /dev/null +++ b/assets/npc/slutch_beast/face_nodule_C.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e8438fd43c5a36e9f0bab63c9ee43fe7f449473cae4acdf77e467a59ba13a9c +size 2275 diff --git a/assets/npc/slutch_beast/face_nodule_C.png.import b/assets/npc/slutch_beast/face_nodule_C.png.import new file mode 100644 index 0000000..92ed04c --- /dev/null +++ b/assets/npc/slutch_beast/face_nodule_C.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://brxgmw1unyfua" +path="res://.godot/imported/face_nodule_C.png-f0456555c8a80df72a1ad3eec879d8ed.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/npc/slutch_beast/face_nodule_C.png" +dest_files=["res://.godot/imported/face_nodule_C.png-f0456555c8a80df72a1ad3eec879d8ed.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 diff --git a/assets/npc/slutch_beast/face_nodule_E.png b/assets/npc/slutch_beast/face_nodule_E.png new file mode 100644 index 0000000..27a166d --- /dev/null +++ b/assets/npc/slutch_beast/face_nodule_E.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e5073910a29e1c2a93730cf9b4b640c97750606f552c7550cdff34e1ebe6705 +size 3037 diff --git a/assets/npc/slutch_beast/face_nodule_E.png.import b/assets/npc/slutch_beast/face_nodule_E.png.import new file mode 100644 index 0000000..1c83936 --- /dev/null +++ b/assets/npc/slutch_beast/face_nodule_E.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://db5pw3nw0h2wy" +path="res://.godot/imported/face_nodule_E.png-11b302d9c67a4f0f49ba07c23dad2b42.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/npc/slutch_beast/face_nodule_E.png" +dest_files=["res://.godot/imported/face_nodule_E.png-11b302d9c67a4f0f49ba07c23dad2b42.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 diff --git a/assets/npc/slutch_beast/slutch.bin b/assets/npc/slutch_beast/slutch.bin index d06d364..add4195 100644 Binary files a/assets/npc/slutch_beast/slutch.bin and b/assets/npc/slutch_beast/slutch.bin differ diff --git a/assets/npc/slutch_beast/slutch.gltf b/assets/npc/slutch_beast/slutch.gltf index aaa16d2..51b8b4d 100644 --- a/assets/npc/slutch_beast/slutch.gltf +++ b/assets/npc/slutch_beast/slutch.gltf @@ -8,7 +8,14 @@ { "name":"Scene", "nodes":[ - 0 + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 ] } ], @@ -16,6 +23,69 @@ { "mesh":0, "name":"Slutch" + }, + { + "mesh":1, + "name":"FaceNodule", + "translation":[ + -0.25755488872528076, + 1.3063514232635498, + -0.29665297269821167 + ] + }, + { + "mesh":2, + "name":"Nodule.001", + "translation":[ + 0.3235247731208801, + 0.9696184992790222, + 0.08157177269458771 + ] + }, + { + "mesh":3, + "name":"Nodule.002", + "translation":[ + -0.025791287422180176, + 0.6830007433891296, + 0.010160116478800774 + ] + }, + { + "mesh":4, + "name":"Nodule.003", + "translation":[ + -0.41702041029930115, + 0.8321946859359741, + 0.32163435220718384 + ] + }, + { + "mesh":5, + "name":"Nodule.004", + "translation":[ + 0.5003674030303955, + 1.2441285848617554, + -0.20342206954956055 + ] + }, + { + "mesh":6, + "name":"Nodule.005", + "translation":[ + 0.3826490342617035, + 1.4056977033615112, + 0.16940319538116455 + ] + }, + { + "mesh":7, + "name":"Nodule", + "translation":[ + 0.4212178587913513, + 0.9415113925933838, + -0.502720057964325 + ] } ], "meshes":[ @@ -31,13 +101,104 @@ "indices":3 } ] + }, + { + "name":"FaceNodule", + "primitives":[ + { + "attributes":{ + "POSITION":4, + "NORMAL":5, + "TEXCOORD_0":6 + }, + "indices":7 + } + ] + }, + { + "name":"Nodule.001", + "primitives":[ + { + "attributes":{ + "POSITION":8, + "NORMAL":9, + "TEXCOORD_0":10 + }, + "indices":11 + } + ] + }, + { + "name":"Nodule.002", + "primitives":[ + { + "attributes":{ + "POSITION":12, + "NORMAL":13, + "TEXCOORD_0":14 + }, + "indices":15 + } + ] + }, + { + "name":"Nodule.003", + "primitives":[ + { + "attributes":{ + "POSITION":16, + "NORMAL":17, + "TEXCOORD_0":18 + }, + "indices":19 + } + ] + }, + { + "name":"Nodule.004", + "primitives":[ + { + "attributes":{ + "POSITION":20, + "NORMAL":21, + "TEXCOORD_0":22 + }, + "indices":23 + } + ] + }, + { + "name":"Nodule.005", + "primitives":[ + { + "attributes":{ + "POSITION":24, + "NORMAL":25, + "TEXCOORD_0":26 + }, + "indices":27 + } + ] + }, + { + "name":"Nodule", + "primitives":[ + { + "attributes":{ + "POSITION":28, + "NORMAL":29, + "TEXCOORD_0":30 + }, + "indices":31 + } + ] } ], "accessors":[ { "bufferView":0, "componentType":5126, - "count":312, + "count":326, "max":[ 1.618986964225769, 2.0478501319885254, @@ -53,51 +214,457 @@ { "bufferView":1, "componentType":5126, - "count":312, + "count":326, "type":"VEC3" }, { "bufferView":2, "componentType":5126, - "count":312, + "count":326, "type":"VEC2" }, { "bufferView":3, "componentType":5123, - "count":324, + "count":330, + "type":"SCALAR" + }, + { + "bufferView":4, + "componentType":5126, + "count":174, + "max":[ + 0.23762282729148865, + 0.20167696475982666, + 0.18547290563583374 + ], + "min":[ + -0.2717793583869934, + -0.3451462388038635, + -0.32205337285995483 + ], + "type":"VEC3" + }, + { + "bufferView":5, + "componentType":5126, + "count":174, + "type":"VEC3" + }, + { + "bufferView":6, + "componentType":5126, + "count":174, + "type":"VEC2" + }, + { + "bufferView":7, + "componentType":5123, + "count":180, + "type":"SCALAR" + }, + { + "bufferView":8, + "componentType":5126, + "count":60, + "max":[ + 0.2022053599357605, + 0.16918832063674927, + 0.19656305015087128 + ], + "min":[ + -0.2022053450345993, + -0.16918843984603882, + -0.19656309485435486 + ], + "type":"VEC3" + }, + { + "bufferView":9, + "componentType":5126, + "count":60, + "type":"VEC3" + }, + { + "bufferView":10, + "componentType":5126, + "count":60, + "type":"VEC2" + }, + { + "bufferView":11, + "componentType":5123, + "count":60, + "type":"SCALAR" + }, + { + "bufferView":12, + "componentType":5126, + "count":60, + "max":[ + 0.27359873056411743, + 0.26625341176986694, + 0.23749792575836182 + ], + "min":[ + -0.27359873056411743, + -0.2662535011768341, + -0.23749792575836182 + ], + "type":"VEC3" + }, + { + "bufferView":13, + "componentType":5126, + "count":60, + "type":"VEC3" + }, + { + "bufferView":14, + "componentType":5126, + "count":60, + "type":"VEC2" + }, + { + "bufferView":15, + "componentType":5123, + "count":60, + "type":"SCALAR" + }, + { + "bufferView":16, + "componentType":5126, + "count":60, + "max":[ + 0.16585636138916016, + 0.1689516305923462, + 0.17375069856643677 + ], + "min":[ + -0.16585639119148254, + -0.16895174980163574, + -0.17375071346759796 + ], + "type":"VEC3" + }, + { + "bufferView":17, + "componentType":5126, + "count":60, + "type":"VEC3" + }, + { + "bufferView":18, + "componentType":5126, + "count":60, + "type":"VEC2" + }, + { + "bufferView":19, + "componentType":5123, + "count":60, + "type":"SCALAR" + }, + { + "bufferView":20, + "componentType":5126, + "count":60, + "max":[ + 0.07109105587005615, + 0.062039852142333984, + 0.06739750504493713 + ], + "min":[ + -0.07109105587005615, + -0.062039852142333984, + -0.06739750504493713 + ], + "type":"VEC3" + }, + { + "bufferView":21, + "componentType":5126, + "count":60, + "type":"VEC3" + }, + { + "bufferView":22, + "componentType":5126, + "count":60, + "type":"VEC2" + }, + { + "bufferView":23, + "componentType":5123, + "count":60, + "type":"SCALAR" + }, + { + "bufferView":24, + "componentType":5126, + "count":60, + "max":[ + 0.0909624993801117, + 0.07769286632537842, + 0.08200663328170776 + ], + "min":[ + -0.09096261858940125, + -0.07769310474395752, + -0.08200664073228836 + ], + "type":"VEC3" + }, + { + "bufferView":25, + "componentType":5126, + "count":60, + "type":"VEC3" + }, + { + "bufferView":26, + "componentType":5126, + "count":60, + "type":"VEC2" + }, + { + "bufferView":27, + "componentType":5123, + "count":60, + "type":"SCALAR" + }, + { + "bufferView":28, + "componentType":5126, + "count":60, + "max":[ + 0.1606079339981079, + 0.14889538288116455, + 0.1551172137260437 + ], + "min":[ + -0.1606079339981079, + -0.14889538288116455, + -0.15511709451675415 + ], + "type":"VEC3" + }, + { + "bufferView":29, + "componentType":5126, + "count":60, + "type":"VEC3" + }, + { + "bufferView":30, + "componentType":5126, + "count":60, + "type":"VEC2" + }, + { + "bufferView":31, + "componentType":5123, + "count":60, "type":"SCALAR" } ], "bufferViews":[ { "buffer":0, - "byteLength":3744, + "byteLength":3912, "byteOffset":0, "target":34962 }, { "buffer":0, - "byteLength":3744, - "byteOffset":3744, + "byteLength":3912, + "byteOffset":3912, "target":34962 }, { "buffer":0, - "byteLength":2496, - "byteOffset":7488, + "byteLength":2608, + "byteOffset":7824, "target":34962 }, { "buffer":0, - "byteLength":648, - "byteOffset":9984, + "byteLength":660, + "byteOffset":10432, + "target":34963 + }, + { + "buffer":0, + "byteLength":2088, + "byteOffset":11092, + "target":34962 + }, + { + "buffer":0, + "byteLength":2088, + "byteOffset":13180, + "target":34962 + }, + { + "buffer":0, + "byteLength":1392, + "byteOffset":15268, + "target":34962 + }, + { + "buffer":0, + "byteLength":360, + "byteOffset":16660, + "target":34963 + }, + { + "buffer":0, + "byteLength":720, + "byteOffset":17020, + "target":34962 + }, + { + "buffer":0, + "byteLength":720, + "byteOffset":17740, + "target":34962 + }, + { + "buffer":0, + "byteLength":480, + "byteOffset":18460, + "target":34962 + }, + { + "buffer":0, + "byteLength":120, + "byteOffset":18940, + "target":34963 + }, + { + "buffer":0, + "byteLength":720, + "byteOffset":19060, + "target":34962 + }, + { + "buffer":0, + "byteLength":720, + "byteOffset":19780, + "target":34962 + }, + { + "buffer":0, + "byteLength":480, + "byteOffset":20500, + "target":34962 + }, + { + "buffer":0, + "byteLength":120, + "byteOffset":20980, + "target":34963 + }, + { + "buffer":0, + "byteLength":720, + "byteOffset":21100, + "target":34962 + }, + { + "buffer":0, + "byteLength":720, + "byteOffset":21820, + "target":34962 + }, + { + "buffer":0, + "byteLength":480, + "byteOffset":22540, + "target":34962 + }, + { + "buffer":0, + "byteLength":120, + "byteOffset":23020, + "target":34963 + }, + { + "buffer":0, + "byteLength":720, + "byteOffset":23140, + "target":34962 + }, + { + "buffer":0, + "byteLength":720, + "byteOffset":23860, + "target":34962 + }, + { + "buffer":0, + "byteLength":480, + "byteOffset":24580, + "target":34962 + }, + { + "buffer":0, + "byteLength":120, + "byteOffset":25060, + "target":34963 + }, + { + "buffer":0, + "byteLength":720, + "byteOffset":25180, + "target":34962 + }, + { + "buffer":0, + "byteLength":720, + "byteOffset":25900, + "target":34962 + }, + { + "buffer":0, + "byteLength":480, + "byteOffset":26620, + "target":34962 + }, + { + "buffer":0, + "byteLength":120, + "byteOffset":27100, + "target":34963 + }, + { + "buffer":0, + "byteLength":720, + "byteOffset":27220, + "target":34962 + }, + { + "buffer":0, + "byteLength":720, + "byteOffset":27940, + "target":34962 + }, + { + "buffer":0, + "byteLength":480, + "byteOffset":28660, + "target":34962 + }, + { + "buffer":0, + "byteLength":120, + "byteOffset":29140, "target":34963 } ], "buffers":[ { - "byteLength":10632, + "byteLength":29260, "uri":"slutch.bin" } ] diff --git a/levels/ghost_ship/ghost_ship.tscn b/levels/ghost_ship/ghost_ship.tscn index e08ea64..fccf5a1 100644 --- a/levels/ghost_ship/ghost_ship.tscn +++ b/levels/ghost_ship/ghost_ship.tscn @@ -1,7 +1,7 @@ [gd_scene load_steps=21 format=3 uid="uid://bov4ok76woyc"] [ext_resource type="PackedScene" uid="uid://crydi5cjgfwe5" path="res://levels/ghost_ship/ghost_ship_level.tscn" id="1_aj2m7"] -[ext_resource type="Environment" uid="uid://c6xficnihju5t" path="res://levels/ghost_ship/debug_environment.tres" id="1_h081y"] +[ext_resource type="Environment" uid="uid://bkvij3ljl5ox3" path="res://levels/ghost_ship/environment_3.tres" id="1_h081y"] [ext_resource type="PackedScene" uid="uid://bwe2jdmvinhqd" path="res://src/player/player.tscn" id="2_0ef5p"] [ext_resource type="PackedScene" uid="uid://d1kacn4b60ucy" path="res://src/ui/post_processing.tscn" id="3_o7mxe"] [ext_resource type="AudioStream" uid="uid://dx4d8a3mgpws" path="res://assets/sfx/ambient/drone_loop.wav" id="5_ejh2c"] diff --git a/levels/ghost_ship/player_ship/player_ship.tscn b/levels/ghost_ship/player_ship/player_ship.tscn index 319c820..1e159ee 100644 --- a/levels/ghost_ship/player_ship/player_ship.tscn +++ b/levels/ghost_ship/player_ship/player_ship.tscn @@ -92,6 +92,7 @@ shader_parameter/jitter_time_scale = 0.1 shader_parameter/jitter_noise = SubResource("NoiseTexture3D_omayi") shader_parameter/vertex_inflation = 0.0 shader_parameter/inflation_pixellation = 10.0 +shader_parameter/overlay_emission_scale = 1.0 [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_i4yi7"] albedo_color = Color(0.243137, 0.231373, 0.219608, 1) diff --git a/levels/mechanic_test/mechanic_test.tscn b/levels/mechanic_test/mechanic_test.tscn index 0842ff1..452e055 100644 --- a/levels/mechanic_test/mechanic_test.tscn +++ b/levels/mechanic_test/mechanic_test.tscn @@ -125,6 +125,7 @@ shader_parameter/jitter_magnitude = 0.0 shader_parameter/jitter_time_scale = 0.1 shader_parameter/vertex_inflation = 0.0 shader_parameter/inflation_pixellation = 10.0 +shader_parameter/overlay_emission_scale = 1.0 [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_qjnj2"] data = PackedVector3Array(-1.5, 0, -6, -1.5, 0, 6, -1.5, 3, -6, -1.5, 3, -6, -1.5, 0, 6, -1.5, 3, 6, 1.5, 0, 6, 1.5, 0, -6, 1.5, 3, 6, 1.5, 3, 6, 1.5, 0, -6, 1.5, 3, -6, -1.5, 0, 6, -1.5, 0, -6, 1.5, 0, 6, 1.5, 0, 6, -1.5, 0, -6, 1.5, 0, -6, 1.5, 3, 6, 1.5, 3, -6, -1.5, 3, 6, -1.5, 3, 6, 1.5, 3, -6, -1.5, 3, -6) diff --git a/levels/mechanic_test/signal_test.tscn b/levels/mechanic_test/signal_test.tscn index d20e5d8..59fcb78 100644 --- a/levels/mechanic_test/signal_test.tscn +++ b/levels/mechanic_test/signal_test.tscn @@ -96,6 +96,7 @@ shader_parameter/jitter_magnitude = 0.0 shader_parameter/jitter_time_scale = 0.1 shader_parameter/vertex_inflation = 0.0 shader_parameter/inflation_pixellation = 10.0 +shader_parameter/overlay_emission_scale = 1.0 [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_x2vho"] data = PackedVector3Array(1.5, 0, 1.5, -1.5, 0, 1.5, 1.5, 0, -1.5, 1.5, 0, -1.5, -1.5, 0, 1.5, -1.5, 0, -1.5) @@ -164,6 +165,7 @@ shader_parameter/jitter_magnitude = 0.0 shader_parameter/jitter_time_scale = 0.1 shader_parameter/vertex_inflation = 0.0 shader_parameter/inflation_pixellation = 10.0 +shader_parameter/overlay_emission_scale = 1.0 [sub_resource type="ArrayMesh" id="ArrayMesh_r07l4"] _surfaces = [{ @@ -218,6 +220,7 @@ shader_parameter/jitter_magnitude = 0.0 shader_parameter/jitter_time_scale = 0.1 shader_parameter/vertex_inflation = 0.0 shader_parameter/inflation_pixellation = 10.0 +shader_parameter/overlay_emission_scale = 1.0 [node name="SignalTest" type="Node3D"] diff --git a/levels/meet_spook_test/debug_mob.tscn b/levels/meet_spook_test/debug_mob.tscn index 7bedf35..09d4e52 100644 --- a/levels/meet_spook_test/debug_mob.tscn +++ b/levels/meet_spook_test/debug_mob.tscn @@ -53,6 +53,7 @@ shader_parameter/jitter_time_scale = 0.2 shader_parameter/jitter_noise = SubResource("NoiseTexture3D_omayi") shader_parameter/vertex_inflation = 0.0 shader_parameter/inflation_pixellation = 10.0 +shader_parameter/overlay_emission_scale = 1.0 [sub_resource type="CapsuleMesh" id="CapsuleMesh_k8gi4"] material = SubResource("ShaderMaterial_iy8jq") diff --git a/src/shaders/gunk.gdshader b/src/shaders/gunk.gdshader index 513667c..fe3928e 100644 --- a/src/shaders/gunk.gdshader +++ b/src/shaders/gunk.gdshader @@ -35,6 +35,11 @@ group_uniforms inflation; uniform highp float vertex_inflation = 0.0; uniform highp float inflation_pixellation = 10.0; +group_uniforms overlay; +uniform sampler2D overlay_albedo: hint_default_transparent, filter_nearest; +uniform sampler2D overlay_emission: hint_default_transparent, filter_nearest; +uniform float overlay_emission_scale = 1.0; + void vertex() { float mixer = VERTEX.x + 0.553 * VERTEX.z + 1.618 * VERTEX.y; float local_time = floor(TIME * jitter_time_scale * time_pixellation) / time_pixellation; @@ -61,10 +66,17 @@ void fragment() { float value = texture(gunk_noise, uvt).r; vec3 color = mix(color_1, color_2, value); + vec3 emission = (1.0 - value) * emission_color * emission_strength; + + // overlay texture + vec4 overlay_color = texture(overlay_albedo, UV); + color = mix(color, overlay_color.rgb, overlay_color.a); + vec4 overlay_em = texture(overlay_emission, UV); + emission = mix(emission, overlay_em.rgb * overlay_emission_scale, overlay_em.a); ALBEDO = color.rgb; ROUGHNESS = value * roughness; - EMISSION = (1.0 - value) * emission_color * emission_strength; + EMISSION = emission; SPECULAR = 0.5 * inversesqrt(specular_contribution); NORMAL_MAP = texture(gunk_normal_map, uvt).xyz; diff --git a/src/world/grunk_beast/grunk_beast.tscn b/src/world/grunk_beast/grunk_beast.tscn index d94ed0f..7e2086e 100644 --- a/src/world/grunk_beast/grunk_beast.tscn +++ b/src/world/grunk_beast/grunk_beast.tscn @@ -226,7 +226,7 @@ metadata/_custom_type_script = "uid://om57w2acvgb7" script = ExtResource("11_mbqcc") mean_time = 4.0 st_dev_time = 0.6 -wait_time = 3.81954 +wait_time = 3.41713 metadata/_custom_type_script = "uid://beyk2xtbjrsg4" [node name="RandomStalkingBehavior" type="Node" parent="GrunkBeastBehavior/StateSelector/StalkingSequence/RandomDelay"] @@ -272,7 +272,7 @@ metadata/_custom_type_script = "uid://cg016dbe7gs1x" script = ExtResource("11_mbqcc") mean_time = 5.0 st_dev_time = 1.0 -wait_time = 6.2286 +wait_time = 4.96224 metadata/_custom_type_script = "uid://beyk2xtbjrsg4" [node name="PickRandomLurkTarget" type="Node" parent="GrunkBeastBehavior/StateSelector/LurkSequence/RandomDelay"] diff --git a/src/world/grunk_beast/slutch_beast/face_nodule.material b/src/world/grunk_beast/slutch_beast/face_nodule.material new file mode 100644 index 0000000..445a06f Binary files /dev/null and b/src/world/grunk_beast/slutch_beast/face_nodule.material differ diff --git a/src/world/grunk_beast/slutch_beast/slutch.material b/src/world/grunk_beast/slutch_beast/slutch.material new file mode 100644 index 0000000..0e41643 Binary files /dev/null and b/src/world/grunk_beast/slutch_beast/slutch.material differ diff --git a/src/world/grunk_beast/slutch_beast/slutch_beast.tscn b/src/world/grunk_beast/slutch_beast/slutch_beast.tscn index 8290616..8d86c2d 100644 --- a/src/world/grunk_beast/slutch_beast/slutch_beast.tscn +++ b/src/world/grunk_beast/slutch_beast/slutch_beast.tscn @@ -1,62 +1,34 @@ -[gd_scene load_steps=11 format=3 uid="uid://cvq81xegbwv87"] +[gd_scene load_steps=6 format=3 uid="uid://cvq81xegbwv87"] [ext_resource type="PackedScene" uid="uid://uj7nf8db7sbv" path="res://assets/npc/slutch_beast/slutch.gltf" id="1_ctp72"] -[ext_resource type="Shader" uid="uid://ckxc0ngd37rtk" path="res://src/shaders/gunk.gdshader" id="2_htnl6"] [ext_resource type="Script" uid="uid://dhrky2viceb82" path="res://src/world/grunk_beast/slutch_beast/slutch_beast.gd" id="2_pm58j"] -[ext_resource type="Texture2D" uid="uid://cm1jrvx7ftx4c" path="res://assets/black.png" id="3_pm58j"] -[ext_resource type="FastNoiseLite" uid="uid://cnlvdtx68giv6" path="res://assets/materials/gunk_noise.tres" id="4_r4p65"] - -[sub_resource type="NoiseTexture3D" id="NoiseTexture3D_faau1"] -width = 256 -height = 256 -depth = 32 -seamless = true -seamless_blend_skirt = 0.5 -noise = ExtResource("4_r4p65") - -[sub_resource type="NoiseTexture3D" id="NoiseTexture3D_3gbao"] -width = 256 -height = 256 -depth = 32 -seamless = true -seamless_blend_skirt = 0.5 -noise = ExtResource("4_r4p65") - -[sub_resource type="FastNoiseLite" id="FastNoiseLite_7fplw"] -frequency = 0.0703 - -[sub_resource type="NoiseTexture3D" id="NoiseTexture3D_wffas"] -width = 32 -height = 32 -depth = 128 -noise = SubResource("FastNoiseLite_7fplw") - -[sub_resource type="ShaderMaterial" id="ShaderMaterial_wlv1q"] -resource_local_to_scene = true -render_priority = 0 -shader = ExtResource("2_htnl6") -shader_parameter/color_1 = Color(0, 0.03, 0.1, 1) -shader_parameter/color_2 = Color(0, 0.1, 0.3, 1) -shader_parameter/emission_color = Color(0.25, 0.88, 1, 1) -shader_parameter/pixellation = 128.0 -shader_parameter/time_pixellation = 30.0 -shader_parameter/roughness = 0.15 -shader_parameter/specular_contribution = 0.7 -shader_parameter/emission_strength = 0.0 -shader_parameter/uv_scale = Vector2(4, 4) -shader_parameter/time_scale = 2.0 -shader_parameter/edge_bleed = 0.25 -shader_parameter/gunk_mask = ExtResource("3_pm58j") -shader_parameter/gunk_noise = SubResource("NoiseTexture3D_faau1") -shader_parameter/gunk_normal_map = SubResource("NoiseTexture3D_3gbao") -shader_parameter/jitter_magnitude = 0.6 -shader_parameter/jitter_time_scale = 0.2 -shader_parameter/jitter_noise = SubResource("NoiseTexture3D_wffas") -shader_parameter/vertex_inflation = 0.0 -shader_parameter/inflation_pixellation = 10.0 +[ext_resource type="Material" uid="uid://cteakeq7vpx3s" path="res://src/world/grunk_beast/slutch_beast/slutch.material" id="3_htnl6"] +[ext_resource type="Material" uid="uid://c0oc3q305hcsc" path="res://src/world/grunk_beast/slutch_beast/slutch_nodule.material" id="4_pm58j"] +[ext_resource type="Material" uid="uid://dtbobpttpq5ap" path="res://src/world/grunk_beast/slutch_beast/face_nodule.material" id="4_r4p65"] [node name="SlutchBeast" instance=ExtResource("1_ctp72")] script = ExtResource("2_pm58j") [node name="Slutch" parent="." index="0"] -surface_material_override/0 = SubResource("ShaderMaterial_wlv1q") +surface_material_override/0 = ExtResource("3_htnl6") + +[node name="FaceNodule" parent="." index="1"] +surface_material_override/0 = ExtResource("4_r4p65") + +[node name="Nodule_001" parent="." index="2"] +surface_material_override/0 = ExtResource("4_pm58j") + +[node name="Nodule_002" parent="." index="3"] +surface_material_override/0 = ExtResource("4_pm58j") + +[node name="Nodule_003" parent="." index="4"] +surface_material_override/0 = ExtResource("4_pm58j") + +[node name="Nodule_004" parent="." index="5"] +surface_material_override/0 = ExtResource("4_pm58j") + +[node name="Nodule_005" parent="." index="6"] +surface_material_override/0 = ExtResource("4_pm58j") + +[node name="Nodule" parent="." index="7"] +surface_material_override/0 = ExtResource("4_pm58j") diff --git a/src/world/grunk_beast/slutch_beast/slutch_nodule.material b/src/world/grunk_beast/slutch_beast/slutch_nodule.material new file mode 100644 index 0000000..bfbbaa5 Binary files /dev/null and b/src/world/grunk_beast/slutch_beast/slutch_nodule.material differ