// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 48;
	objects = {

/* Begin PBXBuildFile section */
		A95C050B1C98FC1100CC653D /* blue.ppm in Resources */ = {isa = PBXBuildFile; fileRef = A95C05021C98FC1100CC653D /* blue.ppm */; };
		A95C050C1C98FC1100CC653D /* blue.ppm in Resources */ = {isa = PBXBuildFile; fileRef = A95C05021C98FC1100CC653D /* blue.ppm */; };
		A95C050D1C98FC1100CC653D /* green.ppm in Resources */ = {isa = PBXBuildFile; fileRef = A95C05041C98FC1100CC653D /* green.ppm */; };
		A95C050E1C98FC1100CC653D /* green.ppm in Resources */ = {isa = PBXBuildFile; fileRef = A95C05041C98FC1100CC653D /* green.ppm */; };
		A95C050F1C98FC1100CC653D /* logo-256x256-solid.png in Resources */ = {isa = PBXBuildFile; fileRef = A95C05051C98FC1100CC653D /* logo-256x256-solid.png */; };
		A95C05101C98FC1100CC653D /* logo-256x256-solid.png in Resources */ = {isa = PBXBuildFile; fileRef = A95C05051C98FC1100CC653D /* logo-256x256-solid.png */; };
		A95C05111C98FC1100CC653D /* logo-256x256.png in Resources */ = {isa = PBXBuildFile; fileRef = A95C05061C98FC1100CC653D /* logo-256x256.png */; };
		A95C05121C98FC1100CC653D /* logo-256x256.png in Resources */ = {isa = PBXBuildFile; fileRef = A95C05061C98FC1100CC653D /* logo-256x256.png */; };
		A95C05131C98FC1100CC653D /* lunarg.ppm in Resources */ = {isa = PBXBuildFile; fileRef = A95C05071C98FC1100CC653D /* lunarg.ppm */; };
		A95C05141C98FC1100CC653D /* lunarg.ppm in Resources */ = {isa = PBXBuildFile; fileRef = A95C05071C98FC1100CC653D /* lunarg.ppm */; };
		A95C05151C98FC1100CC653D /* red.ppm in Resources */ = {isa = PBXBuildFile; fileRef = A95C05081C98FC1100CC653D /* red.ppm */; };
		A95C05161C98FC1100CC653D /* red.ppm in Resources */ = {isa = PBXBuildFile; fileRef = A95C05081C98FC1100CC653D /* red.ppm */; };
		A95C05171C98FC1100CC653D /* spotlight.ppm in Resources */ = {isa = PBXBuildFile; fileRef = A95C05091C98FC1100CC653D /* spotlight.ppm */; };
		A95C05181C98FC1100CC653D /* spotlight.ppm in Resources */ = {isa = PBXBuildFile; fileRef = A95C05091C98FC1100CC653D /* spotlight.ppm */; };
		A95C05191C98FC1100CC653D /* yellow.ppm in Resources */ = {isa = PBXBuildFile; fileRef = A95C050A1C98FC1100CC653D /* yellow.ppm */; };
		A95C051A1C98FC1100CC653D /* yellow.ppm in Resources */ = {isa = PBXBuildFile; fileRef = A95C050A1C98FC1100CC653D /* yellow.ppm */; };
		A964BD3D1E4EA6FC00CA9AF1 /* util.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A964BC611E4EA6FC00CA9AF1 /* util.cpp */; };
		A964BD3E1E4EA6FC00CA9AF1 /* util.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A964BC611E4EA6FC00CA9AF1 /* util.cpp */; };
		A964BD3F1E4EA6FC00CA9AF1 /* util_init.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A964BC631E4EA6FC00CA9AF1 /* util_init.cpp */; };
		A964BD401E4EA6FC00CA9AF1 /* util_init.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A964BC631E4EA6FC00CA9AF1 /* util_init.cpp */; };
		A9B67B781C3AAE9800373FFD /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = A9B67B6C1C3AAE9800373FFD /* AppDelegate.m */; };
		A9B67B7A1C3AAE9800373FFD /* DemoViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = A9B67B6F1C3AAE9800373FFD /* DemoViewController.mm */; };
		A9B67B7C1C3AAE9800373FFD /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = A9B67B711C3AAE9800373FFD /* main.m */; };
		A9B67B7D1C3AAE9800373FFD /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = A9B67B741C3AAE9800373FFD /* Default-568h@2x.png */; };
		A9B67B7E1C3AAE9800373FFD /* Default~ipad.png in Resources */ = {isa = PBXBuildFile; fileRef = A9B67B751C3AAE9800373FFD /* Default~ipad.png */; };
		A9B67B7F1C3AAE9800373FFD /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = A9B67B761C3AAE9800373FFD /* Icon.png */; };
		A9B67B801C3AAE9800373FFD /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = A9B67B771C3AAE9800373FFD /* Main.storyboard */; };
		A9B67B8C1C3AAEA200373FFD /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = A9B67B831C3AAEA200373FFD /* AppDelegate.m */; };
		A9B67B8D1C3AAEA200373FFD /* DemoViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = A9B67B851C3AAEA200373FFD /* DemoViewController.mm */; };
		A9B67B8F1C3AAEA200373FFD /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = A9B67B871C3AAEA200373FFD /* main.m */; };
		A9B67B901C3AAEA200373FFD /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = A9B67B8A1C3AAEA200373FFD /* Main.storyboard */; };
		A9B67B911C3AAEA200373FFD /* macOS.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A9B67B8B1C3AAEA200373FFD /* macOS.xcassets */; };
		A9C2ABA2218505B000DDBC03 /* MoltenVKGLSLToSPIRVConverter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A9C2ABA0218505B000DDBC03 /* MoltenVKGLSLToSPIRVConverter.framework */; };
		A9C2ABA3218505B000DDBC03 /* MoltenVK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A9C2ABA1218505B000DDBC03 /* MoltenVK.framework */; };
		A9C2ABA6218505CB00DDBC03 /* MoltenVKGLSLToSPIRVConverter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A9C2ABA4218505CB00DDBC03 /* MoltenVKGLSLToSPIRVConverter.framework */; };
		A9C2ABA7218505CB00DDBC03 /* MoltenVK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A9C2ABA5218505CB00DDBC03 /* MoltenVK.framework */; };
