diff --git a/.github/actions/create-native-build/action.yaml b/.github/actions/create-native-build/action.yaml index 09f49152..cbae9ff2 100644 --- a/.github/actions/create-native-build/action.yaml +++ b/.github/actions/create-native-build/action.yaml @@ -17,6 +17,9 @@ inputs: description: The password for fmod account used to download fmod binaries. shell: description: The shell used by the runner. + artifact-suffix: + description: Optional suffix for the artifact name. + default: "" runs: using: composite steps: @@ -106,6 +109,6 @@ runs: - name: Upload Artifact uses: actions/upload-artifact@v4 with: - name: ${{ inputs.platform }}-${{ inputs.target }} - path: ${{ env.TARGET_PATH }}${{ inputs.platform }}/**/*.* + name: ${{ inputs.platform }}-${{ inputs.target }}${{ inputs.artifact-suffix }} + path: ${{ env.TARGET_PATH }}${{ inputs.platform }}/**/* if-no-files-found: error diff --git a/.github/workflows/check_pr.yml b/.github/workflows/check_pr.yml index 338efbb5..98e163f2 100644 --- a/.github/workflows/check_pr.yml +++ b/.github/workflows/check_pr.yml @@ -142,6 +142,7 @@ jobs: os: "macos-14" platform: ios target: template_debug + flags: arch=arm64 fmod-executable-suffix: ios.dmg shell: bash @@ -149,6 +150,7 @@ jobs: os: "macos-14" platform: ios target: template_release + flags: arch=arm64 fmod-executable-suffix: ios.dmg shell: bash diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a9a970a7..2856b1d6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -123,6 +123,7 @@ jobs: os: "macos-14" platform: ios target: template_debug + flags: arch=arm64 fmod-executable-suffix: ios.dmg shell: bash @@ -130,9 +131,46 @@ jobs: os: "macos-14" platform: ios target: template_release + flags: arch=arm64 fmod-executable-suffix: ios.dmg shell: bash + - name: iOS Simulator x86_64 Debug Compilation + os: "macos-14" + platform: ios + target: template_debug + flags: ios_simulator=yes arch=x86_64 + fmod-executable-suffix: ios.dmg + artifact-suffix: "-sim-x64" + shell: bash + + - name: iOS Simulator x86_64 Release Compilation + os: "macos-14" + platform: ios + target: template_release + flags: ios_simulator=yes arch=x86_64 + fmod-executable-suffix: ios.dmg + artifact-suffix: "-sim-x64" + shell: bash + + - name: iOS Simulator arm64 Debug Compilation + os: "macos-14" + platform: ios + target: template_debug + flags: ios_simulator=yes arch=arm64 + fmod-executable-suffix: ios.dmg + artifact-suffix: "-sim-arm64" + shell: bash + + - name: iOS Simulator arm64 Release Compilation + os: "macos-14" + platform: ios + target: template_release + flags: ios_simulator=yes arch=arm64 + fmod-executable-suffix: ios.dmg + artifact-suffix: "-sim-arm64" + shell: bash + steps: - name: Checkout uses: actions/checkout@v4 @@ -158,9 +196,73 @@ jobs: fmod-user: ${{ secrets.FMODUSER }} fmod-password: ${{ secrets.FMODPASS }} shell: ${{ matrix.shell }} + artifact-suffix: ${{ matrix.artifact-suffix }} - package-godot-addon: + merge-ios-xcframework: + name: Merge iOS XCFrameworks (${{ matrix.target }}) needs: [build] + runs-on: "macos-14" + strategy: + matrix: + target: [template_debug, template_release] + steps: + - name: Download iOS Device + uses: actions/download-artifact@v4 + with: + name: ios-${{ matrix.target }} + path: ios-device + + - name: Download iOS Simulator x64 + uses: actions/download-artifact@v4 + with: + name: ios-${{ matrix.target }}-sim-x64 + path: ios-sim-x64 + + - name: Download iOS Simulator arm64 + uses: actions/download-artifact@v4 + with: + name: ios-${{ matrix.target }}-sim-arm64 + path: ios-sim-arm64 + + - name: Merge Simulator Binaries (Dynamic) + run: | + mkdir -p ios-sim-universal + SIM_X64=$(find ios-sim-x64 -name "${{ env.TARGET_NAME }}.ios.${{ matrix.target }}.x86_64.simulator.dylib" | head -n 1) + SIM_ARM64=$(find ios-sim-arm64 -name "${{ env.TARGET_NAME }}.ios.${{ matrix.target }}.arm64.simulator.dylib" | head -n 1) + echo "SIM_X64: $SIM_X64" + echo "SIM_ARM64: $SIM_ARM64" + lipo -create "$SIM_X64" "$SIM_ARM64" -output ios-sim-universal/libGodotFmod.ios.${{ matrix.target }}.simulator.dylib + + - name: Create Universal XCFramework (Bridge) + run: | + DEVICE_LIB=$(find ios-device -name "${{ env.TARGET_NAME }}.ios.${{ matrix.target }}.arm64.dylib" | head -n 1) + SIM_LIB=ios-sim-universal/libGodotFmod.ios.${{ matrix.target }}.simulator.dylib + echo "DEVICE_LIB: $DEVICE_LIB" + echo "SIM_LIB: $SIM_LIB" + + # Generate dSYMs for both libraries + dsymutil "$DEVICE_LIB" -o "${DEVICE_LIB}.dSYM" + dsymutil "$SIM_LIB" -o "${SIM_LIB}.dSYM" + + xcodebuild -create-xcframework \ + -library "$DEVICE_LIB" -debug-symbols "$(pwd)/${DEVICE_LIB}.dSYM" \ + -library "$SIM_LIB" -debug-symbols "$(pwd)/${SIM_LIB}.dSYM" \ + -output ${{ env.TARGET_NAME }}.ios.${{ matrix.target }}.xcframework + + - name: Copy FMOD XCFrameworks + run: | + cp -R ios-device/fmod*.xcframework . + + - name: Upload Merged Artifacts + uses: actions/upload-artifact@v4 + with: + name: ios-merged-${{ matrix.target }} + path: | + ${{ env.TARGET_NAME }}.ios.${{ matrix.target }}.xcframework + fmod*.xcframework + + package-godot-addon: + needs: [build, merge-ios-xcframework] strategy: matrix: include: @@ -235,14 +337,14 @@ jobs: - name: Download iOS template_debug libraries uses: actions/download-artifact@v4 with: - name: ios-template_debug - path: demo/addons/fmod/libs/iOS/ + name: ios-merged-template_debug + path: demo/addons/fmod/libs/ios/ - name: Download iOS template_release libraries uses: actions/download-artifact@v4 with: - name: ios-template_release - path: demo/addons/fmod/libs/iOS/ + name: ios-merged-template_release + path: demo/addons/fmod/libs/ios/ - name: Download android editor libraries uses: actions/download-artifact@v4 diff --git a/.gitignore b/.gitignore index fa98f482..24674ab1 100644 --- a/.gitignore +++ b/.gitignore @@ -139,6 +139,7 @@ config.log **/*.editor demo/addons/fmod/libs/android/aar/ +build_libs/ *.pdb .vs \ No newline at end of file diff --git a/SConstruct b/SConstruct index 16d843e9..56983998 100644 --- a/SConstruct +++ b/SConstruct @@ -13,6 +13,8 @@ env = SConscript("godot-cpp/SConstruct") # Add those directory manually, so we can skip the godot_cpp directory when including headers in C++ files source_path = [ + os.path.join("godot-cpp", "include"), + os.path.join("godot-cpp", "gen", "include"), os.path.join("godot-cpp", "include","godot_cpp"), os.path.join("godot-cpp", "gen", "include","godot_cpp") ] @@ -96,16 +98,24 @@ elif env["platform"] == "windows": env.Append(CCFLAGS=["/FS", "/Zi"]) elif env["platform"] == "ios": - libfmod = 'libfmod%s_iphoneos.a' % lfix - libfmodstudio = 'libfmodstudio%s_iphoneos.a' % lfix - - env.Append(CPPPATH=[env['fmod_lib_dir'] + 'ios/core/inc/', env['fmod_lib_dir'] + 'ios/studio/inc/']) - env.Append(LIBPATH=[env['fmod_lib_dir'] + 'ios/core/lib/', env['fmod_lib_dir'] + 'ios/studio/lib/']) + ios_platform = "iphonesimulator" if env["ios_simulator"] else "iphoneos" + libfmod = 'libfmod%s_%s.a' % (lfix, ios_platform) + libfmodstudio = 'libfmodstudio%s_%s.a' % (lfix, ios_platform) + + # Use the local libs/ios folder which should exist via symlink + fmod_ios_inc = 'libs/ios/' + if not os.path.exists(fmod_ios_inc): + # Fallback to the provided prefix if symlink doesn't exist + fmod_ios_inc = env['fmod_lib_dir'] + 'ios/' + + env.Append(CPPPATH=[fmod_ios_inc + 'core/inc/', fmod_ios_inc + 'studio/inc/']) + env.Append(LIBPATH=[fmod_ios_inc + 'core/lib/', fmod_ios_inc + 'studio/lib/']) env.Append(LIBS=[libfmod, libfmodstudio]) - env.Append(LINKFLAGS=[ - '-Wl,-undefined,dynamic_lookup', "-miphoneos-version-min=" + env["ios_min_version"] - ]) + ios_link_flags = ['-Wl,-undefined,dynamic_lookup'] + if not env["ios_simulator"]: + ios_link_flags.append("-miphoneos-version-min=" + env["ios_min_version"]) + env.Append(LINKFLAGS=ios_link_flags) elif env["platform"] == "android": libfmod = 'libfmod%s.so' % lfix @@ -137,18 +147,26 @@ if env["platform"] == "macos": env["target"] ) else: - target = "{}.{}{}".format( + ios_sim_suffix = ".simulator" if env["platform"] == "ios" and env.get("ios_simulator", False) else "" + target = "{}.{}{}{}".format( target, env["arch"], + ios_sim_suffix, env["SHLIBSUFFIX"] ) + target_out = target library = env.SharedLibrary(target=target, source=sources) def sys_exec(args): - proc = subprocess.Popen(args, stdout=subprocess.PIPE, text=True) + print("Running command: " + " ".join(args)) + proc = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True) (out, err) = proc.communicate() + if proc.returncode != 0: + print("Error executing command: " + " ".join(args)) + print("Error output: " + err) + Exit(proc.returncode) return out.rstrip("\r\n").lstrip() @@ -162,13 +180,70 @@ if env["platform"] == "ios": ) def create_xcframework(self, arg, env, executor = None): - sys_exec(["xcodebuild", "-create-xcframework", "-library", target, "-output", xcframework_path]) - sys_exec(["rm", target]) - sys_exec(["/usr/libexec/PlistBuddy", "-c", "Add :MinimumOSVersion string " + env["ios_min_version"], "{}/Info.plist".format(xcframework_path)]) + if os.path.exists(xcframework_path): + shutil.rmtree(xcframework_path) + + # Base target path without architecture or simulator suffix + base_target = "{}{}/{}.{}.{}".format( + target_path, env["platform"], target_name, env["platform"], env["target"] + ) + + # We want to find the device and simulator libraries for this target + # e.g. for ios: .arm64.dylib and .simulator.dylib + libs = [] + + # Device library (try .arm64.dylib, then fall back to .universal.dylib if found) + device_lib_arm64 = "{}.arm64{}".format(base_target, env["SHLIBSUFFIX"]) + device_lib_universal = "{}.universal{}".format(base_target, env["SHLIBSUFFIX"]) + + if os.path.exists(device_lib_arm64): + libs.append(device_lib_arm64) + elif os.path.exists(device_lib_universal): + libs.append(device_lib_universal) + + # Simulator library (prefer universal simulator if it exists) + sim_universal = "{}.simulator{}".format(base_target, env["SHLIBSUFFIX"]) + sim_universal_alt = "{}.universal.simulator{}".format(base_target, env["SHLIBSUFFIX"]) + + if os.path.exists(sim_universal): + libs.append(sim_universal) + elif os.path.exists(sim_universal_alt): + libs.append(sim_universal_alt) + else: + # Fallback to arch-specific simulator build if universal doesn't exist + sim_arch = "{}.{}.simulator{}".format(base_target, env["arch"], env["SHLIBSUFFIX"]) + if os.path.exists(sim_arch): + libs.append(sim_arch) + + if not libs: + print("No libraries found to create xcframework for target: " + base_target) + return + + cmd = ["xcodebuild", "-create-xcframework"] + dsym_paths = [] + for lib in libs: + dsym_path = os.path.abspath(lib + ".dSYM") + abs_lib = os.path.abspath(lib) + sys_exec(["dsymutil", abs_lib, "-o", dsym_path]) + if os.path.exists(dsym_path): + cmd.extend(["-library", abs_lib, "-debug-symbols", dsym_path]) + else: + cmd.extend(["-library", abs_lib]) + dsym_paths.append(dsym_path) + + cmd.extend(["-output", xcframework_path]) + sys_exec(cmd) + + # Add MinimumOSVersion to Info.plist + plutil_cmd = ["/usr/libexec/PlistBuddy", "-c", "Add :MinimumOSVersion string " + env["ios_min_version"], "{}/Info.plist".format(xcframework_path)] + sys_exec(plutil_cmd) create_xcframework_action = Action('', create_xcframework) - AddPostAction(library, create_xcframework_action) + # Only create xcframework on device builds; simulator builds produce + # individual dylibs that the CI merge-ios-xcframework job combines. + if not env.get("ios_simulator", False): + AddPostAction(library, create_xcframework_action) def copy_fmod_libraries(self, arg, env, executor = None): diff --git a/demo/addons/fmod/.gitignore b/demo/addons/fmod/.gitignore index de430593..a41c488c 100644 --- a/demo/addons/fmod/.gitignore +++ b/demo/addons/fmod/.gitignore @@ -4,4 +4,9 @@ *.so *.so.* *.xcframework -!libs/ \ No newline at end of file +!libs/ +!libs/**/*.a +!libs/**/*.dylib +!libs/**/*.xcframework +!libs/**/*.dll +!libs/**/*.so \ No newline at end of file diff --git a/demo/addons/fmod/fmod.gdextension b/demo/addons/fmod/fmod.gdextension index eacba962..387ccbf7 100644 --- a/demo/addons/fmod/fmod.gdextension +++ b/demo/addons/fmod/fmod.gdextension @@ -1,6 +1,6 @@ [configuration] entry_symbol = "fmod_library_init" -compatibility_minimum = 4.5 +compatibility_minimum = 4.1 [libraries] windows.editor.x86_64 = "res://addons/fmod/libs/windows/libGodotFmod.windows.editor.x86_64.dll" @@ -92,10 +92,10 @@ android.release.arm64 = { "libs/android/arm64/libfmodstudio.so": "", } ios.debug = { -"libs/ios/libfmodL_iphoneos.a": "", -"libs/ios/libfmodstudioL_iphoneos.a": "" +"libs/ios/fmodL.xcframework": "", +"libs/ios/fmodstudioL.xcframework": "" } ios.release = { -"libs/ios/libfmod_iphoneos.a": "", -"libs/ios/libfmodstudio_iphoneos.a": "" +"libs/ios/fmod.xcframework": "", +"libs/ios/fmodstudio.xcframework": "" } \ No newline at end of file diff --git a/demo/addons/fmod/libs/iOS/CopyPast_Fmod_Libs_Here.txt b/demo/addons/fmod/libs/ios/CopyPast_Fmod_Libs_Here.txt similarity index 100% rename from demo/addons/fmod/libs/iOS/CopyPast_Fmod_Libs_Here.txt rename to demo/addons/fmod/libs/ios/CopyPast_Fmod_Libs_Here.txt diff --git a/demo/addons/fmod/libs/ios/fmod.xcframework/Info.plist b/demo/addons/fmod/libs/ios/fmod.xcframework/Info.plist new file mode 100644 index 00000000..2218b8e4 --- /dev/null +++ b/demo/addons/fmod/libs/ios/fmod.xcframework/Info.plist @@ -0,0 +1,45 @@ + + + + + AvailableLibraries + + + BinaryPath + libfmod_iphonesimulator.a + LibraryIdentifier + ios-arm64_x86_64-simulator + LibraryPath + libfmod_iphonesimulator.a + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + simulator + + + BinaryPath + libfmod_iphoneos.a + LibraryIdentifier + ios-arm64_arm64e + LibraryPath + libfmod_iphoneos.a + SupportedArchitectures + + arm64 + arm64e + + SupportedPlatform + ios + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/demo/addons/fmod/libs/ios/fmod.xcframework/ios-arm64_arm64e/libfmod_iphoneos.a b/demo/addons/fmod/libs/ios/fmod.xcframework/ios-arm64_arm64e/libfmod_iphoneos.a new file mode 100644 index 00000000..7645cd41 Binary files /dev/null and b/demo/addons/fmod/libs/ios/fmod.xcframework/ios-arm64_arm64e/libfmod_iphoneos.a differ diff --git a/demo/addons/fmod/libs/ios/fmod.xcframework/ios-arm64_x86_64-simulator/libfmod_iphonesimulator.a b/demo/addons/fmod/libs/ios/fmod.xcframework/ios-arm64_x86_64-simulator/libfmod_iphonesimulator.a new file mode 100644 index 00000000..92ad62ea Binary files /dev/null and b/demo/addons/fmod/libs/ios/fmod.xcframework/ios-arm64_x86_64-simulator/libfmod_iphonesimulator.a differ diff --git a/demo/addons/fmod/libs/ios/fmodL.xcframework/Info.plist b/demo/addons/fmod/libs/ios/fmodL.xcframework/Info.plist new file mode 100644 index 00000000..8e02c42d --- /dev/null +++ b/demo/addons/fmod/libs/ios/fmodL.xcframework/Info.plist @@ -0,0 +1,45 @@ + + + + + AvailableLibraries + + + BinaryPath + libfmodL_iphonesimulator.a + LibraryIdentifier + ios-arm64_x86_64-simulator + LibraryPath + libfmodL_iphonesimulator.a + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + simulator + + + BinaryPath + libfmodL_iphoneos.a + LibraryIdentifier + ios-arm64_arm64e + LibraryPath + libfmodL_iphoneos.a + SupportedArchitectures + + arm64 + arm64e + + SupportedPlatform + ios + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/demo/addons/fmod/libs/ios/fmodL.xcframework/ios-arm64_arm64e/libfmodL_iphoneos.a b/demo/addons/fmod/libs/ios/fmodL.xcframework/ios-arm64_arm64e/libfmodL_iphoneos.a new file mode 100644 index 00000000..0bebfb2c Binary files /dev/null and b/demo/addons/fmod/libs/ios/fmodL.xcframework/ios-arm64_arm64e/libfmodL_iphoneos.a differ diff --git a/demo/addons/fmod/libs/ios/fmodL.xcframework/ios-arm64_x86_64-simulator/libfmodL_iphonesimulator.a b/demo/addons/fmod/libs/ios/fmodL.xcframework/ios-arm64_x86_64-simulator/libfmodL_iphonesimulator.a new file mode 100644 index 00000000..a99ea3d9 Binary files /dev/null and b/demo/addons/fmod/libs/ios/fmodL.xcframework/ios-arm64_x86_64-simulator/libfmodL_iphonesimulator.a differ diff --git a/demo/addons/fmod/libs/ios/fmodstudio.xcframework/Info.plist b/demo/addons/fmod/libs/ios/fmodstudio.xcframework/Info.plist new file mode 100644 index 00000000..8cf2e193 --- /dev/null +++ b/demo/addons/fmod/libs/ios/fmodstudio.xcframework/Info.plist @@ -0,0 +1,45 @@ + + + + + AvailableLibraries + + + BinaryPath + libfmodstudio_iphonesimulator.a + LibraryIdentifier + ios-arm64_x86_64-simulator + LibraryPath + libfmodstudio_iphonesimulator.a + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + simulator + + + BinaryPath + libfmodstudio_iphoneos.a + LibraryIdentifier + ios-arm64_arm64e + LibraryPath + libfmodstudio_iphoneos.a + SupportedArchitectures + + arm64 + arm64e + + SupportedPlatform + ios + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/demo/addons/fmod/libs/ios/fmodstudio.xcframework/ios-arm64_arm64e/libfmodstudio_iphoneos.a b/demo/addons/fmod/libs/ios/fmodstudio.xcframework/ios-arm64_arm64e/libfmodstudio_iphoneos.a new file mode 100644 index 00000000..39c609dc Binary files /dev/null and b/demo/addons/fmod/libs/ios/fmodstudio.xcframework/ios-arm64_arm64e/libfmodstudio_iphoneos.a differ diff --git a/demo/addons/fmod/libs/ios/fmodstudio.xcframework/ios-arm64_x86_64-simulator/libfmodstudio_iphonesimulator.a b/demo/addons/fmod/libs/ios/fmodstudio.xcframework/ios-arm64_x86_64-simulator/libfmodstudio_iphonesimulator.a new file mode 100644 index 00000000..64f9eefd Binary files /dev/null and b/demo/addons/fmod/libs/ios/fmodstudio.xcframework/ios-arm64_x86_64-simulator/libfmodstudio_iphonesimulator.a differ diff --git a/demo/addons/fmod/libs/ios/fmodstudioL.xcframework/Info.plist b/demo/addons/fmod/libs/ios/fmodstudioL.xcframework/Info.plist new file mode 100644 index 00000000..fae8cef8 --- /dev/null +++ b/demo/addons/fmod/libs/ios/fmodstudioL.xcframework/Info.plist @@ -0,0 +1,45 @@ + + + + + AvailableLibraries + + + BinaryPath + libfmodstudioL_iphonesimulator.a + LibraryIdentifier + ios-arm64_x86_64-simulator + LibraryPath + libfmodstudioL_iphonesimulator.a + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + simulator + + + BinaryPath + libfmodstudioL_iphoneos.a + LibraryIdentifier + ios-arm64_arm64e + LibraryPath + libfmodstudioL_iphoneos.a + SupportedArchitectures + + arm64 + arm64e + + SupportedPlatform + ios + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/demo/addons/fmod/libs/ios/fmodstudioL.xcframework/ios-arm64_arm64e/libfmodstudioL_iphoneos.a b/demo/addons/fmod/libs/ios/fmodstudioL.xcframework/ios-arm64_arm64e/libfmodstudioL_iphoneos.a new file mode 100644 index 00000000..58d1875d Binary files /dev/null and b/demo/addons/fmod/libs/ios/fmodstudioL.xcframework/ios-arm64_arm64e/libfmodstudioL_iphoneos.a differ diff --git a/demo/addons/fmod/libs/ios/fmodstudioL.xcframework/ios-arm64_x86_64-simulator/libfmodstudioL_iphonesimulator.a b/demo/addons/fmod/libs/ios/fmodstudioL.xcframework/ios-arm64_x86_64-simulator/libfmodstudioL_iphonesimulator.a new file mode 100644 index 00000000..d0ac6174 Binary files /dev/null and b/demo/addons/fmod/libs/ios/fmodstudioL.xcframework/ios-arm64_x86_64-simulator/libfmodstudioL_iphonesimulator.a differ diff --git a/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.arm64.dylib b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.arm64.dylib new file mode 100755 index 00000000..d237c965 Binary files /dev/null and b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.arm64.dylib differ diff --git a/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.arm64.simulator.dylib b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.arm64.simulator.dylib new file mode 100755 index 00000000..6dae427b Binary files /dev/null and b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.arm64.simulator.dylib differ diff --git a/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.simulator.dylib b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.simulator.dylib new file mode 100755 index 00000000..7e4dd1f7 Binary files /dev/null and b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.simulator.dylib differ diff --git a/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.universal.dylib b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.universal.dylib new file mode 100755 index 00000000..074839c5 Binary files /dev/null and b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.universal.dylib differ diff --git a/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.universal.simulator.dylib b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.universal.simulator.dylib new file mode 100755 index 00000000..b9f30bad Binary files /dev/null and b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.universal.simulator.dylib differ diff --git a/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.x86_64.simulator.dylib b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.x86_64.simulator.dylib new file mode 100755 index 00000000..41db08f9 Binary files /dev/null and b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.x86_64.simulator.dylib differ diff --git a/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.xcframework/Info.plist b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.xcframework/Info.plist new file mode 100644 index 00000000..77f370df --- /dev/null +++ b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.xcframework/Info.plist @@ -0,0 +1,46 @@ + + + + + AvailableLibraries + + + BinaryPath + libGodotFmod.ios.template_debug.simulator.dylib + LibraryIdentifier + ios-arm64_x86_64-simulator + LibraryPath + libGodotFmod.ios.template_debug.simulator.dylib + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + simulator + + + BinaryPath + libGodotFmod.ios.template_debug.arm64.dylib + LibraryIdentifier + ios-arm64 + LibraryPath + libGodotFmod.ios.template_debug.arm64.dylib + SupportedArchitectures + + arm64 + + SupportedPlatform + ios + + + CFBundlePackageType + XFWK + MinimumOSVersion + 12.0 + XCFrameworkFormatVersion + 1.0 + + diff --git a/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.xcframework/ios-arm64/libGodotFmod.ios.template_debug.arm64.dylib b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.xcframework/ios-arm64/libGodotFmod.ios.template_debug.arm64.dylib new file mode 100755 index 00000000..d237c965 Binary files /dev/null and b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.xcframework/ios-arm64/libGodotFmod.ios.template_debug.arm64.dylib differ diff --git a/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.xcframework/ios-arm64_x86_64-simulator/libGodotFmod.ios.template_debug.simulator.dylib b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.xcframework/ios-arm64_x86_64-simulator/libGodotFmod.ios.template_debug.simulator.dylib new file mode 100755 index 00000000..7e4dd1f7 Binary files /dev/null and b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_debug.xcframework/ios-arm64_x86_64-simulator/libGodotFmod.ios.template_debug.simulator.dylib differ diff --git a/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_release.universal.dylib b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_release.universal.dylib new file mode 100755 index 00000000..c2604b1a Binary files /dev/null and b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_release.universal.dylib differ diff --git a/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_release.universal.simulator.dylib b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_release.universal.simulator.dylib new file mode 100755 index 00000000..eaa720da Binary files /dev/null and b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_release.universal.simulator.dylib differ diff --git a/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_release.xcframework/Info.plist b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_release.xcframework/Info.plist new file mode 100644 index 00000000..4b187b18 --- /dev/null +++ b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_release.xcframework/Info.plist @@ -0,0 +1,32 @@ + + + + + AvailableLibraries + + + BinaryPath + libGodotFmod.ios.template_release.universal.simulator.dylib + LibraryIdentifier + ios-arm64_x86_64-simulator + LibraryPath + libGodotFmod.ios.template_release.universal.simulator.dylib + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + simulator + + + CFBundlePackageType + XFWK + MinimumOSVersion + 12.0 + XCFrameworkFormatVersion + 1.0 + + diff --git a/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_release.xcframework/ios-arm64_x86_64-simulator/libGodotFmod.ios.template_release.universal.simulator.dylib b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_release.xcframework/ios-arm64_x86_64-simulator/libGodotFmod.ios.template_release.universal.simulator.dylib new file mode 100755 index 00000000..eaa720da Binary files /dev/null and b/demo/addons/fmod/libs/ios/libGodotFmod.ios.template_release.xcframework/ios-arm64_x86_64-simulator/libGodotFmod.ios.template_release.universal.simulator.dylib differ diff --git a/demo/addons/fmod/libs/ios/libgodotcpp.debug.xcframework/Info.plist b/demo/addons/fmod/libs/ios/libgodotcpp.debug.xcframework/Info.plist new file mode 100644 index 00000000..01d995bc --- /dev/null +++ b/demo/addons/fmod/libs/ios/libgodotcpp.debug.xcframework/Info.plist @@ -0,0 +1,44 @@ + + + + + AvailableLibraries + + + BinaryPath + libgodot-cpp.ios.template_debug.arm64.a + LibraryIdentifier + ios-arm64 + LibraryPath + libgodot-cpp.ios.template_debug.arm64.a + SupportedArchitectures + + arm64 + + SupportedPlatform + ios + + + BinaryPath + libgodot-cpp.ios.template_debug.simulator.a + LibraryIdentifier + ios-arm64_x86_64-simulator + LibraryPath + libgodot-cpp.ios.template_debug.simulator.a + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + simulator + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/demo/addons/fmod/libs/ios/libgodotcpp.debug.xcframework/ios-arm64/libgodot-cpp.ios.template_debug.arm64.a b/demo/addons/fmod/libs/ios/libgodotcpp.debug.xcframework/ios-arm64/libgodot-cpp.ios.template_debug.arm64.a new file mode 100644 index 00000000..f416c814 Binary files /dev/null and b/demo/addons/fmod/libs/ios/libgodotcpp.debug.xcframework/ios-arm64/libgodot-cpp.ios.template_debug.arm64.a differ diff --git a/demo/addons/fmod/libs/ios/libgodotcpp.debug.xcframework/ios-arm64_x86_64-simulator/libgodot-cpp.ios.template_debug.simulator.a b/demo/addons/fmod/libs/ios/libgodotcpp.debug.xcframework/ios-arm64_x86_64-simulator/libgodot-cpp.ios.template_debug.simulator.a new file mode 100644 index 00000000..48ef75fc Binary files /dev/null and b/demo/addons/fmod/libs/ios/libgodotcpp.debug.xcframework/ios-arm64_x86_64-simulator/libgodot-cpp.ios.template_debug.simulator.a differ diff --git a/demo/addons/fmod/libs/ios/libgodotcpp.release.xcframework/Info.plist b/demo/addons/fmod/libs/ios/libgodotcpp.release.xcframework/Info.plist new file mode 100644 index 00000000..68ea8a12 --- /dev/null +++ b/demo/addons/fmod/libs/ios/libgodotcpp.release.xcframework/Info.plist @@ -0,0 +1,44 @@ + + + + + AvailableLibraries + + + BinaryPath + libgodot-cpp.ios.template_release.arm64.a + LibraryIdentifier + ios-arm64 + LibraryPath + libgodot-cpp.ios.template_release.arm64.a + SupportedArchitectures + + arm64 + + SupportedPlatform + ios + + + BinaryPath + libgodot-cpp.ios.template_release.simulator.a + LibraryIdentifier + ios-arm64_x86_64-simulator + LibraryPath + libgodot-cpp.ios.template_release.simulator.a + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + simulator + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/demo/addons/fmod/libs/ios/libgodotcpp.release.xcframework/ios-arm64/libgodot-cpp.ios.template_release.arm64.a b/demo/addons/fmod/libs/ios/libgodotcpp.release.xcframework/ios-arm64/libgodot-cpp.ios.template_release.arm64.a new file mode 100644 index 00000000..13ffccdc Binary files /dev/null and b/demo/addons/fmod/libs/ios/libgodotcpp.release.xcframework/ios-arm64/libgodot-cpp.ios.template_release.arm64.a differ diff --git a/demo/addons/fmod/libs/ios/libgodotcpp.release.xcframework/ios-arm64_x86_64-simulator/libgodot-cpp.ios.template_release.simulator.a b/demo/addons/fmod/libs/ios/libgodotcpp.release.xcframework/ios-arm64_x86_64-simulator/libgodot-cpp.ios.template_release.simulator.a new file mode 100644 index 00000000..fd0f29e0 Binary files /dev/null and b/demo/addons/fmod/libs/ios/libgodotcpp.release.xcframework/ios-arm64_x86_64-simulator/libgodot-cpp.ios.template_release.simulator.a differ diff --git a/demo/addons/fmod/libs/macos/libfmod.dylib b/demo/addons/fmod/libs/macos/libfmod.dylib new file mode 100644 index 00000000..d3a6dbe7 Binary files /dev/null and b/demo/addons/fmod/libs/macos/libfmod.dylib differ diff --git a/demo/addons/fmod/libs/macos/libfmodL.dylib b/demo/addons/fmod/libs/macos/libfmodL.dylib new file mode 100644 index 00000000..b5585928 Binary files /dev/null and b/demo/addons/fmod/libs/macos/libfmodL.dylib differ diff --git a/demo/addons/fmod/libs/macos/libfmodstudio.dylib b/demo/addons/fmod/libs/macos/libfmodstudio.dylib new file mode 100644 index 00000000..aa36c733 Binary files /dev/null and b/demo/addons/fmod/libs/macos/libfmodstudio.dylib differ diff --git a/demo/addons/fmod/libs/macos/libfmodstudioL.dylib b/demo/addons/fmod/libs/macos/libfmodstudioL.dylib new file mode 100644 index 00000000..cf212ce4 Binary files /dev/null and b/demo/addons/fmod/libs/macos/libfmodstudioL.dylib differ diff --git a/demo/addons/gut/fonts/AnonymousPro-Bold.ttf.import b/demo/addons/gut/fonts/AnonymousPro-Bold.ttf.import new file mode 100644 index 00000000..649e1194 --- /dev/null +++ b/demo/addons/gut/fonts/AnonymousPro-Bold.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://cg5bb4jomxvcl" +path="res://.godot/imported/AnonymousPro-Bold.ttf-9d8fef4d357af5b52cd60afbe608aa49.fontdata" + +[deps] + +source_file="res://addons/gut/fonts/AnonymousPro-Bold.ttf" +dest_files=["res://.godot/imported/AnonymousPro-Bold.ttf-9d8fef4d357af5b52cd60afbe608aa49.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/demo/addons/gut/fonts/AnonymousPro-BoldItalic.ttf.import b/demo/addons/gut/fonts/AnonymousPro-BoldItalic.ttf.import new file mode 100644 index 00000000..4b4ebebc --- /dev/null +++ b/demo/addons/gut/fonts/AnonymousPro-BoldItalic.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://xsn1lp3aq7bt" +path="res://.godot/imported/AnonymousPro-BoldItalic.ttf-4274bf704d3d6b9cd32c4f0754d8c83d.fontdata" + +[deps] + +source_file="res://addons/gut/fonts/AnonymousPro-BoldItalic.ttf" +dest_files=["res://.godot/imported/AnonymousPro-BoldItalic.ttf-4274bf704d3d6b9cd32c4f0754d8c83d.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/demo/addons/gut/fonts/AnonymousPro-Italic.ttf.import b/demo/addons/gut/fonts/AnonymousPro-Italic.ttf.import new file mode 100644 index 00000000..fa9b94a6 --- /dev/null +++ b/demo/addons/gut/fonts/AnonymousPro-Italic.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://cgwa3s4rfscme" +path="res://.godot/imported/AnonymousPro-Italic.ttf-9989590b02137b799e13d570de2a42c1.fontdata" + +[deps] + +source_file="res://addons/gut/fonts/AnonymousPro-Italic.ttf" +dest_files=["res://.godot/imported/AnonymousPro-Italic.ttf-9989590b02137b799e13d570de2a42c1.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/demo/addons/gut/fonts/AnonymousPro-Regular.ttf.import b/demo/addons/gut/fonts/AnonymousPro-Regular.ttf.import new file mode 100644 index 00000000..a68b0787 --- /dev/null +++ b/demo/addons/gut/fonts/AnonymousPro-Regular.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://ds4do3ow06lbl" +path="res://.godot/imported/AnonymousPro-Regular.ttf-856c843fd6f89964d2ca8d8ff1724f13.fontdata" + +[deps] + +source_file="res://addons/gut/fonts/AnonymousPro-Regular.ttf" +dest_files=["res://.godot/imported/AnonymousPro-Regular.ttf-856c843fd6f89964d2ca8d8ff1724f13.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/demo/addons/gut/fonts/CourierPrime-Bold.ttf.import b/demo/addons/gut/fonts/CourierPrime-Bold.ttf.import new file mode 100644 index 00000000..bf6d636a --- /dev/null +++ b/demo/addons/gut/fonts/CourierPrime-Bold.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://bvgf7nn14o4ne" +path="res://.godot/imported/CourierPrime-Bold.ttf-1f003c66d63ebed70964e7756f4fa235.fontdata" + +[deps] + +source_file="res://addons/gut/fonts/CourierPrime-Bold.ttf" +dest_files=["res://.godot/imported/CourierPrime-Bold.ttf-1f003c66d63ebed70964e7756f4fa235.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/demo/addons/gut/fonts/CourierPrime-BoldItalic.ttf.import b/demo/addons/gut/fonts/CourierPrime-BoldItalic.ttf.import new file mode 100644 index 00000000..dabaf01a --- /dev/null +++ b/demo/addons/gut/fonts/CourierPrime-BoldItalic.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://w67c575s33we" +path="res://.godot/imported/CourierPrime-BoldItalic.ttf-65ebcc61dd5e1dfa8f96313da4ad7019.fontdata" + +[deps] + +source_file="res://addons/gut/fonts/CourierPrime-BoldItalic.ttf" +dest_files=["res://.godot/imported/CourierPrime-BoldItalic.ttf-65ebcc61dd5e1dfa8f96313da4ad7019.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/demo/addons/gut/fonts/CourierPrime-Italic.ttf.import b/demo/addons/gut/fonts/CourierPrime-Italic.ttf.import new file mode 100644 index 00000000..0ff9b5ab --- /dev/null +++ b/demo/addons/gut/fonts/CourierPrime-Italic.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://budfxvgandf8l" +path="res://.godot/imported/CourierPrime-Italic.ttf-baa9156a73770735a0f72fb20b907112.fontdata" + +[deps] + +source_file="res://addons/gut/fonts/CourierPrime-Italic.ttf" +dest_files=["res://.godot/imported/CourierPrime-Italic.ttf-baa9156a73770735a0f72fb20b907112.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/demo/addons/gut/fonts/CourierPrime-Regular.ttf.import b/demo/addons/gut/fonts/CourierPrime-Regular.ttf.import new file mode 100644 index 00000000..6de4a19c --- /dev/null +++ b/demo/addons/gut/fonts/CourierPrime-Regular.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://cvrdwkpuwq4k4" +path="res://.godot/imported/CourierPrime-Regular.ttf-3babe7e4a7a588dfc9a84c14b4f1fe23.fontdata" + +[deps] + +source_file="res://addons/gut/fonts/CourierPrime-Regular.ttf" +dest_files=["res://.godot/imported/CourierPrime-Regular.ttf-3babe7e4a7a588dfc9a84c14b4f1fe23.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/demo/addons/gut/fonts/LobsterTwo-Bold.ttf.import b/demo/addons/gut/fonts/LobsterTwo-Bold.ttf.import new file mode 100644 index 00000000..047a289b --- /dev/null +++ b/demo/addons/gut/fonts/LobsterTwo-Bold.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://dwdjjh0xvgarl" +path="res://.godot/imported/LobsterTwo-Bold.ttf-7c7f734103b58a32491a4788186f3dcb.fontdata" + +[deps] + +source_file="res://addons/gut/fonts/LobsterTwo-Bold.ttf" +dest_files=["res://.godot/imported/LobsterTwo-Bold.ttf-7c7f734103b58a32491a4788186f3dcb.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/demo/addons/gut/fonts/LobsterTwo-BoldItalic.ttf.import b/demo/addons/gut/fonts/LobsterTwo-BoldItalic.ttf.import new file mode 100644 index 00000000..c34376ee --- /dev/null +++ b/demo/addons/gut/fonts/LobsterTwo-BoldItalic.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://re4nteo8hv0l" +path="res://.godot/imported/LobsterTwo-BoldItalic.ttf-227406a33e84448e6aa974176016de19.fontdata" + +[deps] + +source_file="res://addons/gut/fonts/LobsterTwo-BoldItalic.ttf" +dest_files=["res://.godot/imported/LobsterTwo-BoldItalic.ttf-227406a33e84448e6aa974176016de19.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/demo/addons/gut/fonts/LobsterTwo-Italic.ttf.import b/demo/addons/gut/fonts/LobsterTwo-Italic.ttf.import new file mode 100644 index 00000000..39d37c63 --- /dev/null +++ b/demo/addons/gut/fonts/LobsterTwo-Italic.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://dbka6xdncgxob" +path="res://.godot/imported/LobsterTwo-Italic.ttf-f93abf6c25390c85ad5fb6c4ee75159e.fontdata" + +[deps] + +source_file="res://addons/gut/fonts/LobsterTwo-Italic.ttf" +dest_files=["res://.godot/imported/LobsterTwo-Italic.ttf-f93abf6c25390c85ad5fb6c4ee75159e.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/demo/addons/gut/fonts/LobsterTwo-Regular.ttf.import b/demo/addons/gut/fonts/LobsterTwo-Regular.ttf.import new file mode 100644 index 00000000..9e95700e --- /dev/null +++ b/demo/addons/gut/fonts/LobsterTwo-Regular.ttf.import @@ -0,0 +1,36 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://cswrnfn4xckku" +path="res://.godot/imported/LobsterTwo-Regular.ttf-f3fcfa01cd671c8da433dd875d0fe04b.fontdata" + +[deps] + +source_file="res://addons/gut/fonts/LobsterTwo-Regular.ttf" +dest_files=["res://.godot/imported/LobsterTwo-Regular.ttf-f3fcfa01cd671c8da433dd875d0fe04b.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +modulate_color_glyphs=false +hinting=1 +subpixel_positioning=4 +keep_rounding_remainders=true +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/demo/addons/gut/gui/arrow.png.import b/demo/addons/gut/gui/arrow.png.import new file mode 100644 index 00000000..62a2785a --- /dev/null +++ b/demo/addons/gut/gui/arrow.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dd8f7r3j8sd2x" +path="res://.godot/imported/arrow.png-2b5b2d838b5b3467cf300ac2da1630d9.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/gut/gui/arrow.png" +dest_files=["res://.godot/imported/arrow.png-2b5b2d838b5b3467cf300ac2da1630d9.ctex"] + +[params] + +compress/mode=0 +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=false +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=1 diff --git a/demo/addons/gut/gui/play.png.import b/demo/addons/gut/gui/play.png.import new file mode 100644 index 00000000..0878f17d --- /dev/null +++ b/demo/addons/gut/gui/play.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://wkyhlm57074w" +path="res://.godot/imported/play.png-5c90e88e8136487a183a099d67a7de24.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/gut/gui/play.png" +dest_files=["res://.godot/imported/play.png-5c90e88e8136487a183a099d67a7de24.ctex"] + +[params] + +compress/mode=0 +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=false +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=1 diff --git a/demo/addons/gut/icon.png.import b/demo/addons/gut/icon.png.import new file mode 100644 index 00000000..1f91fb2c --- /dev/null +++ b/demo/addons/gut/icon.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dl4pp2c7vt73l" +path="res://.godot/imported/icon.png-91b084043b8aaf2f1c906e7b9fa92969.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/gut/icon.png" +dest_files=["res://.godot/imported/icon.png-91b084043b8aaf2f1c906e7b9fa92969.ctex"] + +[params] + +compress/mode=0 +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=false +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=1 diff --git a/demo/addons/gut/images/Folder.svg.import b/demo/addons/gut/images/Folder.svg.import new file mode 100644 index 00000000..88bdb4d0 --- /dev/null +++ b/demo/addons/gut/images/Folder.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dkua750dgttx8" +path="res://.godot/imported/Folder.svg-caa50e6a0be9d456fd81991dfb537916.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/gut/images/Folder.svg" +dest_files=["res://.godot/imported/Folder.svg-caa50e6a0be9d456fd81991dfb537916.ctex"] + +[params] + +compress/mode=0 +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=false +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=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/demo/addons/gut/images/GutIconV2_base.png.import b/demo/addons/gut/images/GutIconV2_base.png.import new file mode 100644 index 00000000..10b5a499 --- /dev/null +++ b/demo/addons/gut/images/GutIconV2_base.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://caettjotxyq1k" +path="res://.godot/imported/GutIconV2_base.png-7038b445a6dfa6ba4cec1a42fa81abae.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/gut/images/GutIconV2_base.png" +dest_files=["res://.godot/imported/GutIconV2_base.png-7038b445a6dfa6ba4cec1a42fa81abae.ctex"] + +[params] + +compress/mode=0 +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=false +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=1 diff --git a/demo/addons/gut/images/GutIconV2_no_shine.png.import b/demo/addons/gut/images/GutIconV2_no_shine.png.import new file mode 100644 index 00000000..6924941c --- /dev/null +++ b/demo/addons/gut/images/GutIconV2_no_shine.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://mnhybmxgknbq" +path="res://.godot/imported/GutIconV2_no_shine.png-340880100fb7bae1a2e0530330841e58.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/gut/images/GutIconV2_no_shine.png" +dest_files=["res://.godot/imported/GutIconV2_no_shine.png-340880100fb7bae1a2e0530330841e58.ctex"] + +[params] + +compress/mode=0 +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=false +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=1 diff --git a/demo/addons/gut/images/HSplitContainer.svg.import b/demo/addons/gut/images/HSplitContainer.svg.import new file mode 100644 index 00000000..bbc06487 --- /dev/null +++ b/demo/addons/gut/images/HSplitContainer.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://didao8vgrsvon" +path="res://.godot/imported/HSplitContainer.svg-81e594d94ee80e4176e099672ef6025b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/gut/images/HSplitContainer.svg" +dest_files=["res://.godot/imported/HSplitContainer.svg-81e594d94ee80e4176e099672ef6025b.ctex"] + +[params] + +compress/mode=0 +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=false +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=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/demo/addons/gut/images/Script.svg.import b/demo/addons/gut/images/Script.svg.import new file mode 100644 index 00000000..8858f2fd --- /dev/null +++ b/demo/addons/gut/images/Script.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dngdn7nvgmpgq" +path="res://.godot/imported/Script.svg-34c66aae9c985e3e0470426acbbcda04.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/gut/images/Script.svg" +dest_files=["res://.godot/imported/Script.svg-34c66aae9c985e3e0470426acbbcda04.ctex"] + +[params] + +compress/mode=0 +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=false +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=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/demo/addons/gut/images/VSplitContainer.svg.import b/demo/addons/gut/images/VSplitContainer.svg.import new file mode 100644 index 00000000..e7b7cda7 --- /dev/null +++ b/demo/addons/gut/images/VSplitContainer.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cxoqgf15ou7s5" +path="res://.godot/imported/VSplitContainer.svg-6cec29fefa7e65d6ff7c2fdb9a1bb9ab.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/gut/images/VSplitContainer.svg" +dest_files=["res://.godot/imported/VSplitContainer.svg-6cec29fefa7e65d6ff7c2fdb9a1bb9ab.ctex"] + +[params] + +compress/mode=0 +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=false +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=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/demo/addons/gut/images/eyey.png.import b/demo/addons/gut/images/eyey.png.import new file mode 100644 index 00000000..bc21244e --- /dev/null +++ b/demo/addons/gut/images/eyey.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cer6x5ktcyggk" +path="res://.godot/imported/eyey.png-e0a721ab6b749f5d493d61e9f27f0654.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/gut/images/eyey.png" +dest_files=["res://.godot/imported/eyey.png-e0a721ab6b749f5d493d61e9f27f0654.ctex"] + +[params] + +compress/mode=0 +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=false +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=1 diff --git a/demo/addons/gut/images/green.png.import b/demo/addons/gut/images/green.png.import new file mode 100644 index 00000000..937e4249 --- /dev/null +++ b/demo/addons/gut/images/green.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://nlvqbfs4atxx" +path="res://.godot/imported/green.png-e3a17091688e10a7013279b38edc7f8a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/gut/images/green.png" +dest_files=["res://.godot/imported/green.png-e3a17091688e10a7013279b38edc7f8a.ctex"] + +[params] + +compress/mode=0 +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=false +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=1 diff --git a/demo/addons/gut/images/red.png.import b/demo/addons/gut/images/red.png.import new file mode 100644 index 00000000..e4ae1bd0 --- /dev/null +++ b/demo/addons/gut/images/red.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ctj6xrbdu6sjp" +path="res://.godot/imported/red.png-47a557c3922e800f76686bc1a4ad0c3c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/gut/images/red.png" +dest_files=["res://.godot/imported/red.png-47a557c3922e800f76686bc1a4ad0c3c.ctex"] + +[params] + +compress/mode=0 +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=false +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=1 diff --git a/demo/addons/gut/images/yellow.png.import b/demo/addons/gut/images/yellow.png.import new file mode 100644 index 00000000..aea10e83 --- /dev/null +++ b/demo/addons/gut/images/yellow.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dw0liwrhc5gye" +path="res://.godot/imported/yellow.png-b3cf3d463958a169d909273d3d742052.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://addons/gut/images/yellow.png" +dest_files=["res://.godot/imported/yellow.png-b3cf3d463958a169d909273d3d742052.ctex"] + +[params] + +compress/mode=0 +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=false +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=1 diff --git a/demo/addons/gut/source_code_pro.fnt.import b/demo/addons/gut/source_code_pro.fnt.import new file mode 100644 index 00000000..9e54d57b --- /dev/null +++ b/demo/addons/gut/source_code_pro.fnt.import @@ -0,0 +1,17 @@ +[remap] + +importer="font_data_bmfont" +type="FontFile" +uid="uid://vo8cydewk5c2" +path="res://.godot/imported/source_code_pro.fnt-042fb383b3c7b4c19e67c852f7fbefca.fontdata" + +[deps] + +source_file="res://addons/gut/source_code_pro.fnt" +dest_files=["res://.godot/imported/source_code_pro.fnt-042fb383b3c7b4c19e67c852f7fbefca.fontdata"] + +[params] + +fallbacks=[] +compress=true +scaling_mode=2 diff --git a/demo/export_presets.cfg b/demo/export_presets.cfg index f4347b9b..22489ff1 100644 --- a/demo/export_presets.cfg +++ b/demo/export_presets.cfg @@ -9,20 +9,31 @@ export_filter="all_resources" include_filter="" exclude_filter="" export_path="../../../../FMOD Gdnative Integration Demo.apk" +patches=PackedStringArray() +patch_delta_encoding=false +patch_delta_compression_level_zstd=19 +patch_delta_min_reduction=0.1 +patch_delta_include_filters="*" +patch_delta_exclude_filters="" encryption_include_filters="" encryption_exclude_filters="" +seed=0 encrypt_pck=false encrypt_directory=false +script_export_mode=2 [preset.0.options] custom_template/debug="" custom_template/release="" gradle_build/use_gradle_build=true +gradle_build/gradle_build_directory="" +gradle_build/android_source_template="" +gradle_build/compress_native_libraries=false gradle_build/export_format=0 gradle_build/min_sdk="" gradle_build/target_sdk="" -plugins/FmodPlugin=true +gradle_build/custom_theme_attributes={} architectures/armeabi-v7a=false architectures/arm64-v8a=true architectures/x86=false @@ -35,19 +46,24 @@ package/signed=true package/app_category=2 package/retain_data_on_uninstall=false package/exclude_from_recents=false +package/show_in_android_tv=false +package/show_in_app_library=true +package/show_as_launcher_app=false launcher_icons/main_192x192="" launcher_icons/adaptive_foreground_432x432="" launcher_icons/adaptive_background_432x432="" +launcher_icons/adaptive_monochrome_432x432="" graphics/opengl_debug=false +shader_baker/enabled=false xr_features/xr_mode=0 -xr_features/hand_tracking=0 -xr_features/hand_tracking_frequency=0 -xr_features/passthrough=0 +gesture/swipe_to_dismiss=false screen/immersive_mode=true +screen/edge_to_edge=false screen/support_small=true screen/support_normal=true screen/support_large=true screen/support_xlarge=true +screen/background_color=Color(0, 0, 0, 1) user_data_backup/allow=false command_line/extra_args="" apk_expansion/enable=false @@ -58,6 +74,7 @@ permissions/access_checkin_properties=false permissions/access_coarse_location=false permissions/access_fine_location=false permissions/access_location_extra_commands=false +permissions/access_media_location=false permissions/access_mock_location=false permissions/access_network_state=false permissions/access_surface_flinger=false @@ -127,6 +144,7 @@ permissions/manage_accounts=false permissions/manage_app_tokens=false permissions/manage_documents=false permissions/manage_external_storage=false +permissions/manage_media=false permissions/master_clear=false permissions/media_content_control=false permissions/modify_audio_settings=false @@ -135,6 +153,7 @@ permissions/mount_format_filesystems=false permissions/mount_unmount_filesystems=false permissions/nfc=false permissions/persistent_activity=false +permissions/post_notifications=false permissions/process_outgoing_calls=false permissions/read_calendar=false permissions/read_call_log=false @@ -144,6 +163,10 @@ permissions/read_frame_buffer=false permissions/read_history_bookmarks=false permissions/read_input_state=false permissions/read_logs=false +permissions/read_media_audio=false +permissions/read_media_images=false +permissions/read_media_video=false +permissions/read_media_visual_user_selected=false permissions/read_phone_state=false permissions/read_profile=false permissions/read_sms=false @@ -200,6 +223,10 @@ permissions/write_sms=false permissions/write_social_stream=false permissions/write_sync_settings=false permissions/write_user_dictionary=false +plugins/FmodPlugin=true +xr_features/hand_tracking=0 +xr_features/hand_tracking_frequency=0 +xr_features/passthrough=0 graphics/32_bits_framebuffer=true xr_features/degrees_of_freedom=0 one_click_deploy/clear_previous_install=false @@ -218,10 +245,18 @@ export_filter="all_resources" include_filter="*.bank, *.ogg" exclude_filter="" export_path="../../../GodotFmodExport/FMOD.exe" +patches=PackedStringArray() +patch_delta_encoding=false +patch_delta_compression_level_zstd=19 +patch_delta_min_reduction=0.1 +patch_delta_include_filters="*" +patch_delta_exclude_filters="" encryption_include_filters="" encryption_exclude_filters="" +seed=0 encrypt_pck=false encrypt_directory=false +script_export_mode=2 [preset.1.options] @@ -229,10 +264,9 @@ custom_template/debug="" custom_template/release="" debug/export_console_wrapper=1 binary_format/embed_pck=false -texture_format/bptc=false -texture_format/s3tc=true -texture_format/etc=false -texture_format/etc2=false +texture_format/s3tc_bptc=true +texture_format/etc2_astc=false +shader_baker/enabled=false binary_format/architecture="x86_64" codesign/enable=false codesign/timestamp=true @@ -251,6 +285,9 @@ application/product_name="" application/file_description="" application/copyright="" application/trademarks="" +application/export_angle=0 +application/export_d3d12=0 +application/d3d12_agility_sdk_multiarch=true ssh_remote_deploy/enabled=false ssh_remote_deploy/host="user@host_ip" ssh_remote_deploy/port="22" @@ -268,6 +305,10 @@ Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorActi ssh_remote_deploy/cleanup_script="Stop-ScheduledTask -TaskName godot_remote_debug -ErrorAction:SilentlyContinue Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue Remove-Item -Recurse -Force '{temp_dir}'" +texture_format/bptc=false +texture_format/s3tc=true +texture_format/etc=false +texture_format/etc2=false texture_format/no_bptc_fallbacks=true binary_format/64_bits=true @@ -281,11 +322,19 @@ custom_features="" export_filter="all_resources" include_filter="" exclude_filter="" -export_path="../../../../Desktop/fmod-ios-export/FmodTestDemo.ipa" +export_path="../../exports/ios/35/FmodTestDemo.xcodeproj" +patches=PackedStringArray() +patch_delta_encoding=false +patch_delta_compression_level_zstd=19 +patch_delta_min_reduction=0.1 +patch_delta_include_filters="*" +patch_delta_exclude_filters="" encryption_include_filters="" encryption_exclude_filters="" +seed=0 encrypt_pck=false encrypt_directory=false +script_export_mode=2 [preset.2.options] @@ -293,19 +342,29 @@ custom_template/debug="" custom_template/release="" architectures/arm64=true application/app_store_team_id="changeit" -application/code_sign_identity_debug="iPhone Developer" application/export_method_debug=1 +application/code_sign_identity_debug="iPhone Developer" application/code_sign_identity_release="iPhone Developer" +application/provisioning_profile_specifier_debug="" +application/provisioning_profile_specifier_release="" application/export_method_release=1 -application/targeted_device_family=2 application/bundle_identifier="com.utopiarise.godot.fmod" application/signature="????" application/short_version="1.0" application/version="1.0" +application/additional_plist_content="" application/icon_interpolation=4 -application/launch_screens_interpolation=4 +application/export_project_only=true +application/delete_old_export_files_unconditionally=false +entitlements/increased_memory_limit=false +entitlements/game_center=false +entitlements/push_notifications="Disabled" +entitlements/additional="" capabilities/access_wifi=false -capabilities/push_notifications=false +capabilities/performance_gaming_tier=false +capabilities/performance_a12=false +capabilities/additional=PackedStringArray() +shader_baker/enabled=false user_data/accessible_from_files_app=false user_data/accessible_from_itunes_sharing=false privacy/camera_usage_description="" @@ -314,24 +373,216 @@ privacy/microphone_usage_description="" privacy/microphone_usage_description_localized={} privacy/photolibrary_usage_description="" privacy/photolibrary_usage_description_localized={} -icons/iphone_120x120="" -icons/iphone_180x180="" -icons/ipad_76x76="" -icons/ipad_152x152="" -icons/ipad_167x167="" -icons/app_store_1024x1024="res://appstore.png" -icons/spotlight_40x40="" -icons/spotlight_80x80="" +privacy/file_timestamp_access_reasons=3 +privacy/system_boot_time_access_reasons=1 +privacy/disk_space_access_reasons=3 +privacy/active_keyboard_access_reasons=0 +privacy/user_defaults_access_reasons=0 +privacy/tracking_enabled=false +privacy/tracking_domains=PackedStringArray() +privacy/collected_data/name/collected=false +privacy/collected_data/name/linked_to_user=false +privacy/collected_data/name/used_for_tracking=false +privacy/collected_data/name/collection_purposes=0 +privacy/collected_data/email_address/collected=false +privacy/collected_data/email_address/linked_to_user=false +privacy/collected_data/email_address/used_for_tracking=false +privacy/collected_data/email_address/collection_purposes=0 +privacy/collected_data/phone_number/collected=false +privacy/collected_data/phone_number/linked_to_user=false +privacy/collected_data/phone_number/used_for_tracking=false +privacy/collected_data/phone_number/collection_purposes=0 +privacy/collected_data/physical_address/collected=false +privacy/collected_data/physical_address/linked_to_user=false +privacy/collected_data/physical_address/used_for_tracking=false +privacy/collected_data/physical_address/collection_purposes=0 +privacy/collected_data/other_contact_info/collected=false +privacy/collected_data/other_contact_info/linked_to_user=false +privacy/collected_data/other_contact_info/used_for_tracking=false +privacy/collected_data/other_contact_info/collection_purposes=0 +privacy/collected_data/health/collected=false +privacy/collected_data/health/linked_to_user=false +privacy/collected_data/health/used_for_tracking=false +privacy/collected_data/health/collection_purposes=0 +privacy/collected_data/fitness/collected=false +privacy/collected_data/fitness/linked_to_user=false +privacy/collected_data/fitness/used_for_tracking=false +privacy/collected_data/fitness/collection_purposes=0 +privacy/collected_data/payment_info/collected=false +privacy/collected_data/payment_info/linked_to_user=false +privacy/collected_data/payment_info/used_for_tracking=false +privacy/collected_data/payment_info/collection_purposes=0 +privacy/collected_data/credit_info/collected=false +privacy/collected_data/credit_info/linked_to_user=false +privacy/collected_data/credit_info/used_for_tracking=false +privacy/collected_data/credit_info/collection_purposes=0 +privacy/collected_data/other_financial_info/collected=false +privacy/collected_data/other_financial_info/linked_to_user=false +privacy/collected_data/other_financial_info/used_for_tracking=false +privacy/collected_data/other_financial_info/collection_purposes=0 +privacy/collected_data/precise_location/collected=false +privacy/collected_data/precise_location/linked_to_user=false +privacy/collected_data/precise_location/used_for_tracking=false +privacy/collected_data/precise_location/collection_purposes=0 +privacy/collected_data/coarse_location/collected=false +privacy/collected_data/coarse_location/linked_to_user=false +privacy/collected_data/coarse_location/used_for_tracking=false +privacy/collected_data/coarse_location/collection_purposes=0 +privacy/collected_data/sensitive_info/collected=false +privacy/collected_data/sensitive_info/linked_to_user=false +privacy/collected_data/sensitive_info/used_for_tracking=false +privacy/collected_data/sensitive_info/collection_purposes=0 +privacy/collected_data/contacts/collected=false +privacy/collected_data/contacts/linked_to_user=false +privacy/collected_data/contacts/used_for_tracking=false +privacy/collected_data/contacts/collection_purposes=0 +privacy/collected_data/emails_or_text_messages/collected=false +privacy/collected_data/emails_or_text_messages/linked_to_user=false +privacy/collected_data/emails_or_text_messages/used_for_tracking=false +privacy/collected_data/emails_or_text_messages/collection_purposes=0 +privacy/collected_data/photos_or_videos/collected=false +privacy/collected_data/photos_or_videos/linked_to_user=false +privacy/collected_data/photos_or_videos/used_for_tracking=false +privacy/collected_data/photos_or_videos/collection_purposes=0 +privacy/collected_data/audio_data/collected=false +privacy/collected_data/audio_data/linked_to_user=false +privacy/collected_data/audio_data/used_for_tracking=false +privacy/collected_data/audio_data/collection_purposes=0 +privacy/collected_data/gameplay_content/collected=false +privacy/collected_data/gameplay_content/linked_to_user=false +privacy/collected_data/gameplay_content/used_for_tracking=false +privacy/collected_data/gameplay_content/collection_purposes=0 +privacy/collected_data/customer_support/collected=false +privacy/collected_data/customer_support/linked_to_user=false +privacy/collected_data/customer_support/used_for_tracking=false +privacy/collected_data/customer_support/collection_purposes=0 +privacy/collected_data/other_user_content/collected=false +privacy/collected_data/other_user_content/linked_to_user=false +privacy/collected_data/other_user_content/used_for_tracking=false +privacy/collected_data/other_user_content/collection_purposes=0 +privacy/collected_data/browsing_history/collected=false +privacy/collected_data/browsing_history/linked_to_user=false +privacy/collected_data/browsing_history/used_for_tracking=false +privacy/collected_data/browsing_history/collection_purposes=0 +privacy/collected_data/search_history/collected=false +privacy/collected_data/search_history/linked_to_user=false +privacy/collected_data/search_history/used_for_tracking=false +privacy/collected_data/search_history/collection_purposes=0 +privacy/collected_data/user_id/collected=false +privacy/collected_data/user_id/linked_to_user=false +privacy/collected_data/user_id/used_for_tracking=false +privacy/collected_data/user_id/collection_purposes=0 +privacy/collected_data/device_id/collected=false +privacy/collected_data/device_id/linked_to_user=false +privacy/collected_data/device_id/used_for_tracking=false +privacy/collected_data/device_id/collection_purposes=0 +privacy/collected_data/purchase_history/collected=false +privacy/collected_data/purchase_history/linked_to_user=false +privacy/collected_data/purchase_history/used_for_tracking=false +privacy/collected_data/purchase_history/collection_purposes=0 +privacy/collected_data/product_interaction/collected=false +privacy/collected_data/product_interaction/linked_to_user=false +privacy/collected_data/product_interaction/used_for_tracking=false +privacy/collected_data/product_interaction/collection_purposes=0 +privacy/collected_data/advertising_data/collected=false +privacy/collected_data/advertising_data/linked_to_user=false +privacy/collected_data/advertising_data/used_for_tracking=false +privacy/collected_data/advertising_data/collection_purposes=0 +privacy/collected_data/other_usage_data/collected=false +privacy/collected_data/other_usage_data/linked_to_user=false +privacy/collected_data/other_usage_data/used_for_tracking=false +privacy/collected_data/other_usage_data/collection_purposes=0 +privacy/collected_data/crash_data/collected=false +privacy/collected_data/crash_data/linked_to_user=false +privacy/collected_data/crash_data/used_for_tracking=false +privacy/collected_data/crash_data/collection_purposes=0 +privacy/collected_data/performance_data/collected=false +privacy/collected_data/performance_data/linked_to_user=false +privacy/collected_data/performance_data/used_for_tracking=false +privacy/collected_data/performance_data/collection_purposes=0 +privacy/collected_data/other_diagnostic_data/collected=false +privacy/collected_data/other_diagnostic_data/linked_to_user=false +privacy/collected_data/other_diagnostic_data/used_for_tracking=false +privacy/collected_data/other_diagnostic_data/collection_purposes=0 +privacy/collected_data/environment_scanning/collected=false +privacy/collected_data/environment_scanning/linked_to_user=false +privacy/collected_data/environment_scanning/used_for_tracking=false +privacy/collected_data/environment_scanning/collection_purposes=0 +privacy/collected_data/hands/collected=false +privacy/collected_data/hands/linked_to_user=false +privacy/collected_data/hands/used_for_tracking=false +privacy/collected_data/hands/collection_purposes=0 +privacy/collected_data/head/collected=false +privacy/collected_data/head/linked_to_user=false +privacy/collected_data/head/used_for_tracking=false +privacy/collected_data/head/collection_purposes=0 +privacy/collected_data/other_data_types/collected=false +privacy/collected_data/other_data_types/linked_to_user=false +privacy/collected_data/other_data_types/used_for_tracking=false +privacy/collected_data/other_data_types/collection_purposes=0 +icons/icon_1024x1024="" +icons/icon_1024x1024_dark="" +icons/icon_1024x1024_tinted="" icons/settings_58x58="" +icons/settings_58x58_dark="" +icons/settings_58x58_tinted="" icons/settings_87x87="" +icons/settings_87x87_dark="" +icons/settings_87x87_tinted="" icons/notification_40x40="" +icons/notification_40x40_dark="" +icons/notification_40x40_tinted="" icons/notification_60x60="" -storyboard/use_launch_screen_storyboard=false +icons/notification_60x60_dark="" +icons/notification_60x60_tinted="" +icons/notification_76x76="" +icons/notification_76x76_dark="" +icons/notification_76x76_tinted="" +icons/notification_114x114="" +icons/notification_114x114_dark="" +icons/notification_114x114_tinted="" +icons/spotlight_80x80="" +icons/spotlight_80x80_dark="" +icons/spotlight_80x80_tinted="" +icons/spotlight_120x120="" +icons/spotlight_120x120_dark="" +icons/spotlight_120x120_tinted="" +icons/iphone_120x120="" +icons/iphone_120x120_dark="" +icons/iphone_120x120_tinted="" +icons/iphone_180x180="" +icons/iphone_180x180_dark="" +icons/iphone_180x180_tinted="" +icons/ipad_167x167="" +icons/ipad_167x167_dark="" +icons/ipad_167x167_tinted="" +icons/ipad_152x152="" +icons/ipad_152x152_dark="" +icons/ipad_152x152_tinted="" +icons/ios_128x128="" +icons/ios_128x128_dark="" +icons/ios_128x128_tinted="" +icons/ios_192x192="" +icons/ios_192x192_dark="" +icons/ios_192x192_tinted="" +icons/ios_136x136="" +icons/ios_136x136_dark="" +icons/ios_136x136_tinted="" +icons/app_store_1024x1024="res://appstore.png" +icons/app_store_1024x1024_dark="" +icons/app_store_1024x1024_tinted="" +application/targeted_device_family=2 +application/min_ios_version="14.0" storyboard/image_scale_mode=0 storyboard/custom_image@2x="" storyboard/custom_image@3x="" storyboard/use_custom_bg_color=false storyboard/custom_bg_color=Color(0, 0, 0, 1) +application/launch_screens_interpolation=4 +capabilities/push_notifications=false +icons/ipad_76x76="" +icons/spotlight_40x40="" +storyboard/use_launch_screen_storyboard=false landscape_launch_screens/iphone_2436x1125="" landscape_launch_screens/iphone_2208x1242="" landscape_launch_screens/ipad_1024x768="" @@ -376,10 +627,18 @@ export_filter="all_resources" include_filter="" exclude_filter="" export_path="../../../../Desktop/fmod-macos-export/FmodTestDemo.dmg" +patches=PackedStringArray() +patch_delta_encoding=false +patch_delta_compression_level_zstd=19 +patch_delta_min_reduction=0.1 +patch_delta_include_filters="*" +patch_delta_exclude_filters="" encryption_include_filters="" encryption_exclude_filters="" +seed=0 encrypt_pck=false encrypt_directory=false +script_export_mode=2 [preset.3.options] @@ -388,6 +647,7 @@ binary_format/architecture="universal" custom_template/debug="" custom_template/release="" debug/export_console_wrapper=1 +application/liquid_glass_icon="" application/icon="" application/icon_interpolation=4 application/bundle_identifier="com.utopiarise.godot.fmod" @@ -397,8 +657,12 @@ application/short_version="1.0" application/version="1.0" application/copyright="" application/copyright_localized={} -application/min_macos_version="10.12" +application/min_macos_version_x86_64="10.12" +application/min_macos_version_arm64="11.00" +application/export_angle=0 display/high_res=true +shader_baker/enabled=false +application/additional_plist_content="" xcode/platform_build="14C18" xcode/sdk_version="13.1" xcode/sdk_build="22C55" @@ -431,7 +695,9 @@ codesign/entitlements/app_sandbox/files_downloads=0 codesign/entitlements/app_sandbox/files_pictures=0 codesign/entitlements/app_sandbox/files_music=0 codesign/entitlements/app_sandbox/files_movies=0 +codesign/entitlements/app_sandbox/files_user_selected=0 codesign/entitlements/app_sandbox/helper_executables=[] +codesign/entitlements/additional="" codesign/custom_options=PackedStringArray() notarization/notarization=0 privacy/microphone_usage_description="" @@ -456,6 +722,148 @@ privacy/network_volumes_usage_description="" privacy/network_volumes_usage_description_localized={} privacy/removable_volumes_usage_description="" privacy/removable_volumes_usage_description_localized={} +privacy/tracking_enabled=false +privacy/tracking_domains=PackedStringArray() +privacy/collected_data/name/collected=false +privacy/collected_data/name/linked_to_user=false +privacy/collected_data/name/used_for_tracking=false +privacy/collected_data/name/collection_purposes=0 +privacy/collected_data/email_address/collected=false +privacy/collected_data/email_address/linked_to_user=false +privacy/collected_data/email_address/used_for_tracking=false +privacy/collected_data/email_address/collection_purposes=0 +privacy/collected_data/phone_number/collected=false +privacy/collected_data/phone_number/linked_to_user=false +privacy/collected_data/phone_number/used_for_tracking=false +privacy/collected_data/phone_number/collection_purposes=0 +privacy/collected_data/physical_address/collected=false +privacy/collected_data/physical_address/linked_to_user=false +privacy/collected_data/physical_address/used_for_tracking=false +privacy/collected_data/physical_address/collection_purposes=0 +privacy/collected_data/other_contact_info/collected=false +privacy/collected_data/other_contact_info/linked_to_user=false +privacy/collected_data/other_contact_info/used_for_tracking=false +privacy/collected_data/other_contact_info/collection_purposes=0 +privacy/collected_data/health/collected=false +privacy/collected_data/health/linked_to_user=false +privacy/collected_data/health/used_for_tracking=false +privacy/collected_data/health/collection_purposes=0 +privacy/collected_data/fitness/collected=false +privacy/collected_data/fitness/linked_to_user=false +privacy/collected_data/fitness/used_for_tracking=false +privacy/collected_data/fitness/collection_purposes=0 +privacy/collected_data/payment_info/collected=false +privacy/collected_data/payment_info/linked_to_user=false +privacy/collected_data/payment_info/used_for_tracking=false +privacy/collected_data/payment_info/collection_purposes=0 +privacy/collected_data/credit_info/collected=false +privacy/collected_data/credit_info/linked_to_user=false +privacy/collected_data/credit_info/used_for_tracking=false +privacy/collected_data/credit_info/collection_purposes=0 +privacy/collected_data/other_financial_info/collected=false +privacy/collected_data/other_financial_info/linked_to_user=false +privacy/collected_data/other_financial_info/used_for_tracking=false +privacy/collected_data/other_financial_info/collection_purposes=0 +privacy/collected_data/precise_location/collected=false +privacy/collected_data/precise_location/linked_to_user=false +privacy/collected_data/precise_location/used_for_tracking=false +privacy/collected_data/precise_location/collection_purposes=0 +privacy/collected_data/coarse_location/collected=false +privacy/collected_data/coarse_location/linked_to_user=false +privacy/collected_data/coarse_location/used_for_tracking=false +privacy/collected_data/coarse_location/collection_purposes=0 +privacy/collected_data/sensitive_info/collected=false +privacy/collected_data/sensitive_info/linked_to_user=false +privacy/collected_data/sensitive_info/used_for_tracking=false +privacy/collected_data/sensitive_info/collection_purposes=0 +privacy/collected_data/contacts/collected=false +privacy/collected_data/contacts/linked_to_user=false +privacy/collected_data/contacts/used_for_tracking=false +privacy/collected_data/contacts/collection_purposes=0 +privacy/collected_data/emails_or_text_messages/collected=false +privacy/collected_data/emails_or_text_messages/linked_to_user=false +privacy/collected_data/emails_or_text_messages/used_for_tracking=false +privacy/collected_data/emails_or_text_messages/collection_purposes=0 +privacy/collected_data/photos_or_videos/collected=false +privacy/collected_data/photos_or_videos/linked_to_user=false +privacy/collected_data/photos_or_videos/used_for_tracking=false +privacy/collected_data/photos_or_videos/collection_purposes=0 +privacy/collected_data/audio_data/collected=false +privacy/collected_data/audio_data/linked_to_user=false +privacy/collected_data/audio_data/used_for_tracking=false +privacy/collected_data/audio_data/collection_purposes=0 +privacy/collected_data/gameplay_content/collected=false +privacy/collected_data/gameplay_content/linked_to_user=false +privacy/collected_data/gameplay_content/used_for_tracking=false +privacy/collected_data/gameplay_content/collection_purposes=0 +privacy/collected_data/customer_support/collected=false +privacy/collected_data/customer_support/linked_to_user=false +privacy/collected_data/customer_support/used_for_tracking=false +privacy/collected_data/customer_support/collection_purposes=0 +privacy/collected_data/other_user_content/collected=false +privacy/collected_data/other_user_content/linked_to_user=false +privacy/collected_data/other_user_content/used_for_tracking=false +privacy/collected_data/other_user_content/collection_purposes=0 +privacy/collected_data/browsing_history/collected=false +privacy/collected_data/browsing_history/linked_to_user=false +privacy/collected_data/browsing_history/used_for_tracking=false +privacy/collected_data/browsing_history/collection_purposes=0 +privacy/collected_data/search_history/collected=false +privacy/collected_data/search_history/linked_to_user=false +privacy/collected_data/search_history/used_for_tracking=false +privacy/collected_data/search_history/collection_purposes=0 +privacy/collected_data/user_id/collected=false +privacy/collected_data/user_id/linked_to_user=false +privacy/collected_data/user_id/used_for_tracking=false +privacy/collected_data/user_id/collection_purposes=0 +privacy/collected_data/device_id/collected=false +privacy/collected_data/device_id/linked_to_user=false +privacy/collected_data/device_id/used_for_tracking=false +privacy/collected_data/device_id/collection_purposes=0 +privacy/collected_data/purchase_history/collected=false +privacy/collected_data/purchase_history/linked_to_user=false +privacy/collected_data/purchase_history/used_for_tracking=false +privacy/collected_data/purchase_history/collection_purposes=0 +privacy/collected_data/product_interaction/collected=false +privacy/collected_data/product_interaction/linked_to_user=false +privacy/collected_data/product_interaction/used_for_tracking=false +privacy/collected_data/product_interaction/collection_purposes=0 +privacy/collected_data/advertising_data/collected=false +privacy/collected_data/advertising_data/linked_to_user=false +privacy/collected_data/advertising_data/used_for_tracking=false +privacy/collected_data/advertising_data/collection_purposes=0 +privacy/collected_data/other_usage_data/collected=false +privacy/collected_data/other_usage_data/linked_to_user=false +privacy/collected_data/other_usage_data/used_for_tracking=false +privacy/collected_data/other_usage_data/collection_purposes=0 +privacy/collected_data/crash_data/collected=false +privacy/collected_data/crash_data/linked_to_user=false +privacy/collected_data/crash_data/used_for_tracking=false +privacy/collected_data/crash_data/collection_purposes=0 +privacy/collected_data/performance_data/collected=false +privacy/collected_data/performance_data/linked_to_user=false +privacy/collected_data/performance_data/used_for_tracking=false +privacy/collected_data/performance_data/collection_purposes=0 +privacy/collected_data/other_diagnostic_data/collected=false +privacy/collected_data/other_diagnostic_data/linked_to_user=false +privacy/collected_data/other_diagnostic_data/used_for_tracking=false +privacy/collected_data/other_diagnostic_data/collection_purposes=0 +privacy/collected_data/environment_scanning/collected=false +privacy/collected_data/environment_scanning/linked_to_user=false +privacy/collected_data/environment_scanning/used_for_tracking=false +privacy/collected_data/environment_scanning/collection_purposes=0 +privacy/collected_data/hands/collected=false +privacy/collected_data/hands/linked_to_user=false +privacy/collected_data/hands/used_for_tracking=false +privacy/collected_data/hands/collection_purposes=0 +privacy/collected_data/head/collected=false +privacy/collected_data/head/linked_to_user=false +privacy/collected_data/head/used_for_tracking=false +privacy/collected_data/head/collection_purposes=0 +privacy/collected_data/other_data_types/collected=false +privacy/collected_data/other_data_types/linked_to_user=false +privacy/collected_data/other_data_types/used_for_tracking=false +privacy/collected_data/other_data_types/collection_purposes=0 ssh_remote_deploy/enabled=false ssh_remote_deploy/host="user@host_ip" ssh_remote_deploy/port="22" @@ -467,3 +875,4 @@ open \"{temp_dir}/{exe_name}.app\" --args {cmd_args}" ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash kill $(pgrep -x -f \"{temp_dir}/{exe_name}.app/Contents/MacOS/{exe_name} {cmd_args}\") rm -rf \"{temp_dir}\"" +application/min_macos_version="10.12" diff --git a/demo/project.godot b/demo/project.godot index 5de3bb23..1a1acba5 100644 --- a/demo/project.godot +++ b/demo/project.godot @@ -12,16 +12,33 @@ config_version=5 "3D Settings/distance_factor"=64.0 General/banks_path="res://assets/Banks" +General/auto_initialize=true +General/channel_count=1024 +General/is_live_update_enabled=true +General/is_memory_tracking_enabled=false +"Software Format/sample_rate"=48000 +"Software Format/speaker_mode"=3 +"Software Format/raw_speaker_count"=0 +General/default_listener_count=1 +General/should_load_by_name=false +DSP/dsp_buffer_size=512 +DSP/dsp_buffer_count=4 +"3D Settings/doppler_scale"=1.0 +"3D Settings/rolloff_scale"=1.0 [android] modules="org/godotengine/godot/FmodSingleton" +[animation] + +compatibility/default_parent_skeleton_in_mesh_instance_3d=true + [application] config/name="Fmod Demo" run/main_scene="res://low_level_2D/FmodScriptTest.tscn" -config/features=PackedStringArray("4.5") +config/features=PackedStringArray("4.6") config/icon="uid://cih2yjmtjoohg" [autoload] diff --git a/src/fmod_server.cpp b/src/fmod_server.cpp index a28b0f33..5cb7f27d 100644 --- a/src/fmod_server.cpp +++ b/src/fmod_server.cpp @@ -510,7 +510,6 @@ void FmodServer::unload_bank(const String& pathToBank) { bool FmodServer::banks_still_loading() { return cache->is_loading(); } - #ifdef IOS_ENABLED uint32_t register_ios_dsp(FMOD_SYSTEM_PTR system, FMOD_DSP_DESCRIPTION* description, uint32_t* handle) { return reinterpret_cast(system)->registerDSP(description, handle); @@ -523,6 +522,17 @@ uint32_t register_ios_codec(FMOD_SYSTEM_PTR system, FMOD_CODEC_DESCRIPTION* desc uint32_t register_ios_output(FMOD_SYSTEM_PTR system, FMOD_OUTPUT_DESCRIPTION* description, uint32_t* handle) { return reinterpret_cast(system)->registerOutput(description, handle); } + +extern "C" { +// Re-declare with weak attribute to ensure the linker finds a version of this symbol +// even if the export plugin hasn't generated the real one yet. +__attribute__((weak)) uint32_t* load_all_fmod_plugins(FMOD_IOS_INTERFACE* p_interface, uint32_t* r_count) { + if (r_count) { + *r_count = 0; + } + return nullptr; +} +} #endif void FmodServer::load_all_plugins(const Ref& p_settings) { @@ -542,12 +552,16 @@ void FmodServer::load_all_plugins(const Ref& p_settings) { .register_output_method = ®ister_ios_output }; - uint32_t plugin_count; - uint32_t* plugin_handles = load_all_fmod_plugins(&interface, &plugin_count); - for (uint32_t i = 0; i < plugin_count; ++i) { - cache->add_plugin(plugin_handles[i]); + uint32_t plugin_count = 0; + if (load_all_fmod_plugins != nullptr) { + uint32_t* plugin_handles = load_all_fmod_plugins(&interface, &plugin_count); + for (uint32_t i = 0; i < plugin_count; ++i) { + cache->add_plugin(plugin_handles[i]); + } + std::free(plugin_handles); + } else { + GODOT_LOG_WARNING("FMOD: load_all_fmod_plugins not found. Static plugins will not be loaded.") } - std::free(plugin_handles); #endif } diff --git a/src/plugins/ios_plugins_loader.h b/src/plugins/ios_plugins_loader.h index 5a7df8e6..c10052aa 100644 --- a/src/plugins/ios_plugins_loader.h +++ b/src/plugins/ios_plugins_loader.h @@ -16,7 +16,7 @@ typedef struct { } FMOD_IOS_INTERFACE; extern "C" { - uint32_t* load_all_fmod_plugins(FMOD_IOS_INTERFACE* ios_interface, uint32_t* r_count); + __attribute__((weak_import)) uint32_t* load_all_fmod_plugins(FMOD_IOS_INTERFACE* ios_interface, uint32_t* r_count); }; #endif