From 08c7a9dbd1a9e8d5494ec31e0798567367dd3961 Mon Sep 17 00:00:00 2001 From: Marco Date: Mon, 1 Sep 2025 16:13:14 +0200 Subject: [PATCH] Danmaku room in factory 3 --- 3D/BlockbenchModels/Locker/Locker.bbmodel | 1 + 3D/BlockbenchModels/Locker/Locker.gltf | 1 + 3D/BlockbenchModels/Locker/Locker.gltf.import | 42 + 3D/BlockbenchModels/Locker/Locker_0.png | 3 + .../Locker/Locker_0.png.import | 43 + 3D/BlockbenchModels/Locker/Locker_Texture.png | 3 + .../Locker/Locker_Texture.png.import | 40 + 3D/MapModels/actor_locker.glb | Bin 0 -> 4172 bytes 3D/MapScenes/Factory_003.tscn | 946 +++++++++++++----- 3D/Maps/Factory3.map | 305 +++++- 3D/Scenes/Props/Locker_3D.tscn | 14 + .../point/actors/Actor_Locker.tres | 20 + .../Brush/worldspawn_bullet_permeable.tres | 14 + .../solid/Brush/worldspawn_custom.tres | 20 - .../solid/Brush/worldspawn_transparent.tres | 16 + 3D/TrenchBroom/fgd_solid.tres | 6 +- IsoTest/IsoMapTest3.tscn | 6 +- Resources/BulletScripts/Danmaku_Room_1.tres | 3 + Resources/Debug/DebugLevels.tres | 11 +- Resources/Maps/3D/IsoMapTest3.tres | 13 + Scripts/Actors/ScriptableBulletsEmitter3D.cs | 2 +- Scripts/Interactables/Switch3D.cs | 2 +- 22 files changed, 1200 insertions(+), 311 deletions(-) create mode 100644 3D/BlockbenchModels/Locker/Locker.bbmodel create mode 100644 3D/BlockbenchModels/Locker/Locker.gltf create mode 100644 3D/BlockbenchModels/Locker/Locker.gltf.import create mode 100644 3D/BlockbenchModels/Locker/Locker_0.png create mode 100644 3D/BlockbenchModels/Locker/Locker_0.png.import create mode 100644 3D/BlockbenchModels/Locker/Locker_Texture.png create mode 100644 3D/BlockbenchModels/Locker/Locker_Texture.png.import create mode 100644 3D/MapModels/actor_locker.glb create mode 100644 3D/Scenes/Props/Locker_3D.tscn create mode 100644 3D/TrenchBroom/EntityDefinitions/point/actors/Actor_Locker.tres create mode 100644 3D/TrenchBroom/EntityDefinitions/solid/Brush/worldspawn_bullet_permeable.tres create mode 100644 3D/TrenchBroom/EntityDefinitions/solid/Brush/worldspawn_transparent.tres create mode 100644 Resources/Maps/3D/IsoMapTest3.tres diff --git a/3D/BlockbenchModels/Locker/Locker.bbmodel b/3D/BlockbenchModels/Locker/Locker.bbmodel new file mode 100644 index 00000000..fd13b2d9 --- /dev/null +++ b/3D/BlockbenchModels/Locker/Locker.bbmodel @@ -0,0 +1 @@ +{"meta":{"format_version":"4.10","model_format":"free","box_uv":false},"name":"Locker","model_identifier":"","visible_box":[1,1,0],"variable_placeholders":"","variable_placeholder_buttons":[],"timeline_setups":[],"unhandled_root_fields":{},"reexport":{"codec":"gltf","codec_options":{"encoding":"ascii","scale":16,"embed_textures":true,"armature":false,"animations":true},"path":".\\Locker.gltf","enabled":true},"resolution":{"width":64,"height":64},"elements":[{"name":"cuboid","color":5,"origin":[0,-2,0],"rotation":[0,0,0],"export":true,"visibility":true,"locked":false,"render_order":"default","allow_mirror_modeling":true,"vertices":{"xM28":[6,18,3],"I0Sa":[6,18,-3],"pmxs":[6,-10,3],"TcJ0":[6,-10,-3],"EtVY":[-6,18,3],"gHBF":[-6,18,-3],"JOcS":[-6,-10,3],"yGT9":[-6,-10,-3]},"faces":{"qV8AglmM":{"uv":{"TcJ0":[32,28],"I0Sa":[32,0],"pmxs":[26,28],"xM28":[26,0]},"vertices":["xM28","pmxs","I0Sa","TcJ0"],"texture":0},"dKRKlp4D":{"uv":{"yGT9":[0,57],"JOcS":[6,57],"gHBF":[0,29],"EtVY":[6,29]},"vertices":["EtVY","gHBF","JOcS","yGT9"],"texture":0},"u0SW7moh":{"uv":{"gHBF":[7,29],"EtVY":[7,35],"I0Sa":[19,29],"xM28":[19,35]},"vertices":["xM28","I0Sa","EtVY","gHBF"],"texture":0},"onVtNzZC":{"uv":{"yGT9":[20,35],"TcJ0":[32,35],"JOcS":[20,29],"pmxs":[32,29]},"vertices":["pmxs","JOcS","TcJ0","yGT9"],"texture":0},"QAXIvmMF":{"uv":{"JOcS":[0,28],"pmxs":[12,28],"EtVY":[0,0],"xM28":[12,0]},"vertices":["xM28","EtVY","pmxs","JOcS"],"texture":0},"xatjuqmo":{"uv":{"yGT9":[25,28],"gHBF":[25,0],"TcJ0":[13,28],"I0Sa":[13,0]},"vertices":["I0Sa","TcJ0","gHBF","yGT9"],"texture":0}},"type":"mesh","uuid":"be3ecca3-341d-adb4-3c1c-31cf5e974e42"}],"outliner":["be3ecca3-341d-adb4-3c1c-31cf5e974e42"],"textures":[{"path":"D:\\Maddo\\cirnogodot\\3D\\BlockbenchModels\\Locker\\Locker_Texture.png","name":"Locker_Texture.png","folder":"block","namespace":"","id":"0","group":"","width":64,"height":64,"uv_width":64,"uv_height":64,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","render_mode":"default","render_sides":"auto","pbr_channel":"color","frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":true,"uuid":"752d4124-c731-fbdf-563f-1a652e8b2386","relative_path":"Locker_Texture.png","source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAWBJREFUeF7tmzEOwjAMRdOFiZ3rcA1mboDEKZC4ATPX4DrsTCxFBQpCxFGC3Ni0rxtSajc/399OHJrFeteGgud82Daa73T2CtyrD71P5rqcZxmenS6hB0Djnd5elvOBBgEADFAIgWZz/CBou1+9fqfChhB4aspA4Z1lVkUDYEAC60mEAAyYOgNSajOJEAAAQuCNQEf57un3CoRAYgNFJTiWShARRARlBBBBRFA+RiMLkAUe7Mg6uRhokMqBCGmQNEgaFBH4izqgRF9G1xormfwYx4qNTu2VlsBzmQa1m6DS5N1WggCg3AaHAQICfxECJcr/q3CW+NAeG90LeFgZ7YlK9gAgdkMEBjg4qCAEKiGABqABkVtiiCAiaH9aW0kDAyKICCKC39flyQJkAbKAedOSNFgJAeoA6gDqgPj/Bq1bVpUkIJheT6k1yZQfAPCwCpbfAAMs0ffgGwZ4WAXLb7gBw5RMbrGcG8UAAAAASUVORK5CYII="}],"export_options":{"gltf":{"encoding":"ascii","scale":16,"embed_textures":true,"armature":false,"animations":true}}} \ No newline at end of file diff --git a/3D/BlockbenchModels/Locker/Locker.gltf b/3D/BlockbenchModels/Locker/Locker.gltf new file mode 100644 index 00000000..ef9099f3 --- /dev/null +++ b/3D/BlockbenchModels/Locker/Locker.gltf @@ -0,0 +1 @@ +{"asset":{"version":"2.0","generator":"Blockbench 4.12.6 glTF exporter"},"scenes":[{"nodes":[1],"name":"blockbench_export"}],"scene":0,"nodes":[{"translation":[0,-0.125,0],"name":"cuboid","mesh":0},{"children":[0]}],"bufferViews":[{"buffer":0,"byteOffset":0,"byteLength":288,"target":34962,"byteStride":12},{"buffer":0,"byteOffset":288,"byteLength":288,"target":34962,"byteStride":12},{"buffer":0,"byteOffset":576,"byteLength":192,"target":34962,"byteStride":8},{"buffer":0,"byteOffset":768,"byteLength":72,"target":34963}],"buffers":[{"byteLength":840,"uri":"data:application/octet-stream;base64,AADAPgAAkD8AAEA+AADAPgAAIL8AAEA+AADAPgAAkD8AAEC+AADAPgAAIL8AAEC+AADAvgAAkD8AAEA+AADAvgAAkD8AAEC+AADAvgAAIL8AAEA+AADAvgAAIL8AAEC+AADAPgAAkD8AAEA+AADAPgAAkD8AAEC+AADAvgAAkD8AAEA+AADAvgAAkD8AAEC+AADAPgAAIL8AAEA+AADAvgAAIL8AAEA+AADAPgAAIL8AAEC+AADAvgAAIL8AAEC+AADAPgAAkD8AAEA+AADAvgAAkD8AAEA+AADAPgAAIL8AAEA+AADAvgAAIL8AAEA+AADAPgAAkD8AAEC+AADAPgAAIL8AAEC+AADAvgAAkD8AAEC+AADAvgAAIL8AAEC+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AADQPgAAAAAAANA+AADgPgAAAD8AAAAAAAAAPwAA4D4AAMA9AADoPgAAAAAAAOg+AADAPQAAZD8AAAAAAABkPwAAmD4AAAw/AACYPgAA6D4AAOA9AAAMPwAA4D0AAOg+AAAAPwAA6D4AAKA+AADoPgAAAD8AAAw/AACgPgAADD8AAEA+AAAAAAAAAAAAAAAAAABAPgAA4D4AAAAAAADgPgAAUD4AAAAAAABQPgAA4D4AAMg+AAAAAAAAyD4AAOA+AgAAAAEAAgABAAMABgAEAAUABgAFAAcACgAIAAkACgAJAAsADgAMAA0ADgANAA8AEgAQABEAEgARABMAFgAUABUAFgAVABcA"}],"accessors":[{"bufferView":0,"componentType":5126,"count":24,"max":[0.375,1.125,0.1875],"min":[-0.375,-0.625,-0.1875],"type":"VEC3"},{"bufferView":1,"componentType":5126,"count":24,"max":[1,1,1],"min":[-1,-1,-1],"type":"VEC3"},{"bufferView":2,"componentType":5126,"count":24,"max":[0.5,0.890625],"min":[0,0],"type":"VEC2"},{"bufferView":3,"componentType":5123,"count":36,"max":[23],"min":[0],"type":"SCALAR"}],"materials":[{"pbrMetallicRoughness":{"metallicFactor":0,"roughnessFactor":1,"baseColorTexture":{"index":0}},"alphaMode":"MASK","alphaCutoff":0.05,"doubleSided":true}],"textures":[{"sampler":0,"source":0,"name":"Locker_Texture"}],"samplers":[{"magFilter":9728,"minFilter":9728,"wrapS":33071,"wrapT":33071}],"images":[{"mimeType":"image/png","uri":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAWBJREFUeF7tmzEOwjAMRdOFiZ3rcA1mboDEKZC4ATPX4DrsTCxFBQpCxFGC3Ni0rxtSajc/399OHJrFeteGgud82Daa73T2CtyrD71P5rqcZxmenS6hB0Djnd5elvOBBgEADFAIgWZz/CBou1+9fqfChhB4aspA4Z1lVkUDYEAC60mEAAyYOgNSajOJEAAAQuCNQEf57un3CoRAYgNFJTiWShARRARlBBBBRFA+RiMLkAUe7Mg6uRhokMqBCGmQNEgaFBH4izqgRF9G1xormfwYx4qNTu2VlsBzmQa1m6DS5N1WggCg3AaHAQICfxECJcr/q3CW+NAeG90LeFgZ7YlK9gAgdkMEBjg4qCAEKiGABqABkVtiiCAiaH9aW0kDAyKICCKC39flyQJkAbKAedOSNFgJAeoA6gDqgPj/Bq1bVpUkIJheT6k1yZQfAPCwCpbfAAMs0ffgGwZ4WAXLb7gBw5RMbrGcG8UAAAAASUVORK5CYII="}],"meshes":[{"primitives":[{"mode":4,"attributes":{"POSITION":0,"NORMAL":1,"TEXCOORD_0":2},"indices":3,"material":0}]}]} \ No newline at end of file diff --git a/3D/BlockbenchModels/Locker/Locker.gltf.import b/3D/BlockbenchModels/Locker/Locker.gltf.import new file mode 100644 index 00000000..2bd6d0fd --- /dev/null +++ b/3D/BlockbenchModels/Locker/Locker.gltf.import @@ -0,0 +1,42 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://c6d7qq5xglnkm" +path="res://.godot/imported/Locker.gltf-da717f0cddc097c5b1cdf11f2ebb10d4.scn" + +[deps] + +source_file="res://3D/BlockbenchModels/Locker/Locker.gltf" +dest_files=["res://.godot/imported/Locker.gltf-da717f0cddc097c5b1cdf11f2ebb10d4.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={} +gltf/naming_version=2 +gltf/embedded_image_handling=1 diff --git a/3D/BlockbenchModels/Locker/Locker_0.png b/3D/BlockbenchModels/Locker/Locker_0.png new file mode 100644 index 00000000..dfcdae77 --- /dev/null +++ b/3D/BlockbenchModels/Locker/Locker_0.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ee90a6e3f687d9f350643fdae0ee56f22478b4a8129e3141ea0db1370100208 +size 422 diff --git a/3D/BlockbenchModels/Locker/Locker_0.png.import b/3D/BlockbenchModels/Locker/Locker_0.png.import new file mode 100644 index 00000000..e37c2390 --- /dev/null +++ b/3D/BlockbenchModels/Locker/Locker_0.png.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cpiftac44rqjq" +path="res://.godot/imported/Locker_0.png-d9c3bcbe237fbe8dd2879de420545a6e.ctex" +metadata={ +"vram_texture": false +} +generator_parameters={ +"md5": "1c54f2ecf7d64fc450677ea96e441dc1" +} + +[deps] + +source_file="res://3D/BlockbenchModels/Locker/Locker_0.png" +dest_files=["res://.godot/imported/Locker_0.png-d9c3bcbe237fbe8dd2879de420545a6e.ctex"] + +[params] + +compress/mode=3 +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/3D/BlockbenchModels/Locker/Locker_Texture.png b/3D/BlockbenchModels/Locker/Locker_Texture.png new file mode 100644 index 00000000..ad94d921 --- /dev/null +++ b/3D/BlockbenchModels/Locker/Locker_Texture.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1aeda5ef4aa5e747d7c3532581ceaee9829646823cc98f94d20e8fb60cea1916 +size 358 diff --git a/3D/BlockbenchModels/Locker/Locker_Texture.png.import b/3D/BlockbenchModels/Locker/Locker_Texture.png.import new file mode 100644 index 00000000..5cf44edc --- /dev/null +++ b/3D/BlockbenchModels/Locker/Locker_Texture.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dhhfy3qe8ih5g" +path="res://.godot/imported/Locker_Texture.png-e8c956c013ebefacbf84ed06eabc444c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://3D/BlockbenchModels/Locker/Locker_Texture.png" +dest_files=["res://.godot/imported/Locker_Texture.png-e8c956c013ebefacbf84ed06eabc444c.ctex"] + +[params] + +compress/mode=3 +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/3D/MapModels/actor_locker.glb b/3D/MapModels/actor_locker.glb new file mode 100644 index 0000000000000000000000000000000000000000..0ef33ec76eee8bba2b8a87e5ea72fe5023d72ee4 GIT binary patch literal 4172 zcmbtXeT-aH6~DW!KntZSf*7R9^29>Ibo#zOrrEFVZkLhWnYuGnOxx_fdGluG>CAiM zdvD6Fn++4vs5De;G(y0@QV1G}7y?NNq}^2#s0E=Wrv4#X(ujglE73n1ExZ2idv9iE zyQH1UB=_BW&OIN$d+s^s?iS109i4=b(Jn&XUq{H7GU?O|qZ@|ld5-HbiQO|yu2v|R z?k>x`mr1ZO#&9ZC$2M(0J6$!Igv9YOW!7w;N$_HfspwNsW8;D%#ke@fOEEUisfx50 zTb7NjE#V#}8Jn1*UE6UhdfED>nP(COz3iDW#t&RDyM_k^W;V7G3fC?aF3ti1iytTP zlE(6!stKGZD1gV(v5br|0Eo&)KTZ$?O_faH9cP%LX`8O@J1&!8Mx4CkcMsb|%Qn0B ziE$~OGksl&R~*}kJB5N}SbDi%G;;-6F*rVNBOCu_XOOR{EgoT>{7r^}LHiiYl@s2r%e_v+QEooNyh-NA|Ts%Q^Y!3s@mq9LTEZMYA;@!%i;I zc3d&TCLRiHt=h$)d@8zcx+sQFOD|VT`e4m>3I$|ioRy;1sE86Psc6H2z?efbnHd|% z+yx|grU}?hf4uig|a`AX{2^Qzi>fH8;2^%g&p)AQtW_k==#`+PoOI;iSQZ*;$$e71Jw4 zL94n}#qzCv5vltq+FZ@2vXmmQL4@%)N>(}Vn)K=9Vm!81L~?Z=09M8E zgT^$|NG{LUeam2GX?jJ0A9akcn=XRxI&_ovF}&KrgGjr2%R7jtlH&wbrP z(L13BrWq03Qe?%bNeKBEi&Ly`9Oy9F`Dv?HRT^$ z$^TeikZbkZl(~Sv%2#B+RksyGtDPnvctZXyhmR|DQdbD6BQEv6Pe3EaEA-oh6`F7T1X$kpF$jQaGd*59= z-AiXmQ$D2^&dvAyY01F7*O5`1E8riV^ru8thA$jM} zIOcvju0o$9KefK`M@${w_{eth+*>z)fVG+&8puxl=d{AHDb9%e|GJ6NO(4FZ^Kh zJ3H=JcoxE984 ztzX;!g$|$Gv~F(A$)OkYO^@y|7RO%P<-`wRk$Um$*c*EeW*$89>o1?(TsrZ&181E3 zuY>*v=f|q?*Z*+a%WL2K^Gp97`fztYb@r=+hu*nw;*H@C?+8dL`0