Player w gravity, rooms, physics, graphics
2
.gitattributes
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
# Normalize EOL for all files that Git considers text files.
|
||||||
|
* text=auto eol=lf
|
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
# Godot 4+ specific ignores
|
||||||
|
.godot/
|
0
README.md
Normal file
18
addons/godot-jolt/LICENSE.txt
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
Copyright (c) Mikael Hermansson and Godot Jolt contributors.
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||||
|
this software and associated documentation files (the "Software"), to deal in
|
||||||
|
the Software without restriction, including without limitation the rights to
|
||||||
|
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||||
|
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||||
|
subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||||
|
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||||
|
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||||
|
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||||
|
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
91
addons/godot-jolt/THIRDPARTY.txt
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
Godot Jolt incorporates third-party material from the projects listed below.
|
||||||
|
|
||||||
|
Godot Engine (https://github.com/godotengine/godot)
|
||||||
|
|
||||||
|
Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md).
|
||||||
|
Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur.
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to
|
||||||
|
deal in the Software without restriction, including without limitation the
|
||||||
|
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
sell copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
|
IN THE SOFTWARE.
|
||||||
|
|
||||||
|
godot-cpp (https://github.com/godot-jolt/godot-cpp)
|
||||||
|
|
||||||
|
Copyright (c) 2017-present Godot Engine contributors.
|
||||||
|
Copyright (c) 2022-present Mikael Hermansson.
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to
|
||||||
|
deal in the Software without restriction, including without limitation the
|
||||||
|
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
sell copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
|
IN THE SOFTWARE.
|
||||||
|
|
||||||
|
Jolt Physics (https://github.com/godot-jolt/jolt)
|
||||||
|
|
||||||
|
Copyright (c) 2021 Jorrit Rouwe.
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to
|
||||||
|
deal in the Software without restriction, including without limitation the
|
||||||
|
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
sell copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
|
IN THE SOFTWARE.
|
||||||
|
|
||||||
|
mimalloc (https://github.com/godot-jolt/mimalloc)
|
||||||
|
|
||||||
|
Copyright (c) 2018-2021 Microsoft Corporation, Daan Leijen.
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to
|
||||||
|
deal in the Software without restriction, including without limitation the
|
||||||
|
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
sell copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
|
IN THE SOFTWARE.
|
BIN
addons/godot-jolt/android/libgodot-jolt_android-arm32.so
Normal file
BIN
addons/godot-jolt/android/libgodot-jolt_android-arm32_editor.so
Normal file
BIN
addons/godot-jolt/android/libgodot-jolt_android-arm64.so
Normal file
BIN
addons/godot-jolt/android/libgodot-jolt_android-arm64_editor.so
Normal file
BIN
addons/godot-jolt/android/libgodot-jolt_android-x64.so
Normal file
BIN
addons/godot-jolt/android/libgodot-jolt_android-x64_editor.so
Normal file
BIN
addons/godot-jolt/android/libgodot-jolt_android-x86.so
Normal file
BIN
addons/godot-jolt/android/libgodot-jolt_android-x86_editor.so
Normal file
36
addons/godot-jolt/godot-jolt.gdextension
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
[configuration]
|
||||||
|
|
||||||
|
entry_symbol = "godot_jolt_main"
|
||||||
|
compatibility_minimum = "4.2"
|
||||||
|
|
||||||
|
[libraries]
|
||||||
|
|
||||||
|
windows.release.x86_64 = "windows/godot-jolt_windows-x64.dll"
|
||||||
|
windows.debug.x86_64 = "windows/godot-jolt_windows-x64_editor.dll"
|
||||||
|
|
||||||
|
windows.release.x86_32 = "windows/godot-jolt_windows-x86.dll"
|
||||||
|
windows.debug.x86_32 = "windows/godot-jolt_windows-x86_editor.dll"
|
||||||
|
|
||||||
|
linux.release.x86_64 = "linux/godot-jolt_linux-x64.so"
|
||||||
|
linux.debug.x86_64 = "linux/godot-jolt_linux-x64_editor.so"
|
||||||
|
|
||||||
|
linux.release.x86_32 = "linux/godot-jolt_linux-x86.so"
|
||||||
|
linux.debug.x86_32 = "linux/godot-jolt_linux-x86_editor.so"
|
||||||
|
|
||||||
|
macos.release = "macos/godot-jolt_macos.framework"
|
||||||
|
macos.debug = "macos/godot-jolt_macos_editor.framework"
|
||||||
|
|
||||||
|
ios.release = "ios/godot-jolt_ios.framework"
|
||||||
|
ios.debug = "ios/godot-jolt_ios_editor.framework"
|
||||||
|
|
||||||
|
android.release.arm64 = "android/libgodot-jolt_android-arm64.so"
|
||||||
|
android.debug.arm64 = "android/libgodot-jolt_android-arm64_editor.so"
|
||||||
|
|
||||||
|
android.release.arm32 = "android/libgodot-jolt_android-arm32.so"
|
||||||
|
android.debug.arm32 = "android/libgodot-jolt_android-arm32_editor.so"
|
||||||
|
|
||||||
|
android.release.x86_64 = "android/libgodot-jolt_android-x64.so"
|
||||||
|
android.debug.x86_64 = "android/libgodot-jolt_android-x64_editor.so"
|
||||||
|
|
||||||
|
android.release.x86_32 = "android/libgodot-jolt_android-x86.so"
|
||||||
|
android.debug.x86_32 = "android/libgodot-jolt_android-x86_editor.so"
|
32
addons/godot-jolt/ios/godot-jolt_ios.framework/Info.plist
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
|
<string>6.0</string>
|
||||||
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
|
<string>en</string>
|
||||||
|
<key>CFBundleExecutable</key>
|
||||||
|
<string>godot-jolt_ios</string>
|
||||||
|
<key>CFBundleName</key>
|
||||||
|
<string>Godot Jolt</string>
|
||||||
|
<key>CFBundleDisplayName</key>
|
||||||
|
<string>Godot Jolt</string>
|
||||||
|
<key>CFBundleIdentifier</key>
|
||||||
|
<string>org.godot-jolt.godot-jolt</string>
|
||||||
|
<key>NSHumanReadableCopyright</key>
|
||||||
|
<string>Copyright (c) Mikael Hermansson and Godot Jolt contributors.</string>
|
||||||
|
<key>CFBundleVersion</key>
|
||||||
|
<string>0.12.0</string>
|
||||||
|
<key>CFBundleShortVersionString</key>
|
||||||
|
<string>0.12.0</string>
|
||||||
|
<key>CFBundlePackageType</key>
|
||||||
|
<string>FMWK</string>
|
||||||
|
<key>CSResourcesFileMapped</key>
|
||||||
|
<true/>
|
||||||
|
<key>DTPlatformName</key>
|
||||||
|
<string>iphoneos</string>
|
||||||
|
<key>MinimumOSVersion</key>
|
||||||
|
<string>12.0</string>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
BIN
addons/godot-jolt/ios/godot-jolt_ios.framework/godot-jolt_ios
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
|
<string>6.0</string>
|
||||||
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
|
<string>en</string>
|
||||||
|
<key>CFBundleExecutable</key>
|
||||||
|
<string>godot-jolt_ios_editor</string>
|
||||||
|
<key>CFBundleName</key>
|
||||||
|
<string>Godot Jolt</string>
|
||||||
|
<key>CFBundleDisplayName</key>
|
||||||
|
<string>Godot Jolt</string>
|
||||||
|
<key>CFBundleIdentifier</key>
|
||||||
|
<string>org.godot-jolt.godot-jolt</string>
|
||||||
|
<key>NSHumanReadableCopyright</key>
|
||||||
|
<string>Copyright (c) Mikael Hermansson and Godot Jolt contributors.</string>
|
||||||
|
<key>CFBundleVersion</key>
|
||||||
|
<string>0.12.0</string>
|
||||||
|
<key>CFBundleShortVersionString</key>
|
||||||
|
<string>0.12.0</string>
|
||||||
|
<key>CFBundlePackageType</key>
|
||||||
|
<string>FMWK</string>
|
||||||
|
<key>CSResourcesFileMapped</key>
|
||||||
|
<true/>
|
||||||
|
<key>DTPlatformName</key>
|
||||||
|
<string>iphoneos</string>
|
||||||
|
<key>MinimumOSVersion</key>
|
||||||
|
<string>12.0</string>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
BIN
addons/godot-jolt/linux/godot-jolt_linux-x64.so
Normal file
BIN
addons/godot-jolt/linux/godot-jolt_linux-x64_editor.so
Normal file
BIN
addons/godot-jolt/linux/godot-jolt_linux-x86.so
Normal file
BIN
addons/godot-jolt/linux/godot-jolt_linux-x86_editor.so
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
|
<string>6.0</string>
|
||||||
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
|
<string>en</string>
|
||||||
|
<key>CFBundleExecutable</key>
|
||||||
|
<string>godot-jolt_macos</string>
|
||||||
|
<key>CFBundleName</key>
|
||||||
|
<string>Godot Jolt</string>
|
||||||
|
<key>CFBundleDisplayName</key>
|
||||||
|
<string>Godot Jolt</string>
|
||||||
|
<key>CFBundleIdentifier</key>
|
||||||
|
<string>org.godot-jolt.godot-jolt</string>
|
||||||
|
<key>NSHumanReadableCopyright</key>
|
||||||
|
<string>Copyright (c) Mikael Hermansson and Godot Jolt contributors.</string>
|
||||||
|
<key>CFBundleVersion</key>
|
||||||
|
<string>0.12.0</string>
|
||||||
|
<key>CFBundleShortVersionString</key>
|
||||||
|
<string>0.12.0</string>
|
||||||
|
<key>CFBundlePackageType</key>
|
||||||
|
<string>FMWK</string>
|
||||||
|
<key>CSResourcesFileMapped</key>
|
||||||
|
<true/>
|
||||||
|
<key>DTPlatformName</key>
|
||||||
|
<string>macosx</string>
|
||||||
|
<key>LSMinimumSystemVersion</key>
|
||||||
|
<string>10.12</string>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
@ -0,0 +1,128 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>files</key>
|
||||||
|
<dict>
|
||||||
|
<key>Resources/Info.plist</key>
|
||||||
|
<data>
|
||||||
|
HxpaqrKUN+D+lkF90Phqlb+CZKo=
|
||||||
|
</data>
|
||||||
|
</dict>
|
||||||
|
<key>files2</key>
|
||||||
|
<dict>
|
||||||
|
<key>Resources/Info.plist</key>
|
||||||
|
<dict>
|
||||||
|
<key>hash2</key>
|
||||||
|
<data>
|
||||||
|
ZTtvl19PLRzCoTuDRMZ2FnJXIXsLYRhaBFxjroNsLDw=
|
||||||
|
</data>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
<key>rules</key>
|
||||||
|
<dict>
|
||||||
|
<key>^Resources/</key>
|
||||||
|
<true/>
|
||||||
|
<key>^Resources/.*\.lproj/</key>
|
||||||
|
<dict>
|
||||||
|
<key>optional</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>1000</real>
|
||||||
|
</dict>
|
||||||
|
<key>^Resources/.*\.lproj/locversion.plist$</key>
|
||||||
|
<dict>
|
||||||
|
<key>omit</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>1100</real>
|
||||||
|
</dict>
|
||||||
|
<key>^Resources/Base\.lproj/</key>
|
||||||
|
<dict>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>1010</real>
|
||||||
|
</dict>
|
||||||
|
<key>^version.plist$</key>
|
||||||
|
<true/>
|
||||||
|
</dict>
|
||||||
|
<key>rules2</key>
|
||||||
|
<dict>
|
||||||
|
<key>.*\.dSYM($|/)</key>
|
||||||
|
<dict>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>11</real>
|
||||||
|
</dict>
|
||||||
|
<key>^(.*/)?\.DS_Store$</key>
|
||||||
|
<dict>
|
||||||
|
<key>omit</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>2000</real>
|
||||||
|
</dict>
|
||||||
|
<key>^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/</key>
|
||||||
|
<dict>
|
||||||
|
<key>nested</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>10</real>
|
||||||
|
</dict>
|
||||||
|
<key>^.*</key>
|
||||||
|
<true/>
|
||||||
|
<key>^Info\.plist$</key>
|
||||||
|
<dict>
|
||||||
|
<key>omit</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>20</real>
|
||||||
|
</dict>
|
||||||
|
<key>^PkgInfo$</key>
|
||||||
|
<dict>
|
||||||
|
<key>omit</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>20</real>
|
||||||
|
</dict>
|
||||||
|
<key>^Resources/</key>
|
||||||
|
<dict>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>20</real>
|
||||||
|
</dict>
|
||||||
|
<key>^Resources/.*\.lproj/</key>
|
||||||
|
<dict>
|
||||||
|
<key>optional</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>1000</real>
|
||||||
|
</dict>
|
||||||
|
<key>^Resources/.*\.lproj/locversion.plist$</key>
|
||||||
|
<dict>
|
||||||
|
<key>omit</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>1100</real>
|
||||||
|
</dict>
|
||||||
|
<key>^Resources/Base\.lproj/</key>
|
||||||
|
<dict>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>1010</real>
|
||||||
|
</dict>
|
||||||
|
<key>^[^/]+$</key>
|
||||||
|
<dict>
|
||||||
|
<key>nested</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>10</real>
|
||||||
|
</dict>
|
||||||
|
<key>^embedded\.provisionprofile$</key>
|
||||||
|
<dict>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>20</real>
|
||||||
|
</dict>
|
||||||
|
<key>^version\.plist$</key>
|
||||||
|
<dict>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>20</real>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
@ -0,0 +1,32 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
|
<string>6.0</string>
|
||||||
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
|
<string>en</string>
|
||||||
|
<key>CFBundleExecutable</key>
|
||||||
|
<string>godot-jolt_macos_editor</string>
|
||||||
|
<key>CFBundleName</key>
|
||||||
|
<string>Godot Jolt</string>
|
||||||
|
<key>CFBundleDisplayName</key>
|
||||||
|
<string>Godot Jolt</string>
|
||||||
|
<key>CFBundleIdentifier</key>
|
||||||
|
<string>org.godot-jolt.godot-jolt</string>
|
||||||
|
<key>NSHumanReadableCopyright</key>
|
||||||
|
<string>Copyright (c) Mikael Hermansson and Godot Jolt contributors.</string>
|
||||||
|
<key>CFBundleVersion</key>
|
||||||
|
<string>0.12.0</string>
|
||||||
|
<key>CFBundleShortVersionString</key>
|
||||||
|
<string>0.12.0</string>
|
||||||
|
<key>CFBundlePackageType</key>
|
||||||
|
<string>FMWK</string>
|
||||||
|
<key>CSResourcesFileMapped</key>
|
||||||
|
<true/>
|
||||||
|
<key>DTPlatformName</key>
|
||||||
|
<string>macosx</string>
|
||||||
|
<key>LSMinimumSystemVersion</key>
|
||||||
|
<string>10.12</string>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
128
addons/godot-jolt/macos/godot-jolt_macos_editor.framework/_CodeSignature/CodeResources
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>files</key>
|
||||||
|
<dict>
|
||||||
|
<key>Resources/Info.plist</key>
|
||||||
|
<data>
|
||||||
|
CpU1kp9qZhdCVqKdSia+981vm40=
|
||||||
|
</data>
|
||||||
|
</dict>
|
||||||
|
<key>files2</key>
|
||||||
|
<dict>
|
||||||
|
<key>Resources/Info.plist</key>
|
||||||
|
<dict>
|
||||||
|
<key>hash2</key>
|
||||||
|
<data>
|
||||||
|
4CTRXI34pj3JIJzQDUUZTlAagKWQeohPQN20M0VCK4o=
|
||||||
|
</data>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
<key>rules</key>
|
||||||
|
<dict>
|
||||||
|
<key>^Resources/</key>
|
||||||
|
<true/>
|
||||||
|
<key>^Resources/.*\.lproj/</key>
|
||||||
|
<dict>
|
||||||
|
<key>optional</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>1000</real>
|
||||||
|
</dict>
|
||||||
|
<key>^Resources/.*\.lproj/locversion.plist$</key>
|
||||||
|
<dict>
|
||||||
|
<key>omit</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>1100</real>
|
||||||
|
</dict>
|
||||||
|
<key>^Resources/Base\.lproj/</key>
|
||||||
|
<dict>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>1010</real>
|
||||||
|
</dict>
|
||||||
|
<key>^version.plist$</key>
|
||||||
|
<true/>
|
||||||
|
</dict>
|
||||||
|
<key>rules2</key>
|
||||||
|
<dict>
|
||||||
|
<key>.*\.dSYM($|/)</key>
|
||||||
|
<dict>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>11</real>
|
||||||
|
</dict>
|
||||||
|
<key>^(.*/)?\.DS_Store$</key>
|
||||||
|
<dict>
|
||||||
|
<key>omit</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>2000</real>
|
||||||
|
</dict>
|
||||||
|
<key>^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/</key>
|
||||||
|
<dict>
|
||||||
|
<key>nested</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>10</real>
|
||||||
|
</dict>
|
||||||
|
<key>^.*</key>
|
||||||
|
<true/>
|
||||||
|
<key>^Info\.plist$</key>
|
||||||
|
<dict>
|
||||||
|
<key>omit</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>20</real>
|
||||||
|
</dict>
|
||||||
|
<key>^PkgInfo$</key>
|
||||||
|
<dict>
|
||||||
|
<key>omit</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>20</real>
|
||||||
|
</dict>
|
||||||
|
<key>^Resources/</key>
|
||||||
|
<dict>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>20</real>
|
||||||
|
</dict>
|
||||||
|
<key>^Resources/.*\.lproj/</key>
|
||||||
|
<dict>
|
||||||
|
<key>optional</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>1000</real>
|
||||||
|
</dict>
|
||||||
|
<key>^Resources/.*\.lproj/locversion.plist$</key>
|
||||||
|
<dict>
|
||||||
|
<key>omit</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>1100</real>
|
||||||
|
</dict>
|
||||||
|
<key>^Resources/Base\.lproj/</key>
|
||||||
|
<dict>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>1010</real>
|
||||||
|
</dict>
|
||||||
|
<key>^[^/]+$</key>
|
||||||
|
<dict>
|
||||||
|
<key>nested</key>
|
||||||
|
<true/>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>10</real>
|
||||||
|
</dict>
|
||||||
|
<key>^embedded\.provisionprofile$</key>
|
||||||
|
<dict>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>20</real>
|
||||||
|
</dict>
|
||||||
|
<key>^version\.plist$</key>
|
||||||
|
<dict>
|
||||||
|
<key>weight</key>
|
||||||
|
<real>20</real>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
BIN
addons/godot-jolt/windows/godot-jolt_windows-x64.dll
Normal file
BIN
addons/godot-jolt/windows/godot-jolt_windows-x64_editor.dll
Normal file
BIN
addons/godot-jolt/windows/godot-jolt_windows-x86.dll
Normal file
BIN
addons/godot-jolt/windows/godot-jolt_windows-x86_editor.dll
Normal file
39
export_presets.cfg
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
[preset.0]
|
||||||
|
|
||||||
|
name="CAWEZ_Puzzlebox"
|
||||||
|
platform="Linux/X11"
|
||||||
|
runnable=true
|
||||||
|
dedicated_server=false
|
||||||
|
custom_features=""
|
||||||
|
export_filter="all_resources"
|
||||||
|
include_filter=""
|
||||||
|
exclude_filter=""
|
||||||
|
export_path="../Desktop/CAWEZ/CAWEZ_Puzzlebox.x86_64"
|
||||||
|
encryption_include_filters=""
|
||||||
|
encryption_exclude_filters=""
|
||||||
|
encrypt_pck=false
|
||||||
|
encrypt_directory=false
|
||||||
|
|
||||||
|
[preset.0.options]
|
||||||
|
|
||||||
|
custom_template/debug=""
|
||||||
|
custom_template/release=""
|
||||||
|
debug/export_console_wrapper=1
|
||||||
|
binary_format/embed_pck=false
|
||||||
|
texture_format/bptc=true
|
||||||
|
texture_format/s3tc=true
|
||||||
|
texture_format/etc=false
|
||||||
|
texture_format/etc2=false
|
||||||
|
binary_format/architecture="x86_64"
|
||||||
|
ssh_remote_deploy/enabled=false
|
||||||
|
ssh_remote_deploy/host="user@host_ip"
|
||||||
|
ssh_remote_deploy/port="22"
|
||||||
|
ssh_remote_deploy/extra_args_ssh=""
|
||||||
|
ssh_remote_deploy/extra_args_scp=""
|
||||||
|
ssh_remote_deploy/run_script="#!/usr/bin/env bash
|
||||||
|
export DISPLAY=:0
|
||||||
|
unzip -o -q \"{temp_dir}/{archive_name}\" -d \"{temp_dir}\"
|
||||||
|
\"{temp_dir}/{exe_name}\" {cmd_args}"
|
||||||
|
ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash
|
||||||
|
kill $(pgrep -x -f \"{temp_dir}/{exe_name} {cmd_args}\")
|
||||||
|
rm -rf \"{temp_dir}\""
|
13
globals.gd
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
extends Node
|
||||||
|
|
||||||
|
var global_down = Vector3(0,0,0)
|
||||||
|
var sensitivity = 0.004
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
set_global_down(Vector3(0,-1,0))
|
||||||
|
|
||||||
|
func set_global_down(newDown: Vector3):
|
||||||
|
global_down = newDown.normalized()
|
||||||
|
if global_down.dot(Vector3.UP) == 1 || global_down.dot(Vector3.DOWN) == 1:
|
||||||
|
# Applies jitter
|
||||||
|
global_down += Vector3(0.01,0,0)
|
1
icon.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<svg height="128" width="128" xmlns="http://www.w3.org/2000/svg"><rect x="2" y="2" width="124" height="124" rx="14" fill="#363d52" stroke="#212532" stroke-width="4"/><g transform="scale(.101) translate(122 122)"><g fill="#fff"><path d="M105 673v33q407 354 814 0v-33z"/><path d="m105 673 152 14q12 1 15 14l4 67 132 10 8-61q2-11 15-15h162q13 4 15 15l8 61 132-10 4-67q3-13 15-14l152-14V427q30-39 56-81-35-59-83-108-43 20-82 47-40-37-88-64 7-51 8-102-59-28-123-42-26 43-46 89-49-7-98 0-20-46-46-89-64 14-123 42 1 51 8 102-48 27-88 64-39-27-82-47-48 49-83 108 26 42 56 81zm0 33v39c0 276 813 276 814 0v-39l-134 12-5 69q-2 10-14 13l-162 11q-12 0-16-11l-10-65H446l-10 65q-4 11-16 11l-162-11q-12-3-14-13l-5-69z" fill="#478cbf"/><path d="M483 600c0 34 58 34 58 0v-86c0-34-58-34-58 0z"/><circle cx="725" cy="526" r="90"/><circle cx="299" cy="526" r="90"/></g><g fill="#414042"><circle cx="307" cy="532" r="60"/><circle cx="717" cy="532" r="60"/></g></g></svg>
|
After Width: | Height: | Size: 949 B |
38
icon.svg.import
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://bamlg2c8avrdx"
|
||||||
|
path.s3tc="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://icon.svg"
|
||||||
|
dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
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/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
|
||||||
|
svg/scale=1.0
|
||||||
|
editor/scale_with_editor_scale=false
|
||||||
|
editor/convert_colors_with_editor_theme=false
|
BIN
player/player_model.blend
Normal file
50
player/player_model.blend.import
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="scene"
|
||||||
|
importer_version=1
|
||||||
|
type="PackedScene"
|
||||||
|
uid="uid://b63mupr1u2nq0"
|
||||||
|
path="res://.godot/imported/player_model.blend-e827f74075107e5c935a1df2bc1df101.scn"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://player/player_model.blend"
|
||||||
|
dest_files=["res://.godot/imported/player_model.blend-e827f74075107e5c935a1df2bc1df101.scn"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
nodes/root_type=""
|
||||||
|
nodes/root_name=""
|
||||||
|
nodes/apply_root_scale=true
|
||||||
|
nodes/root_scale=1.0
|
||||||
|
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
|
||||||
|
import_script/path=""
|
||||||
|
_subresources={}
|
||||||
|
gltf/naming_version=1
|
||||||
|
gltf/embedded_image_handling=1
|
||||||
|
blender/nodes/visible=0
|
||||||
|
blender/nodes/punctual_lights=true
|
||||||
|
blender/nodes/cameras=true
|
||||||
|
blender/nodes/custom_properties=true
|
||||||
|
blender/nodes/modifiers=1
|
||||||
|
blender/meshes/colors=false
|
||||||
|
blender/meshes/uvs=true
|
||||||
|
blender/meshes/normals=true
|
||||||
|
blender/meshes/tangents=true
|
||||||
|
blender/meshes/skins=2
|
||||||
|
blender/meshes/export_bones_deforming_mesh_only=false
|
||||||
|
blender/materials/unpack_enabled=true
|
||||||
|
blender/materials/export_materials=1
|
||||||
|
blender/animation/limit_playback=true
|
||||||
|
blender/animation/always_sample=true
|
||||||
|
blender/animation/group_tracks=true
|
BIN
player/player_model.blend1
Normal file
88
player/player_moves.gd
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
extends RigidBody3D
|
||||||
|
|
||||||
|
|
||||||
|
var airtime = 0.0
|
||||||
|
var mouse_input = Vector2(0,0)
|
||||||
|
var raw_mouse_input = Vector2(0,0)
|
||||||
|
var alpha = 10
|
||||||
|
|
||||||
|
|
||||||
|
# Called when the node enters the scene tree for the first time.
|
||||||
|
func _ready():
|
||||||
|
Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED)
|
||||||
|
|
||||||
|
|
||||||
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
|
func _process(delta):
|
||||||
|
|
||||||
|
# Makes sure everything is sane
|
||||||
|
$grounded.global_position = global_position
|
||||||
|
$grounded.target_position = Globals.global_down * 1.1
|
||||||
|
$level.position = global_position
|
||||||
|
|
||||||
|
|
||||||
|
# Gravity!
|
||||||
|
apply_central_force(Globals.global_down * 9.8 * 100 * delta)
|
||||||
|
|
||||||
|
# Sets up the input variables
|
||||||
|
# Cursor input
|
||||||
|
raw_mouse_input = Input.get_last_mouse_velocity() * delta * Globals.sensitivity
|
||||||
|
# Zoom in/out
|
||||||
|
var scroll_input = 0.5 * int(Input.is_action_just_released("out")) - int(Input.is_action_just_released("in"))
|
||||||
|
# WASD
|
||||||
|
var move_input := Vector3.ZERO
|
||||||
|
|
||||||
|
# Filters the mouse input using exponential interpolation
|
||||||
|
mouse_input.x = mouse_input.x * exp(-alpha * delta) + raw_mouse_input.x * (1.0 - exp(-alpha * delta))
|
||||||
|
mouse_input.y = mouse_input.y * exp(-alpha * delta * 3) + raw_mouse_input.y * (1.0 - exp(-alpha * delta * 3))
|
||||||
|
|
||||||
|
# Assigns the controls input
|
||||||
|
move_input.x = Input.get_axis("forward", "backwards")
|
||||||
|
move_input.y = -Input.get_axis("right", "left")
|
||||||
|
|
||||||
|
# Rotates the camera
|
||||||
|
$level/gimbal_y.rotate_z(-mouse_input.x)
|
||||||
|
$level/gimbal_y/gimbal_x.rotate_x(-mouse_input.y)
|
||||||
|
# Clamps the up/down
|
||||||
|
$level/gimbal_y/gimbal_x.rotation_degrees.x = clamp ($level/gimbal_y/gimbal_x.rotation_degrees.x, 5, 175)
|
||||||
|
|
||||||
|
# Zooms in/out
|
||||||
|
$level/gimbal_y/gimbal_x/stick/camera.translate(Vector3(0,0,scroll_input))
|
||||||
|
$level/gimbal_y/gimbal_x/stick/camera.position.z = clamp($level/gimbal_y/gimbal_x/stick/camera.position.z, 0, 50)
|
||||||
|
# Default size is 0.85 = 1m
|
||||||
|
$player_model.scale = Vector3(1,1,1) * clamp($level/gimbal_y/gimbal_x/stick/camera.position.z/2, 0, 0.85)
|
||||||
|
|
||||||
|
# Is the player on the ground?
|
||||||
|
if ($grounded.is_colliding()):
|
||||||
|
|
||||||
|
# Makes airtime negative (coyote frames)
|
||||||
|
airtime = -0.3
|
||||||
|
|
||||||
|
# Moves via rotation
|
||||||
|
apply_torque(Quaternion.from_euler($level/gimbal_y.global_rotation) * (move_input * 2000.0 * delta))
|
||||||
|
|
||||||
|
else:
|
||||||
|
|
||||||
|
#Moves via translation
|
||||||
|
apply_central_force(Quaternion.from_euler($level/gimbal_y.global_rotation) * (Vector3(move_input.y, -move_input.x, 0) * 300.0 * delta))
|
||||||
|
|
||||||
|
# Is the break key pressed?
|
||||||
|
if Input.get_action_strength("alternate") > 0.0 && move_input == Vector3(0,0,0):
|
||||||
|
# Velocity becomes up/down
|
||||||
|
linear_velocity = Globals.global_down * Globals.global_down.dot(linear_velocity)
|
||||||
|
|
||||||
|
# Updates the air time
|
||||||
|
airtime += delta
|
||||||
|
# Pressed jump and can jump?
|
||||||
|
if (Input.get_action_strength("up") > 0.0 && airtime < 0.0):
|
||||||
|
|
||||||
|
# Plays the animation
|
||||||
|
$player_model/AnimationPlayer.play("ArmatureAction")
|
||||||
|
|
||||||
|
# Find the velocity along the down vector
|
||||||
|
var velocity_along_normal = Globals.global_down * Globals.global_down.dot(linear_velocity)
|
||||||
|
var new_velocity = (linear_velocity - velocity_along_normal) + (Globals.global_down * -20)
|
||||||
|
|
||||||
|
# Applies the new velocity
|
||||||
|
set_linear_velocity(new_velocity)
|
||||||
|
|
57
player/player_node.tscn
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
[gd_scene load_steps=8 format=3 uid="uid://pyhlicd4a0ec"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" path="res://player/player_moves.gd" id="1_2ps78"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://b63mupr1u2nq0" path="res://player/player_model.blend" id="1_uh731"]
|
||||||
|
[ext_resource type="Script" path="res://player/seek_level.gd" id="3_yfi6d"]
|
||||||
|
|
||||||
|
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_s88nq"]
|
||||||
|
friction = 7.0
|
||||||
|
rough = true
|
||||||
|
|
||||||
|
[sub_resource type="SphereShape3D" id="SphereShape3D_qx3du"]
|
||||||
|
radius = 1.0
|
||||||
|
|
||||||
|
[sub_resource type="GDScript" id="GDScript_pbl37"]
|
||||||
|
script/source = "extends Node3D
|
||||||
|
|
||||||
|
|
||||||
|
"
|
||||||
|
|
||||||
|
[sub_resource type="CapsuleMesh" id="CapsuleMesh_1nqfw"]
|
||||||
|
radius = 0.1
|
||||||
|
height = 2.787
|
||||||
|
|
||||||
|
[node name="player" type="RigidBody3D"]
|
||||||
|
physics_material_override = SubResource("PhysicsMaterial_s88nq")
|
||||||
|
gravity_scale = 0.0
|
||||||
|
angular_damp = 6.0
|
||||||
|
script = ExtResource("1_2ps78")
|
||||||
|
|
||||||
|
[node name="collider" type="CollisionShape3D" parent="."]
|
||||||
|
shape = SubResource("SphereShape3D_qx3du")
|
||||||
|
|
||||||
|
[node name="player_model" parent="." instance=ExtResource("1_uh731")]
|
||||||
|
transform = Transform3D(0.85, 0, 0, 0, 0.85, 0, 0, 0, 0.85, 0, 0, 0)
|
||||||
|
|
||||||
|
[node name="grounded" type="RayCast3D" parent="."]
|
||||||
|
top_level = true
|
||||||
|
target_position = Vector3(0, -1.1, 0)
|
||||||
|
|
||||||
|
[node name="level" type="Node3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)
|
||||||
|
top_level = true
|
||||||
|
script = ExtResource("3_yfi6d")
|
||||||
|
|
||||||
|
[node name="gimbal_y" type="Node3D" parent="level"]
|
||||||
|
script = SubResource("GDScript_pbl37")
|
||||||
|
|
||||||
|
[node name="gimbal_x" type="Node3D" parent="level/gimbal_y"]
|
||||||
|
|
||||||
|
[node name="stick" type="Node3D" parent="level/gimbal_y/gimbal_x"]
|
||||||
|
|
||||||
|
[node name="camera" type="Camera3D" parent="level/gimbal_y/gimbal_x/stick"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 14.3224)
|
||||||
|
|
||||||
|
[node name="MeshInstance3D" type="MeshInstance3D" parent="level"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)
|
||||||
|
mesh = SubResource("CapsuleMesh_1nqfw")
|
12
player/seek_level.gd
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
extends Node3D
|
||||||
|
|
||||||
|
|
||||||
|
# Called when the node enters the scene tree for the first time.
|
||||||
|
func _ready():
|
||||||
|
pass # Replace with function body.
|
||||||
|
|
||||||
|
|
||||||
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
|
func _process(_delta):
|
||||||
|
#rotation=Globals.global_rotate
|
||||||
|
look_at(position + Globals.global_down)
|
BIN
player_model.blend1
Normal file
BIN
primitives/skybox/background.hdr
Normal file
35
primitives/skybox/background.hdr.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://ck6rsckrlm5ql"
|
||||||
|
path.bptc="res://.godot/imported/background.hdr-4791c4573f4e54899bd21a1b5cb2abad.bptc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://primitives/skybox/background.hdr"
|
||||||
|
dest_files=["res://.godot/imported/background.hdr-4791c4573f4e54899bd21a1b5cb2abad.bptc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
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/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
|
BIN
primitives/skybox/skybox.blend
Normal file
57
primitives/skybox/skybox.blend.import
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="scene"
|
||||||
|
importer_version=1
|
||||||
|
type="PackedScene"
|
||||||
|
uid="uid://bcsejkg5vcjgl"
|
||||||
|
path="res://.godot/imported/skybox.blend-282a06ea6d5dae8388eea90bc77c8673.scn"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://primitives/skybox/skybox.blend"
|
||||||
|
dest_files=["res://.godot/imported/skybox.blend-282a06ea6d5dae8388eea90bc77c8673.scn"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
nodes/root_type=""
|
||||||
|
nodes/root_name=""
|
||||||
|
nodes/apply_root_scale=true
|
||||||
|
nodes/root_scale=1.0
|
||||||
|
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
|
||||||
|
import_script/path=""
|
||||||
|
_subresources={
|
||||||
|
"materials": {
|
||||||
|
"Material.001": {
|
||||||
|
"use_external/enabled": true,
|
||||||
|
"use_external/path": "res://primitives/skybox/skybox.tres"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
gltf/naming_version=1
|
||||||
|
gltf/embedded_image_handling=1
|
||||||
|
blender/nodes/visible=0
|
||||||
|
blender/nodes/punctual_lights=true
|
||||||
|
blender/nodes/cameras=true
|
||||||
|
blender/nodes/custom_properties=true
|
||||||
|
blender/nodes/modifiers=1
|
||||||
|
blender/meshes/colors=false
|
||||||
|
blender/meshes/uvs=true
|
||||||
|
blender/meshes/normals=true
|
||||||
|
blender/meshes/tangents=true
|
||||||
|
blender/meshes/skins=2
|
||||||
|
blender/meshes/export_bones_deforming_mesh_only=false
|
||||||
|
blender/materials/unpack_enabled=true
|
||||||
|
blender/materials/export_materials=1
|
||||||
|
blender/animation/limit_playback=true
|
||||||
|
blender/animation/always_sample=true
|
||||||
|
blender/animation/group_tracks=true
|
10
primitives/skybox/skybox.tres
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://bxe3igfei0cll"]
|
||||||
|
|
||||||
|
[ext_resource type="Texture2D" uid="uid://ck6rsckrlm5ql" path="res://primitives/skybox/background.hdr" id="1_fdwr0"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
shading_mode = 0
|
||||||
|
disable_ambient_light = true
|
||||||
|
disable_fog = true
|
||||||
|
vertex_color_use_as_albedo = true
|
||||||
|
albedo_texture = ExtResource("1_fdwr0")
|
81
project.godot
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
; Engine configuration file.
|
||||||
|
; It's best edited using the editor UI and not directly,
|
||||||
|
; since the parameters that go here are not all obvious.
|
||||||
|
;
|
||||||
|
; Format:
|
||||||
|
; [section] ; section goes between []
|
||||||
|
; param=value ; assign values to parameters
|
||||||
|
|
||||||
|
config_version=5
|
||||||
|
|
||||||
|
[application]
|
||||||
|
|
||||||
|
config/name="Cawez Puzzlebox"
|
||||||
|
run/main_scene="res://testscene.tscn"
|
||||||
|
config/features=PackedStringArray("4.2", "Forward Plus")
|
||||||
|
config/icon="res://icon.svg"
|
||||||
|
|
||||||
|
[autoload]
|
||||||
|
|
||||||
|
Globals="*res://globals.gd"
|
||||||
|
|
||||||
|
[input]
|
||||||
|
|
||||||
|
left={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":97,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
right={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
forward={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":119,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
backwards={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
up={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":32,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
alternate={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194325,"key_label":0,"unicode":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194326,"key_label":0,"unicode":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194329,"key_label":0,"unicode":0,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
more={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":81,"key_label":0,"unicode":113,"echo":false,"script":null)
|
||||||
|
, Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":1,"position":Vector2(198, 18),"global_position":Vector2(202, 59),"factor":1.0,"button_index":1,"canceled":false,"pressed":true,"double_click":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
less={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":69,"key_label":0,"unicode":101,"echo":false,"script":null)
|
||||||
|
, Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":2,"position":Vector2(229, 18),"global_position":Vector2(233, 59),"factor":1.0,"button_index":2,"canceled":false,"pressed":true,"double_click":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
in={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":8,"position":Vector2(209, 23),"global_position":Vector2(213, 64),"factor":1.0,"button_index":4,"canceled":false,"pressed":true,"double_click":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
out={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":16,"position":Vector2(174, 4),"global_position":Vector2(178, 45),"factor":1.0,"button_index":5,"canceled":false,"pressed":true,"double_click":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
[physics]
|
||||||
|
|
||||||
|
3d/physics_engine="JoltPhysics3D"
|
BIN
rooms/blue/Roughness Map.png
Normal file
After Width: | Height: | Size: 8.5 MiB |
35
rooms/blue/Roughness Map.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://bafeo5g7hr3x2"
|
||||||
|
path.s3tc="res://.godot/imported/Roughness Map.png-907b4a273711aad630b43db9e5433a80.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://rooms/blue/Roughness Map.png"
|
||||||
|
dest_files=["res://.godot/imported/Roughness Map.png-907b4a273711aad630b43db9e5433a80.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=1
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=1
|
||||||
|
roughness/src_normal="res://rooms/blue/Roughness Map.png"
|
||||||
|
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
|
BIN
rooms/blue/ceiling.blend
Normal file
66
rooms/blue/ceiling.blend.import
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="scene"
|
||||||
|
importer_version=1
|
||||||
|
type="PackedScene"
|
||||||
|
uid="uid://cqr10c1hj3x8r"
|
||||||
|
path="res://.godot/imported/ceiling.blend-b78e96a9edc0eaab1311f59678234c61.scn"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://rooms/blue/ceiling.blend"
|
||||||
|
dest_files=["res://.godot/imported/ceiling.blend-b78e96a9edc0eaab1311f59678234c61.scn"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
nodes/root_type=""
|
||||||
|
nodes/root_name=""
|
||||||
|
nodes/apply_root_scale=true
|
||||||
|
nodes/root_scale=1.0
|
||||||
|
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
|
||||||
|
import_script/path=""
|
||||||
|
_subresources={
|
||||||
|
"materials": {
|
||||||
|
"Material": {
|
||||||
|
"use_external/enabled": true,
|
||||||
|
"use_external/path": "res://rooms/blue/emissive_lights.tres"
|
||||||
|
},
|
||||||
|
"Material.001": {
|
||||||
|
"use_external/enabled": true,
|
||||||
|
"use_external/path": "res://rooms/blue/normal_ceiling.tres"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nodes": {
|
||||||
|
"PATH:Cube": {
|
||||||
|
"mesh_instance/layers": 3
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
gltf/naming_version=1
|
||||||
|
gltf/embedded_image_handling=1
|
||||||
|
blender/nodes/visible=0
|
||||||
|
blender/nodes/punctual_lights=true
|
||||||
|
blender/nodes/cameras=true
|
||||||
|
blender/nodes/custom_properties=true
|
||||||
|
blender/nodes/modifiers=1
|
||||||
|
blender/meshes/colors=false
|
||||||
|
blender/meshes/uvs=true
|
||||||
|
blender/meshes/normals=true
|
||||||
|
blender/meshes/tangents=true
|
||||||
|
blender/meshes/skins=2
|
||||||
|
blender/meshes/export_bones_deforming_mesh_only=false
|
||||||
|
blender/materials/unpack_enabled=true
|
||||||
|
blender/materials/export_materials=1
|
||||||
|
blender/animation/limit_playback=true
|
||||||
|
blender/animation/always_sample=true
|
||||||
|
blender/animation/group_tracks=true
|
6
rooms/blue/emissive_lights.tres
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
[gd_resource type="StandardMaterial3D" format=3 uid="uid://bk5bvrignm0qk"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
emission_enabled = true
|
||||||
|
emission = Color(1, 1, 1, 1)
|
||||||
|
emission_energy_multiplier = 1.51
|
18
rooms/blue/floor_blue.tres
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
[gd_resource type="StandardMaterial3D" load_steps=3 format=3 uid="uid://bvkooqk1g0amt"]
|
||||||
|
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bok3x4q05h4vc" path="res://rooms/blue/floor_emit.png" id="1_1f6yp"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dofcck4vs8lk0" path="res://rooms/blue/floor_normal.png" id="2_iful1"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
albedo_color = Color(0.0253638, 0.0253638, 0.0253638, 1)
|
||||||
|
metallic = 0.75
|
||||||
|
metallic_specular = 0.25
|
||||||
|
roughness = 0.3
|
||||||
|
emission_enabled = true
|
||||||
|
emission_energy_multiplier = 4.0
|
||||||
|
emission_texture = ExtResource("1_1f6yp")
|
||||||
|
normal_enabled = true
|
||||||
|
normal_texture = ExtResource("2_iful1")
|
||||||
|
backlight = Color(0.251837, 0.743077, 0.72565, 1)
|
||||||
|
backlight_texture = ExtResource("1_1f6yp")
|
||||||
|
grow_amount = -0.985
|
BIN
rooms/blue/floor_emit.png
Normal file
After Width: | Height: | Size: 420 KiB |
35
rooms/blue/floor_emit.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://bok3x4q05h4vc"
|
||||||
|
path.s3tc="res://.godot/imported/floor_emit.png-e614cd3a43b3f23705b3fec951b9f8b3.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://rooms/blue/floor_emit.png"
|
||||||
|
dest_files=["res://.godot/imported/floor_emit.png-e614cd3a43b3f23705b3fec951b9f8b3.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
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/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
|
BIN
rooms/blue/floor_normal.png
Normal file
After Width: | Height: | Size: 409 KiB |
35
rooms/blue/floor_normal.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://dofcck4vs8lk0"
|
||||||
|
path.s3tc="res://.godot/imported/floor_normal.png-829737c0ee7cb4421c50398194c7b955.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://rooms/blue/floor_normal.png"
|
||||||
|
dest_files=["res://.godot/imported/floor_normal.png-829737c0ee7cb4421c50398194c7b955.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=1
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=1
|
||||||
|
roughness/src_normal="res://rooms/blue/Normal Map.png"
|
||||||
|
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
|
9
rooms/blue/normal_ceiling.tres
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://c73gwis8ocxbv"]
|
||||||
|
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dxnv3hf0kqrj7" path="res://rooms/blue/wall_normal.png" id="1_1k4hw"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
albedo_color = Color(0.396889, 0.396889, 0.396889, 1)
|
||||||
|
roughness = 0.16
|
||||||
|
normal_enabled = true
|
||||||
|
normal_texture = ExtResource("1_1k4hw")
|
136
rooms/blue/room_blue_floor.tscn
Normal file
@ -0,0 +1,136 @@
|
|||||||
|
[gd_scene load_steps=9 format=3 uid="uid://ccbxd6724rlfj"]
|
||||||
|
|
||||||
|
[ext_resource type="Material" uid="uid://bvkooqk1g0amt" path="res://rooms/blue/floor_blue.tres" id="1_hiyjn"]
|
||||||
|
[ext_resource type="Material" uid="uid://3sflsgdp35e0" path="res://rooms/blue/wall_blue.tres" id="1_ly5au"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://cqr10c1hj3x8r" path="res://rooms/blue/ceiling.blend" id="3_lvnv1"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bcsejkg5vcjgl" path="res://primitives/skybox/skybox.blend" id="4_debn2"]
|
||||||
|
|
||||||
|
[sub_resource type="BoxShape3D" id="BoxShape3D_bvvt8"]
|
||||||
|
size = Vector3(100, 100, 100)
|
||||||
|
|
||||||
|
[sub_resource type="QuadMesh" id="QuadMesh_r0d3t"]
|
||||||
|
material = ExtResource("1_hiyjn")
|
||||||
|
|
||||||
|
[sub_resource type="QuadMesh" id="QuadMesh_tk3ui"]
|
||||||
|
material = ExtResource("1_ly5au")
|
||||||
|
|
||||||
|
[sub_resource type="Environment" id="Environment_1t5lf"]
|
||||||
|
background_mode = 1
|
||||||
|
ssr_enabled = true
|
||||||
|
ssr_max_steps = 50
|
||||||
|
glow_enabled = true
|
||||||
|
glow_intensity = 0.93
|
||||||
|
glow_strength = 0.88
|
||||||
|
glow_bloom = 0.16
|
||||||
|
glow_blend_mode = 0
|
||||||
|
fog_light_color = Color(0.182804, 0.289838, 0.349834, 1)
|
||||||
|
fog_density = 0.0
|
||||||
|
adjustment_enabled = true
|
||||||
|
|
||||||
|
[node name="room_blue_floor" type="StaticBody3D"]
|
||||||
|
|
||||||
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -100, 0)
|
||||||
|
shape = SubResource("BoxShape3D_bvvt8")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D4" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 100, 0)
|
||||||
|
shape = SubResource("BoxShape3D_bvvt8")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D5" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 100, 0, 0)
|
||||||
|
shape = SubResource("BoxShape3D_bvvt8")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D6" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -100, 0, 0)
|
||||||
|
shape = SubResource("BoxShape3D_bvvt8")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D2" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 100)
|
||||||
|
shape = SubResource("BoxShape3D_bvvt8")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D3" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -100)
|
||||||
|
shape = SubResource("BoxShape3D_bvvt8")
|
||||||
|
|
||||||
|
[node name="mesh" type="Node3D" parent="."]
|
||||||
|
|
||||||
|
[node name="MeshInstance3D" type="MeshInstance3D" parent="mesh"]
|
||||||
|
transform = Transform3D(100, 0, 0, 0, -4.37114e-06, 100, 0, -100, -4.37114e-06, 0, -50, 0)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("QuadMesh_r0d3t")
|
||||||
|
|
||||||
|
[node name="MeshInstance3D2" type="MeshInstance3D" parent="mesh"]
|
||||||
|
transform = Transform3D(-4.37114e-06, 100, 0, -100, -4.37114e-06, 0, 0, 0, 100, 0, 0, -50)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("QuadMesh_tk3ui")
|
||||||
|
|
||||||
|
[node name="MeshInstance3D3" type="MeshInstance3D" parent="mesh"]
|
||||||
|
transform = Transform3D(1.91069e-13, -4.37114e-06, 100, -100, -4.37114e-06, 0, -4.37114e-06, 100, 4.37114e-06, -50, 0, 0)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("QuadMesh_tk3ui")
|
||||||
|
|
||||||
|
[node name="MeshInstance3D4" type="MeshInstance3D" parent="mesh"]
|
||||||
|
transform = Transform3D(4.37114e-06, -100, 8.74228e-06, -100, -4.37114e-06, 0, 3.82137e-13, -8.74228e-06, -100, 0, 0, 50)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("QuadMesh_tk3ui")
|
||||||
|
|
||||||
|
[node name="MeshInstance3D5" type="MeshInstance3D" parent="mesh"]
|
||||||
|
transform = Transform3D(-1.91069e-13, -4.37114e-06, -100, -100, 4.37114e-06, 0, -4.37114e-06, -100, 4.37114e-06, 50, 0, 0)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("QuadMesh_tk3ui")
|
||||||
|
|
||||||
|
[node name="ceiling" parent="mesh" instance=ExtResource("3_lvnv1")]
|
||||||
|
transform = Transform3D(50, 0, 0, 0, 50, 0, 0, 0, 50, 0, 0, 0)
|
||||||
|
|
||||||
|
[node name="SpotLight3D" type="SpotLight3D" parent="."]
|
||||||
|
transform = Transform3D(0.983255, -0.182236, -7.96577e-09, 0, -4.37114e-08, 1, -0.182236, -0.983255, -4.29794e-08, 35, 50, 35)
|
||||||
|
light_color = Color(0.73881, 0.848951, 1, 1)
|
||||||
|
light_energy = 50.0
|
||||||
|
spot_range = 500.0
|
||||||
|
spot_attenuation = 1.68179
|
||||||
|
|
||||||
|
[node name="SpotLight3D2" type="SpotLight3D" parent="."]
|
||||||
|
transform = Transform3D(0.983255, -0.182236, -7.96577e-09, 0, -4.37114e-08, 1, -0.182236, -0.983255, -4.29794e-08, -35, 50, 35)
|
||||||
|
light_color = Color(0.73881, 0.848951, 1, 1)
|
||||||
|
light_energy = 50.0
|
||||||
|
spot_range = 499.975
|
||||||
|
spot_attenuation = 1.68179
|
||||||
|
|
||||||
|
[node name="SpotLight3D3" type="SpotLight3D" parent="."]
|
||||||
|
transform = Transform3D(0.983255, -0.182236, -7.96577e-09, 0, -4.37114e-08, 1, -0.182236, -0.983255, -4.29794e-08, 35, 50, -35)
|
||||||
|
light_color = Color(0.73881, 0.848951, 1, 1)
|
||||||
|
light_energy = 50.0
|
||||||
|
spot_range = 500.0
|
||||||
|
spot_attenuation = 1.68179
|
||||||
|
|
||||||
|
[node name="SpotLight3D4" type="SpotLight3D" parent="."]
|
||||||
|
transform = Transform3D(0.983255, -0.182236, -7.96577e-09, 0, -4.37114e-08, 1, -0.182236, -0.983255, -4.29794e-08, -35, 50, -35)
|
||||||
|
light_color = Color(0.73881, 0.848951, 1, 1)
|
||||||
|
light_energy = 45.0
|
||||||
|
spot_range = 500.0
|
||||||
|
spot_attenuation = 1.68179
|
||||||
|
spot_angle = 91.57
|
||||||
|
|
||||||
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||||
|
environment = SubResource("Environment_1t5lf")
|
||||||
|
|
||||||
|
[node name="ReflectionProbe" type="ReflectionProbe" parent="."]
|
||||||
|
layers = 2
|
||||||
|
update_mode = 1
|
||||||
|
size = Vector3(101, 101, 101)
|
||||||
|
box_projection = true
|
||||||
|
interior = true
|
||||||
|
enable_shadows = true
|
||||||
|
cull_mask = 2
|
||||||
|
mesh_lod_threshold = 0.0
|
||||||
|
ambient_mode = 0
|
||||||
|
ambient_color = Color(0.873298, 0.873298, 0.873298, 1)
|
||||||
|
ambient_color_energy = 11.43
|
||||||
|
|
||||||
|
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)
|
||||||
|
light_energy = 0.01
|
||||||
|
|
||||||
|
[node name="skybox" parent="." instance=ExtResource("4_debn2")]
|
||||||
|
transform = Transform3D(400, 0, 0, 0, 400, 0, 0, 0, 400, 0, 0, 0)
|
14
rooms/blue/wall_blue.tres
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
[gd_resource type="StandardMaterial3D" load_steps=3 format=3 uid="uid://3sflsgdp35e0"]
|
||||||
|
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dsm7b746txu5x" path="res://rooms/blue/wall_emit.png" id="1_d0lb7"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dxnv3hf0kqrj7" path="res://rooms/blue/wall_normal.png" id="2_2gvi5"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
albedo_color = Color(0.0728426, 0.0728426, 0.0728426, 1)
|
||||||
|
metallic_specular = 1.0
|
||||||
|
roughness = 0.16
|
||||||
|
emission_enabled = true
|
||||||
|
emission_texture = ExtResource("1_d0lb7")
|
||||||
|
normal_enabled = true
|
||||||
|
normal_scale = 0.5
|
||||||
|
normal_texture = ExtResource("2_2gvi5")
|
BIN
rooms/blue/wall_emit.png
Normal file
After Width: | Height: | Size: 379 KiB |
35
rooms/blue/wall_emit.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://dsm7b746txu5x"
|
||||||
|
path.s3tc="res://.godot/imported/wall_emit.png-c6bde6c0bc5b9c2e0da8198cfc300691.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://rooms/blue/wall_emit.png"
|
||||||
|
dest_files=["res://.godot/imported/wall_emit.png-c6bde6c0bc5b9c2e0da8198cfc300691.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
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/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
|
BIN
rooms/blue/wall_normal.png
Normal file
After Width: | Height: | Size: 10 MiB |
35
rooms/blue/wall_normal.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://dxnv3hf0kqrj7"
|
||||||
|
path.s3tc="res://.godot/imported/wall_normal.png-1da0514643f5c768fe5633f354f1f620.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://rooms/blue/wall_normal.png"
|
||||||
|
dest_files=["res://.godot/imported/wall_normal.png-1da0514643f5c768fe5633f354f1f620.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=1
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=1
|
||||||
|
roughness/src_normal="res://rooms/blue/wall_normal.png"
|
||||||
|
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
|
BIN
rooms/yellow/Emission.png
Normal file
After Width: | Height: | Size: 305 KiB |
35
rooms/yellow/Emission.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://dijkhjlh01p8k"
|
||||||
|
path.s3tc="res://.godot/imported/Emission.png-6c11360e514b4e2a045e74cde4b7aabf.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://rooms/yellow/Emission.png"
|
||||||
|
dest_files=["res://.godot/imported/Emission.png-6c11360e514b4e2a045e74cde4b7aabf.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
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/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
|
BIN
rooms/yellow/Normal.png
Normal file
After Width: | Height: | Size: 51 MiB |
35
rooms/yellow/Normal.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://pt5h2ai7dfqq"
|
||||||
|
path.s3tc="res://.godot/imported/Normal.png-04ef4382569ba3fa7ced2d20d2b0deb5.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://rooms/yellow/Normal.png"
|
||||||
|
dest_files=["res://.godot/imported/Normal.png-04ef4382569ba3fa7ced2d20d2b0deb5.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=1
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=1
|
||||||
|
roughness/src_normal="res://rooms/yellow/Normal.png"
|
||||||
|
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
|
187
rooms/yellow/room_yellow_floor.tscn
Normal file
@ -0,0 +1,187 @@
|
|||||||
|
[gd_scene load_steps=9 format=3 uid="uid://bjs6r15h7ge62"]
|
||||||
|
|
||||||
|
[ext_resource type="Material" uid="uid://c2bppsuxirk3j" path="res://rooms/yellow/wall_yellow.tres" id="1_r5s2i"]
|
||||||
|
[ext_resource type="Material" uid="uid://bk5bvrignm0qk" path="res://rooms/blue/emissive_lights.tres" id="3_36idt"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bcsejkg5vcjgl" path="res://primitives/skybox/skybox.blend" id="3_75x0b"]
|
||||||
|
|
||||||
|
[sub_resource type="BoxShape3D" id="BoxShape3D_sn4y7"]
|
||||||
|
size = Vector3(100, 100, 100)
|
||||||
|
|
||||||
|
[sub_resource type="QuadMesh" id="QuadMesh_r6p2x"]
|
||||||
|
material = ExtResource("1_r5s2i")
|
||||||
|
|
||||||
|
[sub_resource type="QuadMesh" id="QuadMesh_aifp0"]
|
||||||
|
material = ExtResource("1_r5s2i")
|
||||||
|
|
||||||
|
[sub_resource type="SphereMesh" id="SphereMesh_12bag"]
|
||||||
|
material = ExtResource("3_36idt")
|
||||||
|
|
||||||
|
[sub_resource type="Environment" id="Environment_ixm8g"]
|
||||||
|
background_mode = 1
|
||||||
|
ssr_enabled = true
|
||||||
|
ssr_max_steps = 50
|
||||||
|
glow_enabled = true
|
||||||
|
glow_intensity = 0.93
|
||||||
|
glow_strength = 0.88
|
||||||
|
glow_bloom = 0.16
|
||||||
|
glow_blend_mode = 0
|
||||||
|
fog_light_color = Color(0.182804, 0.289838, 0.349834, 1)
|
||||||
|
fog_density = 0.0
|
||||||
|
adjustment_enabled = true
|
||||||
|
|
||||||
|
[node name="room_yellow_floor" type="StaticBody3D"]
|
||||||
|
|
||||||
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -100, 0)
|
||||||
|
shape = SubResource("BoxShape3D_sn4y7")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D4" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 100, 0)
|
||||||
|
shape = SubResource("BoxShape3D_sn4y7")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D5" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 100, 0, 0)
|
||||||
|
shape = SubResource("BoxShape3D_sn4y7")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D6" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -100, 0, 0)
|
||||||
|
shape = SubResource("BoxShape3D_sn4y7")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D2" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 100)
|
||||||
|
shape = SubResource("BoxShape3D_sn4y7")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D3" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -100)
|
||||||
|
shape = SubResource("BoxShape3D_sn4y7")
|
||||||
|
|
||||||
|
[node name="mesh" type="Node3D" parent="."]
|
||||||
|
|
||||||
|
[node name="MeshInstance3D" type="MeshInstance3D" parent="mesh"]
|
||||||
|
transform = Transform3D(100, 0, 0, 0, -4.37114e-06, 100, 0, -100, -4.37114e-06, 0, -50, 0)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("QuadMesh_r6p2x")
|
||||||
|
|
||||||
|
[node name="MeshInstance3D2" type="MeshInstance3D" parent="mesh"]
|
||||||
|
transform = Transform3D(-4.37114e-06, 100, 0, -100, -4.37114e-06, 0, 0, 0, 100, 0, 0, -50)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("QuadMesh_aifp0")
|
||||||
|
|
||||||
|
[node name="MeshInstance3D3" type="MeshInstance3D" parent="mesh"]
|
||||||
|
transform = Transform3D(1.91069e-13, -4.37114e-06, 100, -100, -4.37114e-06, 0, -4.37114e-06, 100, 4.37114e-06, -50, 0, 0)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("QuadMesh_aifp0")
|
||||||
|
|
||||||
|
[node name="MeshInstance3D4" type="MeshInstance3D" parent="mesh"]
|
||||||
|
transform = Transform3D(4.37114e-06, -100, 8.74228e-06, -100, -4.37114e-06, 0, 3.82137e-13, -8.74228e-06, -100, 0, 0, 50)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("QuadMesh_aifp0")
|
||||||
|
|
||||||
|
[node name="MeshInstance3D5" type="MeshInstance3D" parent="mesh"]
|
||||||
|
transform = Transform3D(-1.91069e-13, -4.37114e-06, -100, -100, 4.37114e-06, 0, -4.37114e-06, -100, 4.37114e-06, 50, 0, 0)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("QuadMesh_aifp0")
|
||||||
|
|
||||||
|
[node name="MeshInstance3D6" type="MeshInstance3D" parent="mesh"]
|
||||||
|
transform = Transform3D(100, 0, 0, 0, -4.37114e-06, -100, 0, 100, -4.37114e-06, 0, 50, 0)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("QuadMesh_r6p2x")
|
||||||
|
skeleton = NodePath("../MeshInstance3D")
|
||||||
|
|
||||||
|
[node name="SpotLight3D" type="SpotLight3D" parent="."]
|
||||||
|
transform = Transform3D(0.887011, -0.461749, -2.01837e-08, 0, -4.37114e-08, 1, -0.461749, -0.887011, -3.87725e-08, 0, 50, 0)
|
||||||
|
light_color = Color(1, 0.973115, 0.786325, 1)
|
||||||
|
light_energy = 50.0
|
||||||
|
spot_range = 500.0
|
||||||
|
spot_attenuation = 1.68179
|
||||||
|
|
||||||
|
[node name="MeshInstance3D" type="MeshInstance3D" parent="SpotLight3D"]
|
||||||
|
transform = Transform3D(5.94297, -3.09372, 2.01837e-08, -3.09372, -5.94297, 8.24839e-08, -1.35231e-07, -5.52642e-07, -1, 0, 4.37103e-09, -0.0999985)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("SphereMesh_12bag")
|
||||||
|
skeleton = NodePath("../..")
|
||||||
|
|
||||||
|
[node name="SpotLight3D3" type="SpotLight3D" parent="."]
|
||||||
|
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 50, 0, 0)
|
||||||
|
light_color = Color(1, 0.973115, 0.786325, 1)
|
||||||
|
light_energy = 50.0
|
||||||
|
spot_range = 500.0
|
||||||
|
spot_attenuation = 1.68179
|
||||||
|
|
||||||
|
[node name="MeshInstance3D" type="MeshInstance3D" parent="SpotLight3D3"]
|
||||||
|
transform = Transform3D(5.94297, -3.09372, 2.01837e-08, -3.09372, -5.94297, 8.24839e-08, -1.35231e-07, -5.52642e-07, -1, 0, 4.37103e-09, -0.0999985)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("SphereMesh_12bag")
|
||||||
|
skeleton = NodePath("../..")
|
||||||
|
|
||||||
|
[node name="SpotLight3D4" type="SpotLight3D" parent="."]
|
||||||
|
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -50, 0, 0)
|
||||||
|
light_color = Color(1, 0.973115, 0.786325, 1)
|
||||||
|
light_energy = 50.0
|
||||||
|
spot_range = 500.0
|
||||||
|
spot_attenuation = 1.68179
|
||||||
|
|
||||||
|
[node name="MeshInstance3D" type="MeshInstance3D" parent="SpotLight3D4"]
|
||||||
|
transform = Transform3D(5.94297, -3.09372, 2.01837e-08, -3.09372, -5.94297, 8.24839e-08, -1.35231e-07, -5.52642e-07, -1, 0, 4.37103e-09, -0.0999985)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("SphereMesh_12bag")
|
||||||
|
skeleton = NodePath("../..")
|
||||||
|
|
||||||
|
[node name="SpotLight3D5" type="SpotLight3D" parent="."]
|
||||||
|
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, -50)
|
||||||
|
light_color = Color(1, 0.973115, 0.786325, 1)
|
||||||
|
light_energy = 50.0
|
||||||
|
spot_range = 500.0
|
||||||
|
spot_attenuation = 1.68179
|
||||||
|
|
||||||
|
[node name="MeshInstance3D" type="MeshInstance3D" parent="SpotLight3D5"]
|
||||||
|
transform = Transform3D(5.94297, -3.09372, 2.01837e-08, -3.09372, -5.94297, 8.24839e-08, -1.35231e-07, -5.52642e-07, -1, 0, 4.37103e-09, -0.0999985)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("SphereMesh_12bag")
|
||||||
|
skeleton = NodePath("../..")
|
||||||
|
|
||||||
|
[node name="SpotLight3D6" type="SpotLight3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 50)
|
||||||
|
light_color = Color(1, 0.973115, 0.786325, 1)
|
||||||
|
light_energy = 50.0
|
||||||
|
spot_range = 500.0
|
||||||
|
spot_attenuation = 1.68179
|
||||||
|
|
||||||
|
[node name="MeshInstance3D" type="MeshInstance3D" parent="SpotLight3D6"]
|
||||||
|
transform = Transform3D(5.94297, -3.09372, 2.01837e-08, -3.09372, -5.94297, 8.24839e-08, -1.35231e-07, -5.52642e-07, -1, 0, 4.37103e-09, -0.0999985)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("SphereMesh_12bag")
|
||||||
|
skeleton = NodePath("../..")
|
||||||
|
|
||||||
|
[node name="SpotLight3D2" type="SpotLight3D" parent="."]
|
||||||
|
transform = Transform3D(0.887011, -0.461749, -2.01837e-08, 0, -4.37114e-08, 1, -0.461749, -0.887011, -3.87725e-08, 0, -50, 0)
|
||||||
|
light_color = Color(1, 0.973115, 0.786325, 1)
|
||||||
|
light_energy = 50.0
|
||||||
|
spot_range = 500.0
|
||||||
|
spot_attenuation = 1.68179
|
||||||
|
spot_angle = 109.06
|
||||||
|
|
||||||
|
[node name="MeshInstance3D" type="MeshInstance3D" parent="SpotLight3D2"]
|
||||||
|
transform = Transform3D(5.94297, -3.09372, 2.01837e-08, -3.09372, -5.94297, 8.24839e-08, -1.35231e-07, -5.52642e-07, -1, 0, 4.37103e-09, -0.0999985)
|
||||||
|
layers = 3
|
||||||
|
mesh = SubResource("SphereMesh_12bag")
|
||||||
|
skeleton = NodePath("../..")
|
||||||
|
|
||||||
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||||
|
environment = SubResource("Environment_ixm8g")
|
||||||
|
|
||||||
|
[node name="ReflectionProbe" type="ReflectionProbe" parent="."]
|
||||||
|
layers = 2
|
||||||
|
update_mode = 1
|
||||||
|
size = Vector3(101, 101, 101)
|
||||||
|
box_projection = true
|
||||||
|
interior = true
|
||||||
|
enable_shadows = true
|
||||||
|
cull_mask = 2
|
||||||
|
mesh_lod_threshold = 0.0
|
||||||
|
ambient_mode = 0
|
||||||
|
ambient_color = Color(0.873298, 0.873298, 0.873298, 1)
|
||||||
|
ambient_color_energy = 11.43
|
||||||
|
|
||||||
|
[node name="skybox" parent="." instance=ExtResource("3_75x0b")]
|
||||||
|
transform = Transform3D(400, 0, 0, 0, 400, 0, 0, 0, 400, 0, 0, 0)
|
14
rooms/yellow/wall_yellow.tres
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
[gd_resource type="StandardMaterial3D" load_steps=3 format=3 uid="uid://c2bppsuxirk3j"]
|
||||||
|
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dijkhjlh01p8k" path="res://rooms/yellow/Emission.png" id="1_wbw8g"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://pt5h2ai7dfqq" path="res://rooms/yellow/Normal.png" id="2_24uyc"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
albedo_color = Color(0.0728426, 0.0728426, 0.0728426, 1)
|
||||||
|
metallic_specular = 1.0
|
||||||
|
roughness = 0.16
|
||||||
|
emission_enabled = true
|
||||||
|
emission_texture = ExtResource("1_wbw8g")
|
||||||
|
normal_enabled = true
|
||||||
|
normal_scale = 0.5
|
||||||
|
normal_texture = ExtResource("2_24uyc")
|
39
testscene.tscn
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
[gd_scene load_steps=7 format=3 uid="uid://dosqj5u034nai"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://pyhlicd4a0ec" path="res://player/player_node.tscn" id="1_6ggf4"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bjs6r15h7ge62" path="res://rooms/yellow/room_yellow_floor.tscn" id="3_1isy3"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://ccbxd6724rlfj" path="res://rooms/blue/room_blue_floor.tscn" id="3_ql6ir"]
|
||||||
|
|
||||||
|
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_8njux"]
|
||||||
|
friction = 0.22
|
||||||
|
rough = true
|
||||||
|
|
||||||
|
[sub_resource type="BoxMesh" id="BoxMesh_uqix0"]
|
||||||
|
|
||||||
|
[sub_resource type="ConvexPolygonShape3D" id="ConvexPolygonShape3D_3iv3b"]
|
||||||
|
points = PackedVector3Array(-0.5, -0.5, -0.5, 0.5, -0.5, -0.5, -0.5, 0.5, -0.5, -0.5, -0.5, 0.5, 0.5, 0.5, -0.5, -0.5, 0.5, 0.5, 0.5, -0.5, 0.5, 0.5, 0.5, 0.5)
|
||||||
|
|
||||||
|
[node name="Node3D" type="Node3D"]
|
||||||
|
|
||||||
|
[node name="player" parent="." instance=ExtResource("1_6ggf4")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.3796, 0)
|
||||||
|
|
||||||
|
[node name="room_blue_floor" parent="." instance=ExtResource("3_ql6ir")]
|
||||||
|
|
||||||
|
[node name="s" type="RigidBody3D" parent="."]
|
||||||
|
mass = 0.25
|
||||||
|
physics_material_override = SubResource("PhysicsMaterial_8njux")
|
||||||
|
linear_damp = 1.0
|
||||||
|
angular_damp = 1.0
|
||||||
|
|
||||||
|
[node name="MeshInstance3D" type="MeshInstance3D" parent="s"]
|
||||||
|
transform = Transform3D(3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0)
|
||||||
|
mesh = SubResource("BoxMesh_uqix0")
|
||||||
|
skeleton = NodePath("../..")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="s"]
|
||||||
|
transform = Transform3D(3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0)
|
||||||
|
shape = SubResource("ConvexPolygonShape3D_3iv3b")
|
||||||
|
|
||||||
|
[node name="StaticBody3D" parent="." instance=ExtResource("3_1isy3")]
|
||||||
|
visible = false
|