Files
FlaxEngine/Source/Platforms/iOS/Binaries/Project/FlaxGame.xcodeproj/project.pbxproj
T
Andrei Gagua 0c354b85f3 Fix Vulkan swapchain wait for acquired backbuffer
Move backbuffer submit waiting until after swapchain image acquire, and track the submitted fence counter per backbuffer to avoid waiting on stale command buffer objects. This preserves multi-buffered presentation and fixes iOS/MoltenVK frame pacing drops caused by waiting on the wrong swapchain image.
2026-06-06 22:08:43 +03:00

396 lines
14 KiB
Plaintext

// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 56;
objects = {
/* Begin PBXBuildFile section */
2E6ABCC32A1540AF003DBD6D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 2E6ABCC22A1540AF003DBD6D /* Assets.xcassets */; };
2E6ABCC62A1540AF003DBD6D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 2E6ABCC42A1540AF003DBD6D /* LaunchScreen.storyboard */; };
2E6ABCC82A1540AF003DBD6D /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 2E6ABCC72A1540AF003DBD6D /* main.m */; };
${PBXBuildFile}
/* End PBXBuildFile section */
/* Begin PBXCopyFilesBuildPhase section */
2EE436B82A220EAA00206A23 /* Embed Frameworks */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = "";
dstSubfolderSpec = 10;
files = (
${PBXCopyFilesBuildPhaseFiles}
);
name = "Embed Frameworks";
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
2E6ABCB02A1540AD003DBD6D /* FlaxGame.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = FlaxGame.app; sourceTree = BUILT_PRODUCTS_DIR; };
2E6ABCC22A1540AF003DBD6D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
2E6ABCC52A1540AF003DBD6D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
2E6ABCC72A1540AF003DBD6D /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
${PBXFileReference}
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
2E6ABCAD2A1540AD003DBD6D /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
${PBXFrameworksBuildPhase}
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
2E6ABCA72A1540AD003DBD6D = {
isa = PBXGroup;
children = (
2E6ABCB22A1540AD003DBD6D /* FlaxGame */,
2E6ABCB12A1540AD003DBD6D /* Products */,
2EE436B42A220EA900206A23 /* Frameworks */,
);
sourceTree = "<group>";
};
2E6ABCB12A1540AD003DBD6D /* Products */ = {
isa = PBXGroup;
children = (
2E6ABCB02A1540AD003DBD6D /* FlaxGame.app */,
);
name = Products;
sourceTree = "<group>";
};
2E6ABCB22A1540AD003DBD6D /* FlaxGame */ = {
isa = PBXGroup;
children = (
${PBXFilesGroup}
2E6ABCC22A1540AF003DBD6D /* Assets.xcassets */,
2E6ABCC42A1540AF003DBD6D /* LaunchScreen.storyboard */,
2E6ABCC72A1540AF003DBD6D /* main.m */,
);
path = FlaxGame;
sourceTree = "<group>";
};
2EE436B42A220EA900206A23 /* Frameworks */ = {
isa = PBXGroup;
children = (
${PBXFrameworksGroup}
);
name = Frameworks;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
2E6ABCAF2A1540AD003DBD6D /* FlaxGame */ = {
isa = PBXNativeTarget;
buildConfigurationList = 2E6ABCCB2A1540AF003DBD6D /* Build configuration list for PBXNativeTarget "FlaxGame" */;
buildPhases = (
2E6ABCAC2A1540AD003DBD6D /* Sources */,
2E6ABCAD2A1540AD003DBD6D /* Frameworks */,
2E6ABCAE2A1540AD003DBD6D /* Resources */,
2EE436B82A220EAA00206A23 /* Embed Frameworks */,
);
buildRules = (
);
dependencies = (
);
name = FlaxGame;
productName = ${AppName};
productReference = 2E6ABCB02A1540AD003DBD6D /* FlaxGame.app */;
productType = "com.apple.product-type.application";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
2E6ABCA82A1540AD003DBD6D /* Project object */ = {
isa = PBXProject;
attributes = {
BuildIndependentTargetsInParallel = 1;
LastUpgradeCheck = 1430;
TargetAttributes = {
2E6ABCAF2A1540AD003DBD6D = {
CreatedOnToolsVersion = 14.3;
};
};
};
buildConfigurationList = 2E6ABCAB2A1540AD003DBD6D /* Build configuration list for PBXProject "FlaxGame" */;
compatibilityVersion = "Xcode 14.0";
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
Base,
);
mainGroup = 2E6ABCA72A1540AD003DBD6D;
productRefGroup = 2E6ABCB12A1540AD003DBD6D /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
2E6ABCAF2A1540AD003DBD6D /* FlaxGame */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
2E6ABCAE2A1540AD003DBD6D /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
${PBXResourcesGroup}
2E6ABCC62A1540AF003DBD6D /* LaunchScreen.storyboard in Resources */,
2E6ABCC32A1540AF003DBD6D /* Assets.xcassets in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
2E6ABCAC2A1540AD003DBD6D /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
2E6ABCC82A1540AF003DBD6D /* main.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXVariantGroup section */
2E6ABCC42A1540AF003DBD6D /* LaunchScreen.storyboard */ = {
isa = PBXVariantGroup;
children = (
2E6ABCC52A1540AF003DBD6D /* Base */,
);
name = LaunchScreen.storyboard;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
2E6ABCC92A1540AF003DBD6D /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = "${HeaderSearchPaths}";
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
};
name = Debug;
};
2E6ABCCA2A1540AF003DBD6D /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = "${HeaderSearchPaths}";
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
SDKROOT = iphoneos;
VALIDATE_PRODUCT = YES;
};
name = Release;
};
2E6ABCCC2A1540AF003DBD6D /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = ${AppVersion};
DEVELOPMENT_TEAM = ${AppTeamId};
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = FlaxGame/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = "${ProjectName}";
INFOPLIST_KEY_CADisableMinimumFrameDurationOnPhone = YES;
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.games";
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen;
INFOPLIST_KEY_UIRequiredDeviceCapabilities = metal;
INFOPLIST_KEY_UIRequiresFullScreen = YES;
INFOPLIST_KEY_UIStatusBarHidden = YES;
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "${UISupportedInterfaceOrientations_iPad}";
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "${UISupportedInterfaceOrientations_iPhone}";
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)/FlaxGame",
"$(PROJECT_DIR)/FlaxGame/Data",
"$(PROJECT_DIR)/FlaxGame/Data/Dotnet",
);
MARKETING_VERSION = ${ProjectVersion};
PRODUCT_BUNDLE_IDENTIFIER = ${AppIdentifier};
PRODUCT_NAME = "$(TARGET_NAME)";
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
SUPPORTS_MACCATALYST = NO;
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
SWIFT_EMIT_LOC_STRINGS = YES;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Debug;
};
2E6ABCCD2A1540AF003DBD6D /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = ${AppVersion};
DEVELOPMENT_TEAM = ${AppTeamId};
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = FlaxGame/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = "${ProjectName}";
INFOPLIST_KEY_CADisableMinimumFrameDurationOnPhone = YES;
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.games";
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen;
INFOPLIST_KEY_UIRequiredDeviceCapabilities = metal;
INFOPLIST_KEY_UIRequiresFullScreen = YES;
INFOPLIST_KEY_UIStatusBarHidden = YES;
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "${UISupportedInterfaceOrientations_iPad}";
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "${UISupportedInterfaceOrientations_iPhone}";
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)/FlaxGame",
"$(PROJECT_DIR)/FlaxGame/Data",
"$(PROJECT_DIR)/FlaxGame/Data/Dotnet",
);
MARKETING_VERSION = ${ProjectVersion};
PRODUCT_BUNDLE_IDENTIFIER = ${AppIdentifier};
PRODUCT_NAME = "$(TARGET_NAME)";
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
SUPPORTS_MACCATALYST = NO;
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
SWIFT_EMIT_LOC_STRINGS = YES;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
2E6ABCAB2A1540AD003DBD6D /* Build configuration list for PBXProject "FlaxGame" */ = {
isa = XCConfigurationList;
buildConfigurations = (
2E6ABCC92A1540AF003DBD6D /* Debug */,
2E6ABCCA2A1540AF003DBD6D /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
2E6ABCCB2A1540AF003DBD6D /* Build configuration list for PBXNativeTarget "FlaxGame" */ = {
isa = XCConfigurationList;
buildConfigurations = (
2E6ABCCC2A1540AF003DBD6D /* Debug */,
2E6ABCCD2A1540AF003DBD6D /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 2E6ABCA82A1540AD003DBD6D /* Project object */;
}