/* End PBXBuildFile section */

/* Begin PBXFileReference section */
		1D6058910D05DD3D006BFB54 /* API-Samples.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "API-Samples.app"; sourceTree = BUILT_PRODUCTS_DIR; };
		A92F37071C7E1B2B008F8BC9 /* Samples.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Samples.h; sourceTree = "<group>"; };
		A95C05021C98FC1100CC653D /* blue.ppm */ = {isa = PBXFileReference; lastKnownFileType = file; path = blue.ppm; sourceTree = "<group>"; };
		A95C05031C98FC1100CC653D /* cube_data.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cube_data.h; sourceTree = "<group>"; };
		A95C05041C98FC1100CC653D /* green.ppm */ = {isa = PBXFileReference; lastKnownFileType = file; path = green.ppm; sourceTree = "<group>"; };
		A95C05051C98FC1100CC653D /* logo-256x256-solid.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "logo-256x256-solid.png"; sourceTree = "<group>"; };
		A95C05061C98FC1100CC653D /* logo-256x256.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "logo-256x256.png"; sourceTree = "<group>"; };
		A95C05071C98FC1100CC653D /* lunarg.ppm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = lunarg.ppm; sourceTree = "<group>"; };
		A95C05081C98FC1100CC653D /* red.ppm */ = {isa = PBXFileReference; lastKnownFileType = file; path = red.ppm; sourceTree = "<group>"; };
		A95C05091C98FC1100CC653D /* spotlight.ppm */ = {isa = PBXFileReference; lastKnownFileType = file; path = spotlight.ppm; sourceTree = "<group>"; };
		A95C050A1C98FC1100CC653D /* yellow.ppm */ = {isa = PBXFileReference; lastKnownFileType = file; path = yellow.ppm; sourceTree = "<group>"; };
		A964BAF11E4E95E500CA9AF1 /* copy_blit_image.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = copy_blit_image.cpp; sourceTree = "<group>"; };
		A964BAF51E4E968F00CA9AF1 /* 15-draw_cube.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = "15-draw_cube.cpp"; sourceTree = "<group>"; };
		A964BAF91E4E96B400CA9AF1 /* draw_subpasses.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = draw_subpasses.cpp; sourceTree = "<group>"; };
		A964BAFD1E4E976C00CA9AF1 /* draw_textured_cube.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = draw_textured_cube.cpp; sourceTree = "<group>"; };
		A964BAFF1E4E976C00CA9AF1 /* dynamic_uniform.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = dynamic_uniform.cpp; sourceTree = "<group>"; };
		A964BB011E4E976C00CA9AF1 /* enable_validation_with_callback.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = enable_validation_with_callback.cpp; sourceTree = "<group>"; };
		A964BB031E4E976C00CA9AF1 /* enumerate_devices_adv.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = enumerate_devices_adv.cpp; sourceTree = "<group>"; };
		A964BB051E4E976C00CA9AF1 /* events.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = events.cpp; sourceTree = "<group>"; };
		A964BB071E4E976C00CA9AF1 /* immutable_sampler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = immutable_sampler.cpp; sourceTree = "<group>"; };
		A964BB091E4E976C00CA9AF1 /* init_texture.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = init_texture.cpp; sourceTree = "<group>"; };
		A964BB0B1E4E976C00CA9AF1 /* input_attachment.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = input_attachment.cpp; sourceTree = "<group>"; };
		A964BB0D1E4E976C00CA9AF1 /* instance_extension_properties.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = instance_extension_properties.cpp; sourceTree = "<group>"; };
		A964BB0F1E4E976C00CA9AF1 /* instance_layer_extension_properties.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = instance_layer_extension_properties.cpp; sourceTree = "<group>"; };
		A964BB111E4E976C00CA9AF1 /* instance_layer_properties.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = instance_layer_properties.cpp; sourceTree = "<group>"; };
		A964BB131E4E976C00CA9AF1 /* memory_barriers.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = memory_barriers.cpp; sourceTree = "<group>"; };
		A964BB151E4E976C00CA9AF1 /* multiple_sets.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = multiple_sets.cpp; sourceTree = "<group>"; };
		A964BB171E4E976C00CA9AF1 /* multithreaded_command_buffers.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = multithreaded_command_buffers.cpp; sourceTree = "<group>"; };
		A964BB191E4E976C00CA9AF1 /* occlusion_query.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = occlusion_query.cpp; sourceTree = "<group>"; };
		A964BB1B1E4E976C00CA9AF1 /* pipeline_cache.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = pipeline_cache.cpp; sourceTree = "<group>"; };
		A964BB1D1E4E976C00CA9AF1 /* pipeline_derivative.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = pipeline_derivative.cpp; sourceTree = "<group>"; };
		A964BB1F1E4E976C00CA9AF1 /* push_constants.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = push_constants.cpp; sourceTree = "<group>"; };
		A964BB211E4E976C00CA9AF1 /* secondary_command_buffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = secondary_command_buffer.cpp; sourceTree = "<group>"; };
		A964BB231E4E976C00CA9AF1 /* separate_image_sampler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = separate_image_sampler.cpp; sourceTree = "<group>"; };
		A964BB251E4E976C00CA9AF1 /* spirv_assembly.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = spirv_assembly.cpp; sourceTree = "<group>"; };
		A964BB271E4E976C00CA9AF1 /* spirv_specialization.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = spirv_specialization.cpp; sourceTree = "<group>"; };
		A964BB291E4E976C00CA9AF1 /* template.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = template.cpp; sourceTree = "<group>"; };
		A964BB2B1E4E976C00CA9AF1 /* texel_buffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = texel_buffer.cpp; sourceTree = "<group>"; };
		A964BC601E4EA6FC00CA9AF1 /* samples_platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = samples_platform.h; sourceTree = "<group>"; };
		A964BC611E4EA6FC00CA9AF1 /* util.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = util.cpp; sourceTree = "<group>"; };
		A964BC621E4EA6FC00CA9AF1 /* util.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = util.hpp; sourceTree = "<group>"; };
		A964BC631E4EA6FC00CA9AF1 /* util_init.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = util_init.cpp; sourceTree = "<group>"; };
		A964BC641E4EA6FC00CA9AF1 /* util_init.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = util_init.hpp; sourceTree = "<group>"; };
		A977BCFE1B66BB010067E5BF /* API-Samples.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "API-Samples.app"; sourceTree = BUILT_PRODUCTS_DIR; };
		A99B2F0D24436190001117F7 /* generateSPIRVShaders */ = {isa = PBXFileReference; lastKnownFileType = text; path = generateSPIRVShaders; sourceTree = "<group>"; };
		A9B67B6B1C3AAE9800373FFD /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
		A9B67B6C1C3AAE9800373FFD /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
		A9B67B6E1C3AAE9800373FFD /* DemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DemoViewController.h; sourceTree = "<group>"; };
		A9B67B6F1C3AAE9800373FFD /* DemoViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DemoViewController.mm; sourceTree = "<group>"; };
		A9B67B701C3AAE9800373FFD /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
		A9B67B711C3AAE9800373FFD /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
		A9B67B721C3AAE9800373FFD /* Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Prefix.pch; sourceTree = "<group>"; };
		A9B67B741C3AAE9800373FFD /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x.png"; sourceTree = "<group>"; };
		A9B67B751C3AAE9800373FFD /* Default~ipad.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default~ipad.png"; sourceTree = "<group>"; };
		A9B67B761C3AAE9800373FFD /* Icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Icon.png; sourceTree = "<group>"; };
		A9B67B771C3AAE9800373FFD /* Main.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = Main.storyboard; sourceTree = "<group>"; };
		A9B67B821C3AAEA200373FFD /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
		A9B67B831C3AAEA200373FFD /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
		A9B67B841C3AAEA200373FFD /* DemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DemoViewController.h; sourceTree = "<group>"; };
		A9B67B851C3AAEA200373FFD /* DemoViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DemoViewController.mm; sourceTree = "<group>"; };
		A9B67B861C3AAEA200373FFD /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
		A9B67B871C3AAEA200373FFD /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
		A9B67B881C3AAEA200373FFD /* Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Prefix.pch; sourceTree = "<group>"; };
		A9B67B8A1C3AAEA200373FFD /* Main.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = Main.storyboard; sourceTree = "<group>"; };
		A9B67B8B1C3AAEA200373FFD /* macOS.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = macOS.xcassets; sourceTree = "<group>"; };
		A9C2ABA0218505B000DDBC03 /* MoltenVKGLSLToSPIRVConverter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MoltenVKGLSLToSPIRVConverter.framework; path = ../../../MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/iOS/MoltenVKGLSLToSPIRVConverter.framework; sourceTree = "<group>"; };
		A9C2ABA1218505B000DDBC03 /* MoltenVK.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MoltenVK.framework; path = ../../../MoltenVK/iOS/framework/MoltenVK.framework; sourceTree = "<group>"; };
		A9C2ABA4218505CB00DDBC03 /* MoltenVKGLSLToSPIRVConverter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MoltenVKGLSLToSPIRVConverter.framework; path = ../../../MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/macOS/MoltenVKGLSLToSPIRVConverter.framework; sourceTree = "<group>"; };
		A9C2ABA5218505CB00DDBC03 /* MoltenVK.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MoltenVK.framework; path = ../../../MoltenVK/macOS/framework/MoltenVK.framework; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		1D60588F0D05DD3D006BFB54 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				A9C2ABA3218505B000DDBC03 /* MoltenVK.framework in Frameworks */,
				A9C2ABA2218505B000DDBC03 /* MoltenVKGLSLToSPIRVConverter.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		A977BCF11B66BB010067E5BF /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				A9C2ABA7218505CB00DDBC03 /* MoltenVK.framework in Frameworks */,
				A9C2ABA6218505CB00DDBC03 /* MoltenVKGLSLToSPIRVConverter.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		19C28FACFE9D520D11CA2CBB /* Products */ = {
			isa = PBXGroup;
			children = (
				1D6058910D05DD3D006BFB54 /* API-Samples.app */,
				A977BCFE1B66BB010067E5BF /* API-Samples.app */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		29B97314FDCFA39411CA2CEA /* CustomTemplate */ = {
			isa = PBXGroup;
			children = (
				A92F37071C7E1B2B008F8BC9 /* Samples.h */,
				A99B2F0D24436190001117F7 /* generateSPIRVShaders */,
				A95C03971C98FBED00CC653D /* API-Samples */,
				A9B67B6A1C3AAE9800373FFD /* iOS */,
				A9B67B811C3AAEA200373FFD /* macOS */,
				19C28FACFE9D520D11CA2CBB /* Products */,
				A9C2AB9F218505B000DDBC03 /* Frameworks */,
			);
			name = CustomTemplate;
			sourceTree = "<group>";
		};
		A95C03971C98FBED00CC653D /* API-Samples */ = {
			isa = PBXGroup;
			children = (
				A964BAF01E4E95E500CA9AF1 /* copy_blit_image */,
				A95C05011C98FC1100CC653D /* data */,
				A964BAF41E4E968F00CA9AF1 /* 15-draw_cube */,
				A964BAF81E4E96B400CA9AF1 /* draw_subpasses */,
				A964BAFC1E4E976C00CA9AF1 /* draw_textured_cube */,
				A964BAFE1E4E976C00CA9AF1 /* dynamic_uniform */,
				A964BB001E4E976C00CA9AF1 /* enable_validation_with_callback */,
				A964BB021E4E976C00CA9AF1 /* enumerate_devices_adv */,
				A964BB041E4E976C00CA9AF1 /* events */,
				A964BB061E4E976C00CA9AF1 /* immutable_sampler */,
				A964BB081E4E976C00CA9AF1 /* init_texture */,
				A964BB0A1E4E976C00CA9AF1 /* input_attachment */,
				A964BB0C1E4E976C00CA9AF1 /* instance_extension_properties */,
				A964BB0E1E4E976C00CA9AF1 /* instance_layer_extension_properties */,
				A964BB101E4E976C00CA9AF1 /* instance_layer_properties */,
				A964BB121E4E976C00CA9AF1 /* memory_barriers */,
				A964BB141E4E976C00CA9AF1 /* multiple_sets */,
				A964BB161E4E976C00CA9AF1 /* multithreaded_command_buffers */,
				A964BB181E4E976C00CA9AF1 /* occlusion_query */,
				A964BB1A1E4E976C00CA9AF1 /* pipeline_cache */,
				A964BB1C1E4E976C00CA9AF1 /* pipeline_derivative */,
				A964BB1E1E4E976C00CA9AF1 /* push_constants */,
				A964BB201E4E976C00CA9AF1 /* secondary_command_buffer */,
				A964BB221E4E976C00CA9AF1 /* separate_image_sampler */,
				A964BB241E4E976C00CA9AF1 /* spirv_assembly */,
				A964BB261E4E976C00CA9AF1 /* spirv_specialization */,
				A964BB281E4E976C00CA9AF1 /* template */,
				A964BB2A1E4E976C00CA9AF1 /* texel_buffer */,
				A964BB5C1E4EA6FB00CA9AF1 /* utils */,
			);
			name = "API-Samples";
			path = "../VulkanSamples/API-Samples";
			sourceTree = "<group>";
		};
		A95C05011C98FC1100CC653D /* data */ = {
			isa = PBXGroup;
			children = (
				A95C05021C98FC1100CC653D /* blue.ppm */,
				A95C05031C98FC1100CC653D /* cube_data.h */,
				A95C05041C98FC1100CC653D /* green.ppm */,
				A95C05051C98FC1100CC653D /* logo-256x256-solid.png */,
				A95C05061C98FC1100CC653D /* logo-256x256.png */,
				A95C05071C98FC1100CC653D /* lunarg.ppm */,
				A95C05081C98FC1100CC653D /* red.ppm */,
				A95C05091C98FC1100CC653D /* spotlight.ppm */,
				A95C050A1C98FC1100CC653D /* yellow.ppm */,
			);
			path = data;
			sourceTree = "<group>";
		};
		A964BAF01E4E95E500CA9AF1 /* copy_blit_image */ = {
			isa = PBXGroup;
			children = (
				A964BAF11E4E95E500CA9AF1 /* copy_blit_image.cpp */,
			);
			path = copy_blit_image;
			sourceTree = "<group>";
		};
		A964BAF41E4E968F00CA9AF1 /* 15-draw_cube */ = {
			isa = PBXGroup;
			children = (
				A964BAF51E4E968F00CA9AF1 /* 15-draw_cube.cpp */,
			);
			path = "15-draw_cube";
			sourceTree = "<group>";
		};
		A964BAF81E4E96B400CA9AF1 /* draw_subpasses */ = {
			isa = PBXGroup;
			children = (
				A964BAF91E4E96B400CA9AF1 /* draw_subpasses.cpp */,
			);
			path = draw_subpasses;
			sourceTree = "<group>";
		};
		A964BAFC1E4E976C00CA9AF1 /* draw_textured_cube */ = {
			isa = PBXGroup;
			children = (
				A964BAFD1E4E976C00CA9AF1 /* draw_textured_cube.cpp */,
			);
			path = draw_textured_cube;
			sourceTree = "<group>";
		};
		A964BAFE1E4E976C00CA9AF1 /* dynamic_uniform */ = {
			isa = PBXGroup;
			children = (
				A964BAFF1E4E976C00CA9AF1 /* dynamic_uniform.cpp */,
			);
			path = dynamic_uniform;
			sourceTree = "<group>";
		};
		A964BB001E4E976C00CA9AF1 /* enable_validation_with_callback */ = {
			isa = PBXGroup;
			children = (
				A964BB011E4E976C00CA9AF1 /* enable_validation_with_callback.cpp */,
			);
			path = enable_validation_with_callback;
			sourceTree = "<group>";
		};
		A964BB021E4E976C00CA9AF1 /* enumerate_devices_adv */ = {
			isa = PBXGroup;
			children = (
				A964BB031E4E976C00CA9AF1 /* enumerate_devices_adv.cpp */,
			);
			path = enumerate_devices_adv;
			sourceTree = "<group>";
		};
		A964BB041E4E976C00CA9AF1 /* events */ = {
			isa = PBXGroup;
			children = (
				A964BB051E4E976C00CA9AF1 /* events.cpp */,
			);
			path = events;
			sourceTree = "<group>";
		};
		A964BB061E4E976C00CA9AF1 /* immutable_sampler */ = {
			isa = PBXGroup;
			children = (
				A964BB071E4E976C00CA9AF1 /* immutable_sampler.cpp */,
			);
			path = immutable_sampler;
			sourceTree = "<group>";
		};
		A964BB081E4E976C00CA9AF1 /* init_texture */ = {
			isa = PBXGroup;
			children = (
				A964BB091E4E976C00CA9AF1 /* init_texture.cpp */,
			);
			path = init_texture;
			sourceTree = "<group>";
		};
		A964BB0A1E4E976C00CA9AF1 /* input_attachment */ = {
			isa = PBXGroup;
			children = (
				A964BB0B1E4E976C00CA9AF1 /* input_attachment.cpp */,
			);
			path = input_attachment;
			sourceTree = "<group>";
		};
		A964BB0C1E4E976C00CA9AF1 /* instance_extension_properties */ = {
			isa = PBXGroup;
			children = (
				A964BB0D1E4E976C00CA9AF1 /* instance_extension_properties.cpp */,
			);
			path = instance_extension_properties;
			sourceTree = "<group>";
		};
		A964BB0E1E4E976C00CA9AF1 /* instance_layer_extension_properties */ = {
			isa = PBXGroup;
			children = (
				A964BB0F1E4E976C00CA9AF1 /* instance_layer_extension_properties.cpp */,
			);
			path = instance_layer_extension_properties;
			sourceTree = "<group>";
		};
		A964BB101E4E976C00CA9AF1 /* instance_layer_properties */ = {
			isa = PBXGroup;
			children = (
				A964BB111E4E976C00CA9AF1 /* instance_layer_properties.cpp */,
			);
			path = instance_layer_properties;
			sourceTree = "<group>";
		};
		A964BB121E4E976C00CA9AF1 /* memory_barriers */ = {
			isa = PBXGroup;
			children = (
				A964BB131E4E976C00CA9AF1 /* memory_barriers.cpp */,
			);
			path = memory_barriers;
			sourceTree = "<group>";
		};
		A964BB141E4E976C00CA9AF1 /* multiple_sets */ = {
			isa = PBXGroup;
			children = (
				A964BB151E4E976C00CA9AF1 /* multiple_sets.cpp */,
			);
			path = multiple_sets;
			sourceTree = "<group>";
		};
		A964BB161E4E976C00CA9AF1 /* multithreaded_command_buffers */ = {
			isa = PBXGroup;
			children = (
				A964BB171E4E976C00CA9AF1 /* multithreaded_command_buffers.cpp */,
			);
			path = multithreaded_command_buffers;
			sourceTree = "<group>";
		};
		A964BB181E4E976C00CA9AF1 /* occlusion_query */ = {
			isa = PBXGroup;
			children = (
				A964BB191E4E976C00CA9AF1 /* occlusion_query.cpp */,
			);
			path = occlusion_query;
			sourceTree = "<group>";
		};
		A964BB1A1E4E976C00CA9AF1 /* pipeline_cache */ = {
			isa = PBXGroup;
			children = (
				A964BB1B1E4E976C00CA9AF1 /* pipeline_cache.cpp */,
			);
			path = pipeline_cache;
			sourceTree = "<group>";
		};
		A964BB1C1E4E976C00CA9AF1 /* pipeline_derivative */ = {
			isa = PBXGroup;
			children = (
				A964BB1D1E4E976C00CA9AF1 /* pipeline_derivative.cpp */,
			);
			path = pipeline_derivative;
			sourceTree = "<group>";
		};
		A964BB1E1E4E976C00CA9AF1 /* push_constants */ = {
			isa = PBXGroup;
			children = (
				A964BB1F1E4E976C00CA9AF1 /* push_constants.cpp */,
			);
			path = push_constants;
			sourceTree = "<group>";
		};
		A964BB201E4E976C00CA9AF1 /* secondary_command_buffer */ = {
			isa = PBXGroup;
			children = (
				A964BB211E4E976C00CA9AF1 /* secondary_command_buffer.cpp */,
			);
			path = secondary_command_buffer;
			sourceTree = "<group>";
		};
		A964BB221E4E976C00CA9AF1 /* separate_image_sampler */ = {
			isa = PBXGroup;
			children = (
				A964BB231E4E976C00CA9AF1 /* separate_image_sampler.cpp */,
			);
			path = separate_image_sampler;
			sourceTree = "<group>";
		};
		A964BB241E4E976C00CA9AF1 /* spirv_assembly */ = {
			isa = PBXGroup;
			children = (
				A964BB251E4E976C00CA9AF1 /* spirv_assembly.cpp */,
			);
			path = spirv_assembly;
			sourceTree = "<group>";
		};
		A964BB261E4E976C00CA9AF1 /* spirv_specialization */ = {
			isa = PBXGroup;
			children = (
				A964BB271E4E976C00CA9AF1 /* spirv_specialization.cpp */,
			);
			path = spirv_specialization;
			sourceTree = "<group>";
		};
		A964BB281E4E976C00CA9AF1 /* template */ = {
			isa = PBXGroup;
			children = (
				A964BB291E4E976C00CA9AF1 /* template.cpp */,
			);
			path = template;
			sourceTree = "<group>";
		};
		A964BB2A1E4E976C00CA9AF1 /* texel_buffer */ = {
			isa = PBXGroup;
			children = (
				A964BB2B1E4E976C00CA9AF1 /* texel_buffer.cpp */,
			);
			path = texel_buffer;
			sourceTree = "<group>";
		};
		A964BB5C1E4EA6FB00CA9AF1 /* utils */ = {
			isa = PBXGroup;
			children = (
				A964BC601E4EA6FC00CA9AF1 /* samples_platform.h */,
				A964BC611E4EA6FC00CA9AF1 /* util.cpp */,
				A964BC621E4EA6FC00CA9AF1 /* util.hpp */,
				A964BC631E4EA6FC00CA9AF1 /* util_init.cpp */,
				A964BC641E4EA6FC00CA9AF1 /* util_init.hpp */,
			);
			path = utils;
			sourceTree = "<group>";
		};
		A9B67B6A1C3AAE9800373FFD /* iOS */ = {
			isa = PBXGroup;
			children = (
				A9B67B6B1C3AAE9800373FFD /* AppDelegate.h */,
				A9B67B6C1C3AAE9800373FFD /* AppDelegate.m */,
				A9B67B6E1C3AAE9800373FFD /* DemoViewController.h */,
				A9B67B6F1C3AAE9800373FFD /* DemoViewController.mm */,
				A9B67B701C3AAE9800373FFD /* Info.plist */,
				A9B67B711C3AAE9800373FFD /* main.m */,
				A9B67B721C3AAE9800373FFD /* Prefix.pch */,
				A9B67B731C3AAE9800373FFD /* Resources */,
			);
			path = iOS;
			sourceTree = "<group>";
		};
		A9B67B731C3AAE9800373FFD /* Resources */ = {
			isa = PBXGroup;
			children = (
				A9B67B741C3AAE9800373FFD /* Default-568h@2x.png */,
				A9B67B751C3AAE9800373FFD /* Default~ipad.png */,
				A9B67B761C3AAE9800373FFD /* Icon.png */,
				A9B67B771C3AAE9800373FFD /* Main.storyboard */,
			);
			path = Resources;
			sourceTree = "<group>";
		};
		A9B67B811C3AAEA200373FFD /* macOS */ = {
			isa = PBXGroup;
			children = (
				A9B67B821C3AAEA200373FFD /* AppDelegate.h */,
				A9B67B831C3AAEA200373FFD /* AppDelegate.m */,
				A9B67B841C3AAEA200373FFD /* DemoViewController.h */,
				A9B67B851C3AAEA200373FFD /* DemoViewController.mm */,
				A9B67B861C3AAEA200373FFD /* Info.plist */,
				A9B67B871C3AAEA200373FFD /* main.m */,
				A9B67B881C3AAEA200373FFD /* Prefix.pch */,
				A9B67B891C3AAEA200373FFD /* Resources */,
			);
			path = macOS;
			sourceTree = "<group>";
		};
		A9B67B891C3AAEA200373FFD /* Resources */ = {
			isa = PBXGroup;
			children = (
				A9B67B8A1C3AAEA200373FFD /* Main.storyboard */,
				A9B67B8B1C3AAEA200373FFD /* macOS.xcassets */,
			);
			path = Resources;
			sourceTree = "<group>";
		};
		A9C2AB9F218505B000DDBC03 /* Frameworks */ = {
			isa = PBXGroup;
			children = (
				A9C2ABA5218505CB00DDBC03 /* MoltenVK.framework */,
				A9C2ABA4218505CB00DDBC03 /* MoltenVKGLSLToSPIRVConverter.framework */,
				A9C2ABA1218505B000DDBC03 /* MoltenVK.framework */,
				A9C2ABA0218505B000DDBC03 /* MoltenVKGLSLToSPIRVConverter.framework */,
			);
			name = Frameworks;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXNativeTarget section */
		1D6058900D05DD3D006BFB54 /* API-Samples-iOS */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "API-Samples-iOS" */;
			buildPhases = (
				1D60588D0D05DD3D006BFB54 /* Resources */,
				1D60588E0D05DD3D006BFB54 /* Sources */,
				1D60588F0D05DD3D006BFB54 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "API-Samples-iOS";
			productName = foo;
			productReference = 1D6058910D05DD3D006BFB54 /* API-Samples.app */;
			productType = "com.apple.product-type.application";
		};
		A977BCBD1B66BB010067E5BF /* API-Samples-macOS */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = A977BCFB1B66BB010067E5BF /* Build configuration list for PBXNativeTarget "API-Samples-macOS" */;
			buildPhases = (
				A977BCBE1B66BB010067E5BF /* Resources */,
				A977BCC91B66BB010067E5BF /* Sources */,
				A977BCF11B66BB010067E5BF /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "API-Samples-macOS";
			productName = foo;
			productReference = A977BCFE1B66BB010067E5BF /* API-Samples.app */;
			productType = "com.apple.product-type.application";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		29B97313FDCFA39411CA2CEA /* Project object */ = {
			isa = PBXProject;
			attributes = {
				LastUpgradeCheck = 1150;
			};
			buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "API-Samples" */;
			compatibilityVersion = "Xcode 8.0";
			developmentRegion = en;
			hasScannedForEncodings = 1;
			knownRegions = (
				de,
				en,
				Base,
				fr,
				ja,
			);
			mainGroup = 29B97314FDCFA39411CA2CEA /* CustomTemplate */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				1D6058900D05DD3D006BFB54 /* API-Samples-iOS */,
				A977BCBD1B66BB010067E5BF /* API-Samples-macOS */,
			);
		};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
		1D60588D0D05DD3D006BFB54 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				A9B67B7F1C3AAE9800373FFD /* Icon.png in Resources */,
				A95C050B1C98FC1100CC653D /* blue.ppm in Resources */,
				A9B67B801C3AAE9800373FFD /* Main.storyboard in Resources */,
				A95C05151C98FC1100CC653D /* red.ppm in Resources */,
				A95C05131C98FC1100CC653D /* lunarg.ppm in Resources */,
				A95C05111C98FC1100CC653D /* logo-256x256.png in Resources */,
				A95C050D1C98FC1100CC653D /* green.ppm in Resources */,
				A9B67B7E1C3AAE9800373FFD /* Default~ipad.png in Resources */,
				A95C050F1C98FC1100CC653D /* logo-256x256-solid.png in Resources */,
				A95C05191C98FC1100CC653D /* yellow.ppm in Resources */,
				A95C05171C98FC1100CC653D /* spotlight.ppm in Resources */,
				A9B67B7D1C3AAE9800373FFD /* Default-568h@2x.png in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		A977BCBE1B66BB010067E5BF /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				A9B67B911C3AAEA200373FFD /* macOS.xcassets in Resources */,
				A95C05141C98FC1100CC653D /* lunarg.ppm in Resources */,
				A95C050E1C98FC1100CC653D /* green.ppm in Resources */,
				A95C050C1C98FC1100CC653D /* blue.ppm in Resources */,
				A95C05181C98FC1100CC653D /* spotlight.ppm in Resources */,
				A9B67B901C3AAEA200373FFD /* Main.storyboard in Resources */,
				A95C05161C98FC1100CC653D /* red.ppm in Resources */,
				A95C051A1C98FC1100CC653D /* yellow.ppm in Resources */,
				A95C05101C98FC1100CC653D /* logo-256x256-solid.png in Resources */,
				A95C05121C98FC1100CC653D /* logo-256x256.png in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		1D60588E0D05DD3D006BFB54 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				A9B67B7A1C3AAE9800373FFD /* DemoViewController.mm in Sources */,
				A964BD3F1E4EA6FC00CA9AF1 /* util_init.cpp in Sources */,
				A9B67B781C3AAE9800373FFD /* AppDelegate.m in Sources */,
				A964BD3D1E4EA6FC00CA9AF1 /* util.cpp in Sources */,
				A9B67B7C1C3AAE9800373FFD /* main.m in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		A977BCC91B66BB010067E5BF /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				A9B67B8C1C3AAEA200373FFD /* AppDelegate.m in Sources */,
				A964BD401E4EA6FC00CA9AF1 /* util_init.cpp in Sources */,
				A9B67B8F1C3AAEA200373FFD /* main.m in Sources */,
				A964BD3E1E4EA6FC00CA9AF1 /* util.cpp in Sources */,
				A9B67B8D1C3AAEA200373FFD /* DemoViewController.mm in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin XCBuildConfiguration section */
		1D6058940D05DD3E006BFB54 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CODE_SIGN_IDENTITY = "iPhone Developer";
				DEVELOPMENT_TEAM = "";
				FRAMEWORK_SEARCH_PATHS = (
					"\"$(SRCROOT)/../../../MoltenVK/iOS/framework\"",
					"\"$(SRCROOT)/../../../MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/iOS/framework\"",
				);
				GCC_PREFIX_HEADER = "$(SRCROOT)/iOS/Prefix.pch";
				GCC_PREPROCESSOR_DEFINITIONS = (
					"$(inherited)",
					"DEBUG=1",
					_DEBUG,
				);
				GCC_WARN_64_TO_32_BIT_CONVERSION = NO;
				INFOPLIST_FILE = "$(SRCROOT)/iOS/Info.plist";
				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
				PRODUCT_BUNDLE_IDENTIFIER = "com.moltenvk.API-Samples";
				PRODUCT_NAME = "API-Samples";
				SDKROOT = iphoneos;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Debug;
		};
		1D6058950D05DD3E006BFB54 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CODE_SIGN_IDENTITY = "iPhone Developer";
				DEVELOPMENT_TEAM = "";
				FRAMEWORK_SEARCH_PATHS = (
					"\"$(SRCROOT)/../../../MoltenVK/iOS/framework\"",
					"\"$(SRCROOT)/../../../MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/iOS/framework\"",
				);
				GCC_PREFIX_HEADER = "$(SRCROOT)/iOS/Prefix.pch";
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				GCC_WARN_64_TO_32_BIT_CONVERSION = NO;
				INFOPLIST_FILE = "$(SRCROOT)/iOS/Info.plist";
				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
				PRODUCT_BUNDLE_IDENTIFIER = "com.moltenvk.API-Samples";
				PRODUCT_NAME = "API-Samples";
				SDKROOT = iphoneos;
				TARGETED_DEVICE_FAMILY = "1,2";
			};
			name = Release;
		};
		A977BCFC1B66BB010067E5BF /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				COMBINE_HIDPI_IMAGES = YES;
				FRAMEWORK_SEARCH_PATHS = (
					"\"$(SRCROOT)/../../../MoltenVK/macOS/framework\"",
					"\"$(SRCROOT)/../../../MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/macOS/framework\"",
				);
				GCC_PREFIX_HEADER = "$(SRCROOT)/macOS/Prefix.pch";
				GCC_PREPROCESSOR_DEFINITIONS = (
					"$(inherited)",
					"DEBUG=1",
					_DEBUG,
				);
				INFOPLIST_FILE = "$(SRCROOT)/macOS/Info.plist";
				MACOSX_DEPLOYMENT_TARGET = 10.11;
				OTHER_LDFLAGS = (
					"$(inherited)",
					"-w",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.moltenvk.API-Samples";
				PRODUCT_NAME = "API-Samples";
				SDKROOT = macosx;
			};
			name = Debug;
		};
		A977BCFD1B66BB010067E5BF /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
				COMBINE_HIDPI_IMAGES = YES;
				FRAMEWORK_SEARCH_PATHS = (
					"\"$(SRCROOT)/../../../MoltenVK/macOS/framework\"",
					"\"$(SRCROOT)/../../../MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/macOS/framework\"",
				);
				GCC_PREFIX_HEADER = "$(SRCROOT)/macOS/Prefix.pch";
				GCC_PREPROCESSOR_DEFINITIONS = "$(inherited)";
				INFOPLIST_FILE = "$(SRCROOT)/macOS/Info.plist";
				MACOSX_DEPLOYMENT_TARGET = 10.11;
				OTHER_LDFLAGS = (
					"$(inherited)",
					"-w",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.moltenvk.API-Samples";
				PRODUCT_NAME = "API-Samples";
				SDKROOT = macosx;
			};
			name = Release;
		};
		C01FCF4F08A954540054247B /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ARCHS = "$(ARCHS_STANDARD_64_BIT)";
				CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = NO;
				COPY_PHASE_STRIP = NO;
				ENABLE_BITCODE = NO;
				ENABLE_TESTABILITY = YES;
				GCC_C_LANGUAGE_STANDARD = c99;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PRECOMPILE_PREFIX_HEADER = YES;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"VULKAN_SAMPLES_BASE_DIR=\\\"Samples\\\"",
					MVK_SAMP_15_draw_cube,
				);
				GCC_SYMBOLS_PRIVATE_EXTERN = NO;
				GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO;
				GCC_WARN_ABOUT_RETURN_TYPE = YES;
				HEADER_SEARCH_PATHS = (
					"\"$(SRCROOT)/../../../MoltenVK/include\"",
					"\"$(SRCROOT)/../VulkanSamples/API-Samples/utils\"",
				);
				ONLY_ACTIVE_ARCH = YES;
				PRODUCT_BUNDLE_IDENTIFIER = "com.moltenvk.${PRODUCT_NAME:identifier}";
				PRODUCT_NAME = "${PROJECT}";
			};
			name = Debug;
		};
		C01FCF5008A954540054247B /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ARCHS = "$(ARCHS_STANDARD_64_BIT)";
				CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = NO;
				ENABLE_BITCODE = NO;
				GCC_C_LANGUAGE_STANDARD = c99;
				GCC_PRECOMPILE_PREFIX_HEADER = YES;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"VULKAN_SAMPLES_BASE_DIR=\\\"Samples\\\"",
					MVK_SAMP_15_draw_cube,
				);
				GCC_SYMBOLS_PRIVATE_EXTERN = NO;
				GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO;
				GCC_WARN_ABOUT_RETURN_TYPE = YES;
				HEADER_SEARCH_PATHS = (
					"\"$(SRCROOT)/../../../MoltenVK/include\"",
					"\"$(SRCROOT)/../VulkanSamples/API-Samples/utils\"",
				);
				PRODUCT_BUNDLE_IDENTIFIER = "com.moltenvk.${PRODUCT_NAME:identifier}";
				PRODUCT_NAME = "${PROJECT}";
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "API-Samples-iOS" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				1D6058940D05DD3E006BFB54 /* Debug */,
				1D6058950D05DD3E006BFB54 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		A977BCFB1B66BB010067E5BF /* Build configuration list for PBXNativeTarget "API-Samples-macOS" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				A977BCFC1B66BB010067E5BF /* Debug */,
				A977BCFD1B66BB010067E5BF /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		C01FCF4E08A954540054247B /* Build configuration list for PBXProject "API-Samples" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				C01FCF4F08A954540054247B /* Debug */,
				C01FCF5008A954540054247B /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
}
