Merge pull request #212 from billhollings/master
Rename folders and project for Cube demo.
diff --git a/Demos/Demos.xcworkspace/contents.xcworkspacedata b/Demos/Demos.xcworkspace/contents.xcworkspacedata
index c633e37..87886c3 100644
--- a/Demos/Demos.xcworkspace/contents.xcworkspacedata
+++ b/Demos/Demos.xcworkspace/contents.xcworkspacedata
@@ -11,7 +11,7 @@
location = "group:LunarG-VulkanSamples/API-Samples/API-Samples.xcodeproj">
</FileRef>
<FileRef
- location = "group:LunarG-VulkanSamples/Demos/Demos.xcodeproj">
+ location = "group:LunarG-VulkanSamples/Cube/Cube.xcodeproj">
</FileRef>
<FileRef
location = "group:LunarG-VulkanSamples/Hologram/Hologram.xcodeproj">
diff --git a/Demos/LunarG-VulkanSamples/Demos/Demos.xcodeproj/project.pbxproj b/Demos/LunarG-VulkanSamples/Cube/Cube.xcodeproj/project.pbxproj
similarity index 97%
rename from Demos/LunarG-VulkanSamples/Demos/Demos.xcodeproj/project.pbxproj
rename to Demos/LunarG-VulkanSamples/Cube/Cube.xcodeproj/project.pbxproj
index 914e26a..217df23 100644
--- a/Demos/LunarG-VulkanSamples/Demos/Demos.xcodeproj/project.pbxproj
+++ b/Demos/LunarG-VulkanSamples/Cube/Cube.xcodeproj/project.pbxproj
@@ -55,13 +55,11 @@
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
- A904B4641C99B5950008C013 /* Demos.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Demos.h; sourceTree = "<group>"; };
A904B52E1C9A08C90008C013 /* cube-frag.spv */ = {isa = PBXFileReference; lastKnownFileType = file; path = "cube-frag.spv"; sourceTree = "<group>"; };
A904B52F1C9A08C90008C013 /* cube-vert.spv */ = {isa = PBXFileReference; lastKnownFileType = file; path = "cube-vert.spv"; sourceTree = "<group>"; };
A904B5301C9A08C90008C013 /* cube.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = cube.c; sourceTree = "<group>"; };
A904B5311C9A08C90008C013 /* cube.frag */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = cube.frag; sourceTree = "<group>"; };
A904B5331C9A08C90008C013 /* cube.vert */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; path = cube.vert; sourceTree = "<group>"; };
- A904B5351C9A08C90008C013 /* lunarg.ppm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = lunarg.ppm; sourceTree = "<group>"; };
A9096E501F7EF11A00DFBEA6 /* IOSurface.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOSurface.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.0.sdk/System/Library/Frameworks/IOSurface.framework; sourceTree = DEVELOPER_DIR; };
A91F439F1EDDD46B00733D01 /* libMoltenVK.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libMoltenVK.dylib; path = ../../../MoltenVK/iOS/libMoltenVK.dylib; sourceTree = "<group>"; };
A91F43A41EDDD5CF00733D01 /* libc++.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = "libc++.tbd"; path = "Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/usr/lib/libc++.tbd"; sourceTree = DEVELOPER_DIR; };
@@ -127,7 +125,6 @@
29B97314FDCFA39411CA2CEA /* CustomTemplate */ = {
isa = PBXGroup;
children = (
- A904B4641C99B5950008C013 /* Demos.h */,
A904B52C1C9A08C80008C013 /* cube */,
A9B67B6A1C3AAE9800373FFD /* iOS */,
A9B67B811C3AAEA200373FFD /* macOS */,
@@ -145,7 +142,6 @@
A904B5301C9A08C90008C013 /* cube.c */,
A904B5311C9A08C90008C013 /* cube.frag */,
A904B5331C9A08C90008C013 /* cube.vert */,
- A904B5351C9A08C90008C013 /* lunarg.ppm */,
);
name = cube;
path = "../Vulkan-Tools/cube";
@@ -269,7 +265,7 @@
};
};
};
- buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Demos" */;
+ buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Cube" */;
compatibilityVersion = "Xcode 8.0";
developmentRegion = English;
hasScannedForEncodings = 1;
@@ -525,7 +521,7 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
- C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Demos" */ = {
+ C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Cube" */ = {
isa = XCConfigurationList;
buildConfigurations = (
C01FCF4F08A954540054247B /* Debug */,
diff --git a/Demos/LunarG-VulkanSamples/Demos/Demos.xcodeproj/xcshareddata/xcschemes/Cube-iOS.xcscheme b/Demos/LunarG-VulkanSamples/Cube/Cube.xcodeproj/xcshareddata/xcschemes/Cube-iOS.xcscheme
similarity index 92%
rename from Demos/LunarG-VulkanSamples/Demos/Demos.xcodeproj/xcshareddata/xcschemes/Cube-iOS.xcscheme
rename to Demos/LunarG-VulkanSamples/Cube/Cube.xcodeproj/xcshareddata/xcschemes/Cube-iOS.xcscheme
index 811a400..545d09d 100644
--- a/Demos/LunarG-VulkanSamples/Demos/Demos.xcodeproj/xcshareddata/xcschemes/Cube-iOS.xcscheme
+++ b/Demos/LunarG-VulkanSamples/Cube/Cube.xcodeproj/xcshareddata/xcschemes/Cube-iOS.xcscheme
@@ -17,7 +17,7 @@
BlueprintIdentifier = "A9B53B291C3AC15200ABC6F6"
BuildableName = "Cube.app"
BlueprintName = "Cube-iOS"
- ReferencedContainer = "container:Demos.xcodeproj">
+ ReferencedContainer = "container:Cube.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
@@ -35,7 +35,7 @@
BlueprintIdentifier = "A9B53B291C3AC15200ABC6F6"
BuildableName = "Cube.app"
BlueprintName = "Cube-iOS"
- ReferencedContainer = "container:Demos.xcodeproj">
+ ReferencedContainer = "container:Cube.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
@@ -63,7 +63,7 @@
BlueprintIdentifier = "A9B53B291C3AC15200ABC6F6"
BuildableName = "Cube.app"
BlueprintName = "Cube-iOS"
- ReferencedContainer = "container:Demos.xcodeproj">
+ ReferencedContainer = "container:Cube.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
@@ -81,7 +81,7 @@
BlueprintIdentifier = "A9B53B291C3AC15200ABC6F6"
BuildableName = "Cube.app"
BlueprintName = "Cube-iOS"
- ReferencedContainer = "container:Demos.xcodeproj">
+ ReferencedContainer = "container:Cube.xcodeproj">
</BuildableReference>
</MacroExpansion>
</ProfileAction>
diff --git a/Demos/LunarG-VulkanSamples/Demos/Demos.xcodeproj/xcshareddata/xcschemes/Cube-macOS.xcscheme b/Demos/LunarG-VulkanSamples/Cube/Cube.xcodeproj/xcshareddata/xcschemes/Cube-macOS.xcscheme
similarity index 92%
rename from Demos/LunarG-VulkanSamples/Demos/Demos.xcodeproj/xcshareddata/xcschemes/Cube-macOS.xcscheme
rename to Demos/LunarG-VulkanSamples/Cube/Cube.xcodeproj/xcshareddata/xcschemes/Cube-macOS.xcscheme
index 67ed7dd..6f2b551 100644
--- a/Demos/LunarG-VulkanSamples/Demos/Demos.xcodeproj/xcshareddata/xcschemes/Cube-macOS.xcscheme
+++ b/Demos/LunarG-VulkanSamples/Cube/Cube.xcodeproj/xcshareddata/xcschemes/Cube-macOS.xcscheme
@@ -17,7 +17,7 @@
BlueprintIdentifier = "A9B53B0F1C3AC0BE00ABC6F6"
BuildableName = "Cube.app"
BlueprintName = "Cube-macOS"
- ReferencedContainer = "container:Demos.xcodeproj">
+ ReferencedContainer = "container:Cube.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
@@ -35,7 +35,7 @@
BlueprintIdentifier = "A9B53B0F1C3AC0BE00ABC6F6"
BuildableName = "Cube.app"
BlueprintName = "Cube-macOS"
- ReferencedContainer = "container:Demos.xcodeproj">
+ ReferencedContainer = "container:Cube.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
@@ -63,7 +63,7 @@
BlueprintIdentifier = "A9B53B0F1C3AC0BE00ABC6F6"
BuildableName = "Cube.app"
BlueprintName = "Cube-macOS"
- ReferencedContainer = "container:Demos.xcodeproj">
+ ReferencedContainer = "container:Cube.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
@@ -81,7 +81,7 @@
BlueprintIdentifier = "A9B53B0F1C3AC0BE00ABC6F6"
BuildableName = "Cube.app"
BlueprintName = "Cube-macOS"
- ReferencedContainer = "container:Demos.xcodeproj">
+ ReferencedContainer = "container:Cube.xcodeproj">
</BuildableReference>
</MacroExpansion>
</ProfileAction>
diff --git a/Demos/LunarG-VulkanSamples/Demos/iOS/AppDelegate.h b/Demos/LunarG-VulkanSamples/Cube/iOS/AppDelegate.h
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/iOS/AppDelegate.h
rename to Demos/LunarG-VulkanSamples/Cube/iOS/AppDelegate.h
diff --git a/Demos/LunarG-VulkanSamples/Demos/iOS/AppDelegate.m b/Demos/LunarG-VulkanSamples/Cube/iOS/AppDelegate.m
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/iOS/AppDelegate.m
rename to Demos/LunarG-VulkanSamples/Cube/iOS/AppDelegate.m
diff --git a/Demos/LunarG-VulkanSamples/Demos/iOS/DemoViewController.h b/Demos/LunarG-VulkanSamples/Cube/iOS/DemoViewController.h
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/iOS/DemoViewController.h
rename to Demos/LunarG-VulkanSamples/Cube/iOS/DemoViewController.h
diff --git a/Demos/LunarG-VulkanSamples/Demos/iOS/DemoViewController.m b/Demos/LunarG-VulkanSamples/Cube/iOS/DemoViewController.m
similarity index 95%
rename from Demos/LunarG-VulkanSamples/Demos/iOS/DemoViewController.m
rename to Demos/LunarG-VulkanSamples/Cube/iOS/DemoViewController.m
index 1ae7dec..e4c152d 100644
--- a/Demos/LunarG-VulkanSamples/Demos/iOS/DemoViewController.m
+++ b/Demos/LunarG-VulkanSamples/Cube/iOS/DemoViewController.m
@@ -18,7 +18,8 @@
#import "DemoViewController.h"
-#include "../Demos.h" // The LunarG Vulkan SDK demo code
+#include <MoltenVK/mvk_vulkan.h>
+#include "../../Vulkan-Tools/cube/cube.c"
#pragma mark -
diff --git a/Demos/LunarG-VulkanSamples/Demos/iOS/Info.plist b/Demos/LunarG-VulkanSamples/Cube/iOS/Info.plist
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/iOS/Info.plist
rename to Demos/LunarG-VulkanSamples/Cube/iOS/Info.plist
diff --git a/Demos/LunarG-VulkanSamples/Demos/iOS/Prefix.pch b/Demos/LunarG-VulkanSamples/Cube/iOS/Prefix.pch
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/iOS/Prefix.pch
rename to Demos/LunarG-VulkanSamples/Cube/iOS/Prefix.pch
diff --git a/Demos/LunarG-VulkanSamples/Demos/iOS/Resources/Default-568h@2x.png b/Demos/LunarG-VulkanSamples/Cube/iOS/Resources/Default-568h@2x.png
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/iOS/Resources/Default-568h@2x.png
rename to Demos/LunarG-VulkanSamples/Cube/iOS/Resources/Default-568h@2x.png
Binary files differ
diff --git a/Demos/LunarG-VulkanSamples/Demos/iOS/Resources/Default~ipad.png b/Demos/LunarG-VulkanSamples/Cube/iOS/Resources/Default~ipad.png
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/iOS/Resources/Default~ipad.png
rename to Demos/LunarG-VulkanSamples/Cube/iOS/Resources/Default~ipad.png
Binary files differ
diff --git a/Demos/LunarG-VulkanSamples/Demos/iOS/Resources/Icon.png b/Demos/LunarG-VulkanSamples/Cube/iOS/Resources/Icon.png
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/iOS/Resources/Icon.png
rename to Demos/LunarG-VulkanSamples/Cube/iOS/Resources/Icon.png
Binary files differ
diff --git a/Demos/LunarG-VulkanSamples/Demos/iOS/Resources/Main.storyboard b/Demos/LunarG-VulkanSamples/Cube/iOS/Resources/Main.storyboard
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/iOS/Resources/Main.storyboard
rename to Demos/LunarG-VulkanSamples/Cube/iOS/Resources/Main.storyboard
diff --git a/Demos/LunarG-VulkanSamples/Demos/iOS/main.m b/Demos/LunarG-VulkanSamples/Cube/iOS/main.m
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/iOS/main.m
rename to Demos/LunarG-VulkanSamples/Cube/iOS/main.m
diff --git a/Demos/LunarG-VulkanSamples/Demos/include/cube.frag.inc b/Demos/LunarG-VulkanSamples/Cube/include/cube.frag.inc
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/include/cube.frag.inc
rename to Demos/LunarG-VulkanSamples/Cube/include/cube.frag.inc
diff --git a/Demos/LunarG-VulkanSamples/Demos/include/cube.vert.inc b/Demos/LunarG-VulkanSamples/Cube/include/cube.vert.inc
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/include/cube.vert.inc
rename to Demos/LunarG-VulkanSamples/Cube/include/cube.vert.inc
diff --git a/Demos/LunarG-VulkanSamples/Demos/include/vk_enum_string_helper.h b/Demos/LunarG-VulkanSamples/Cube/include/vk_enum_string_helper.h
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/include/vk_enum_string_helper.h
rename to Demos/LunarG-VulkanSamples/Cube/include/vk_enum_string_helper.h
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/AppDelegate.h b/Demos/LunarG-VulkanSamples/Cube/macOS/AppDelegate.h
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/AppDelegate.h
rename to Demos/LunarG-VulkanSamples/Cube/macOS/AppDelegate.h
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/AppDelegate.m b/Demos/LunarG-VulkanSamples/Cube/macOS/AppDelegate.m
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/AppDelegate.m
rename to Demos/LunarG-VulkanSamples/Cube/macOS/AppDelegate.m
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/DemoViewController.h b/Demos/LunarG-VulkanSamples/Cube/macOS/DemoViewController.h
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/DemoViewController.h
rename to Demos/LunarG-VulkanSamples/Cube/macOS/DemoViewController.h
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/DemoViewController.m b/Demos/LunarG-VulkanSamples/Cube/macOS/DemoViewController.m
similarity index 96%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/DemoViewController.m
rename to Demos/LunarG-VulkanSamples/Cube/macOS/DemoViewController.m
index a12b86e..dcdd110 100644
--- a/Demos/LunarG-VulkanSamples/Demos/macOS/DemoViewController.m
+++ b/Demos/LunarG-VulkanSamples/Cube/macOS/DemoViewController.m
@@ -19,7 +19,8 @@
#import "DemoViewController.h"
#import <QuartzCore/CAMetalLayer.h>
-#include "../Demos.h" // The LunarG Vulkan SDK demo code
+#include <MoltenVK/mvk_vulkan.h>
+#include "../../Vulkan-Tools/cube/cube.c"
#pragma mark -
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/Info.plist b/Demos/LunarG-VulkanSamples/Cube/macOS/Info.plist
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/Info.plist
rename to Demos/LunarG-VulkanSamples/Cube/macOS/Info.plist
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/Prefix.pch b/Demos/LunarG-VulkanSamples/Cube/macOS/Prefix.pch
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/Prefix.pch
rename to Demos/LunarG-VulkanSamples/Cube/macOS/Prefix.pch
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/Resources/Main.storyboard b/Demos/LunarG-VulkanSamples/Cube/macOS/Resources/Main.storyboard
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/Resources/Main.storyboard
rename to Demos/LunarG-VulkanSamples/Cube/macOS/Resources/Main.storyboard
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Contents.json b/Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Contents.json
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Contents.json
rename to Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Contents.json
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-128.png b/Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-128.png
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-128.png
rename to Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-128.png
Binary files differ
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-16.png b/Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-16.png
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-16.png
rename to Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-16.png
Binary files differ
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-256.png b/Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-256.png
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-256.png
rename to Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-256.png
Binary files differ
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-32.png b/Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-32.png
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-32.png
rename to Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-32.png
Binary files differ
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-512.png b/Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-512.png
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-512.png
rename to Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/AppIcon.appiconset/Icon-512.png
Binary files differ
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/Contents.json b/Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/Contents.json
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/Resources/macOS.xcassets/Contents.json
rename to Demos/LunarG-VulkanSamples/Cube/macOS/Resources/macOS.xcassets/Contents.json
diff --git a/Demos/LunarG-VulkanSamples/Demos/macOS/main.m b/Demos/LunarG-VulkanSamples/Cube/macOS/main.m
similarity index 100%
rename from Demos/LunarG-VulkanSamples/Demos/macOS/main.m
rename to Demos/LunarG-VulkanSamples/Cube/macOS/main.m
diff --git a/Demos/LunarG-VulkanSamples/Demos/Demos.h b/Demos/LunarG-VulkanSamples/Demos/Demos.h
deleted file mode 100644
index 28ef925..0000000
--- a/Demos/LunarG-VulkanSamples/Demos/Demos.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Demos.h
- *
- * Copyright (c) 2014-2018 The Brenwill Workshop Ltd. (http://www.brenwill.com)
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-
-/** Loads the appropriate sample code, as indicated by the appropriate compiler build setting. */
-
-#include <MoltenVK/mvk_vulkan.h>
-
-#ifdef MVK_SAMP_CUBE
-# include "../Vulkan-Tools/cube/cube.c"
-#endif
-
-
diff --git a/Demos/README.md b/Demos/README.md
index 8cb75c6..fff3f5e 100644
--- a/Demos/README.md
+++ b/Demos/README.md
@@ -17,7 +17,7 @@
-----------------
- [LunarG Vulkan Samples](#lunarg-vulkan-samples)
- - [*Demos*](#lunarg-vulkan-samples-demos)
+ - [*Cube*](#lunarg-vulkan-samples-cube)
- [*API-Samples*](#lunarg-vulkan-samples-api)
- [*Hologram*](#lunarg-vulkan-samples-hologram)
- [Sascha Willems Vulkan Samples](#sascha-willems-vulkan-samples)
@@ -41,17 +41,20 @@
in the `Demos.xcworkspace` *Xcode* workspace.
-<a name="lunarg-vulkan-samples-demos"></a>
-### *Demos*
+<a name="lunarg-vulkan-samples-cube"></a>
+### *Cube*
A basic textured cube that spins in place.
-The demo can be found in the `LunarG-VulkanSamples/Demos` folder, and in the
-`LunarG-VulkanSamples/Demos` group in the *Xcode Project Navigator* in the
-`Demos.xcworkspace` *Xcode* workspace.
+The demo can be found in the `LunarG-VulkanSamples/Cube` folder, and in the
+`LunarG-VulkanSamples/Cube` group in the *Xcode Project Navigator* in the
+`Cube.xcworkspace` *Xcode* workspace.
To run this demo, run either the `Cube-iOS` or `Cube-macOS` *Scheme* from within *Xcode*.
+This demo includes a sizable window, and represents an example of how to detect, within your
+*Vulkan* code, when a window has been resized, and to modify the *Vulkan* swapchain accordingly.
+
This demo is a simple example of installing **MoltenVK** as a dynamic library, instead of as
a statically-linked framework. In this demo, the **MoltenVK** dynamic library is embedded in
the application, but it could have been installed as a system library instead.
diff --git a/Docs/Whats_New.md b/Docs/Whats_New.md
index c44c485..e1c3e0c 100644
--- a/Docs/Whats_New.md
+++ b/Docs/Whats_New.md
@@ -13,10 +13,335 @@
-MoltenVK 1.0.0
+MoltenVK 1.0.17
---------------
+Released 2018/07/31
+
+- Disable rasterization and return void from vertex shaders that write to resources.
+- Add SPIRVToMSLConverterOptions::isRasterizationDisabled to allow pipeline and
+ vertex shader to communicate rasterization status.
+- Track layered rendering capability.
+- Add MVKPhysicalDeviceMetalFeatures::layeredRendering.
+- Add mvkStaticCmdShaderSource() to generate static MSL shader source for commands.
+- Add MVKDevice::getMTLCompileOptions() to consolidate shader compilation options.
+- CreatePipelines return error when fragment MSL translation fails.
+- Add new vertex format VK_FORMAT_A2B10G10R10_SNORM_PACK32.
+- Fix watermark timing.
+- Update MoltenVK spec version to 6.
+- Remove obsolete deprecated licensing functions.
+- Rename folders and project for Cube demo.
+- Update What's New document for earlier releases.
+- Update to latest library dependencies.
+- Update to latest SPIRV-Cross version.
+
+
+MoltenVK 1.0.16
+---------------
+
+Released 2018/07/24
+
+- Fixes to attachment and image clearing to pass CTS tests.
+- MVKCmdClearAttachments support clearing multiple attachment layers.
+- MVKCmdClearImage use renderpass clear, and support clearning multiple image layers.
+- Rename mvkCmdClearImage() to mvkCmdClearColorImage().
+- MVKDevice add getFormatIsSupported() to allow devices to test for format support.
+- MVKFramebuffer support multiple layers.
+- mvk_datatypes.h support both 2D and 3D mipmap calculations and allow
+ mvkMTLPrimitiveTopologyClassFromVkPrimitiveTopology() in iOS.
+- Remove support for VK_FORMAT_B10G11R11_UFLOAT_PACK32 & VK_FORMAT_E5B9G9R9_UFLOAT_PACK32
+ since format components are reversed on Metal.
+- Report correct workgroup sizes from MTLDevice.
+- Retrieve VkPhysicalDeviceLimits::maxComputeWorkGroupSize &
+ maxComputeWorkGroupInvocations & maxComputeSharedMemorySize from MTLDevice.
+- Move OS extension source files to new OS directory.
+- Update to latest SPIRV-Cross version.
+
+
+
+MoltenVK 1.0.15
+---------------
+
+Released 2018/07/12
+
+- Link IOSurface on iOS only if IPHONEOS_DEPLOYMENT_TARGET is at least iOS 11.0.
+- Update to latest SPIRV-Cross.
+
+
+
+MoltenVK 1.0.14
+---------------
+
+Released 2018/07/04
+
+- vkGetPhysicalDeviceImageFormatProperties() indicate 1D texture limitations.
+- Fix compute shader workgroup size specialization.
+- Support separate specialization for each workgroup dimension.
+- Support zero as a specialization ID value.
+- Set correct value for VkPhysicalDeviceLimits::maxPerStageDescriptorInputAttachments.
+- Cleanup MoltenVKShaderConverterTool.
+- Update to latest SPIRV-Cross.
+
+
+
+MoltenVK 1.0.13
+---------------
+
+Released 2018/06/28
+
+- Support larger VkBufferViews by using 2D Metal textures.
+- Swapchain return VK_ERROR_OUT_OF_DATE_KHR when window resized.
+- Improve crispness of visuals on macOS Retina displays.
+- Set CAMetalLayer magnificationFilter property to Nearest by default.
+- Add MVKDeviceConfiguration::swapchainMagFilterUseNearest member to allow overrides.
+- Update to latest SPIRV-Cross.
+
+
+
+MoltenVK 1.0.12
+---------------
+
+Released 2018/06/22
+
+- Sorting Metal devices in the list of physicalDevices by whether they are headless.
+- vkCmdBlitImage() support texture arrays as source and destination targets.
+- vkCmdBlitImage() remove broken support for depth/stencil scaling.
+- vkCmdClearImage() fixes to clearing depth and stencil formats and avoid Metal validation errors.
+- Fix slice index when rendering to cube maps.
+- Fix texture file copy in Cube Demo.
+- fetchDeps: Add flags for pre-built repos.
+- Update to latest library dependencies to match Vulkan SDK 1.1.77.
+- Update to latest SPIRV-Cross.
+
+
+
+MoltenVK 1.0.11
+---------------
+
+Released 2018/06/12
+
+- Avoid fragment shader tracking interacting with vertex attributes.
+- Restrict allowed linear tiling features for pixel formats.
+- Fix bad logic when testing allowed linear tiling usage.
+- Fix copying 4-byte 32-bit depth/stencil formats between buffers and textures.
+- Fix MSL compilation failures on macOS 10.14 Mojave Beta.
+- Update to latest SPIRV-Cross.
+
+
+
+MoltenVK 1.0.10
+---------------
+
+Released 2018/06/05
+
+- Support mapping and filling device memory before binding an image to it.
+- Fix vsync not being enabled in IMMEDIATE present mode. MVK_MACOS was not being defined.
+- Avoid Metal validation error on MTLBuffer.contents access from private storage.
+- Support using Metal texel buffer for linear images to increase host coherency.
+- MVKDeviceMemory track MVKImages and MVKBuffers separately.
+- Per Vulkan spec, restrict linear images to 2D, non-array, single mipmap.
+- Use texel buffer if possible for texture on coherent device memory.
+- Only flush MVKImages (not MVKBuffers) when device memory mapped.
+- Do not flush texel buffer images.
+- Replace dependency on Vulkan-LoaderAndValidationLayers with Vulkan-Headers and Vulkan-Tools.
+- Update to latest SPIRV-Cross.
+
+
+
+MoltenVK 1.0.9
+--------------
+
+Released 2018/05/23
+
+- Fix an issue where the depth format in MVKCmdClearImage was not getting set correctly.
+- Move surface access to UI components to main thread.
+- Fix deadlock possibility between MVKFence and MVKFenceSitter.
+- Fix handling of locking on deferred-destruction objects.
+- vkGetPhysicalDeviceImageFormatProperties returns VK_ERROR_FORMAT_NOT_SUPPORTED
+ if the format is not supported.
+- Default value of MVKDeviceConfiguration::metalCompileTimeout set to infinite.
+- Update to latest SPIRV-Cross.
+
+
+
+MoltenVK 1.0.8
+--------------
+
+Released 2018/05/18
+
+- Allow queue processing to be optionally handled on the submitting (render) thread.
+- Update to latest SPIRV-Cross.
+
+
+
+MoltenVK 1.0.7
+--------------
+
+Released 2018/05/14
+
+- Cache MTLCommandQueues for reuse to handle long delays in creating new VkDevices and VkQueues.
+- Handle multiple MVKResources mapped to the same region of a single MVKDeviceMemory.
+- Add Metal library, function and pipeline compilation timeout limits.
+- Create copies of MVKShaderLibraries when merging pipeline caches.
+- Handle NULLs when freeing command buffers.
+- Replace delete with call to destroy() for all MVK objects.
+- Handle null pointers in vkDestroy...() functions.
+- Set default value of MVKDeviceConfiguration::supportLargeQueryPools to true by default.
+- Fixes to run Vulkan CTS without crashes.
+- Remove mutex locks on MVKDescriptorPool.
+- Update to latest SPIRV-Cross.
+
+
+
+MoltenVK 1.0.5
+--------------
+
+Released 2018/05/04
+
+- Add features to support Vulkan CTS.
+- Dynamically create frag shaders for clearning attachments and images.
+- Dynamically create frag shaders for blitting scaled images.
+- MVKGraphicsPipeline don't create MTLRenderPipelineState if vertex function conversion fails.
+- MVKComputePipeline don't create MTLComputePipelineState if compute function conversion fails.
+- Handle SPIRV-Cross errors thrown during SPIR-V parsing in compiler construction.
+- Set undefined property limits to large, but not max, values to avoid casting issues in app.
+- Mark multiDrawIndirect features as available.
+- Support VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT.
+- Separate categories from MVKOSExtensions.
+- Update to latest SPIRV-Cross.
+
+
+
+MoltenVK 1.0.4
+--------------
+
+Released 2018/04/22
+
+- Support depth clip mode only from MTLFeatureSet_iOS_GPUFamily2_v4 onwards.
+- MVKCmdClearAttachments & MVKCmdClearImage support multisampled attachments and images.
+- Don't use CAMetalLayer displaySyncEnabled property if it is not available.
+- Update python brew install command.
+- Update to latest SPIRV-Cross.
+
+
+
+MoltenVK 1.0.3
+--------------
+
+Released 2018/04/18
+
+- Add support for VK_PRESENT_MODE_IMMEDIATE_KHR swapchain presentation mode.
+- Round up row and layer byte counts when copying compressed images with sizes
+ that are not integer multiples of block size.
+- Queue and device wait idle handled by internal fence instead of semaphore.
+- vkCmdCopyBufferToImage() & vkCmdCopyImageToBuffer() support a VkBuffer
+ that is bound to an offseted position in a VkDeviceMemory.
+- MVKImage::getArrayLayers() reports only layer count and excludes depth.
+- Add workaround for apps that use one semaphore for all swapchain images.
+- Support deferred secondary signaling of semaphore & fence acquired while image is free.
+- Update to latest cube.c version.
+- Use ninja if available to build dependencies.
+- Build the demos in Travis-CI.
+- Update to latest V-LVL, glslang & SPIRV-Tools.
+- Update to latest SPIRV-Cross.
+
+
+
+MoltenVK 1.0.2
+--------------
+
+Released 2018/04/02
+
+- Add support for caching converted MSL shader code offline from pipeline cache
+ via vkGetPipelineCacheData(), vkCreatePipelineCache() & vkMergePipelineCaches().
+- Present using command buffer by default.
+- Support SPIR-V containing multiple entry points.
+- Add option for per-frame performance logging via un-commentable logging code.
+- VkPhysicalDeviceProperties::pipelineCacheUUID value derived from MoltenVK
+ version and highest supported Metal feature set.
+- vkCmdClearAttachments() don't attempt to clear non-existing depth & stencil attachments.
+- Always clamp scissors to render area to avoid Metal validation error.
+- Move fetchDependencies to top directory.
+- Turn caching of Externals off in .travis.yml.
+- Add instructions in README.md about building MoltenVK via the command line.
+- Update to latest SPIRV-Cross.
+
+
+
+MoltenVK 1.0.1
+--------------
+
+Released 2018/03/19
+
+- Add support for Vulkan Loader and Validation Layer API version 5.
+- Add support for LunarG Vulkan Loader ICD API.
+- Add Vulkan Loader and Validation Layer ICD JSON file.
+- Fix vkGetInstanceProcAddr to work with 1.1 loader.
+- Use fetchDependencies script instead of submodules.
+- Align versioning of external libraries with those used by LunarG SDK.
+- Combine multiple VkCommandBuffers into a single MTLCommandBuffer.
+- On command buffer submission, defer waiting on semaphores until just before
+ MTLCommandBuffer is committed.
+- Retrieve heap size from MTLDevice on macOS and from free shared system memory on iOS.
+- Allow color attachment on depth-only rendering.
+- Allow color attachment when clearing depth only.
+- Support DXT1 RGB texture compression.
+- Support VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT on VkFormats that are not supported
+ as texture formats under Metal.
+- Don't check if texture is coherent on macOS, since it never is.
+- Setup push constants for compute shaders.
+- Check if storage mode is not shared when checking if synchronize is needed.
+- Log which GPU is attached to a VkDevice.
+- Sort multiple GPU's to put higher-power GPU's at front of list.
+- Populate VkPhysicalDeviceProperties vendorID, deviceID and pipelineCacheUUID.
+- Ensure scissors fit inside renderpass area to avoid Metal validation assertions.
+- Consolidate setting of viewport and scissors by pipeline and command.
+- Make MVKBuffer::getMTLBuffer() thread-safe.
+- Fix Metal validation error with a renderpass with no depth attachment.
+- Use pipelineStatisticsQuery feature to determine whether pipeline stats are available.
+- Modify MVKImageView to fix MTLTexture used for renderpasses.
+- Fix vkBindImageMemory crash when multiple simultaneous threads are binding to
+ different offsets in the of the same VkDeviceMemory.
+- Don't align push constant buffer.
+- Fix vkCmdCopyBuffer when copying unaligned regions.
+- Added workgroup size specialization constants
+- Fix SPIRV-Cross OOM conditions with multiple consecutive two-vector OpVectorShuffles.
+- Support non-square row-major matrix conversions.
+- Fix vkCmdBlitImage between images of different sizes.
+- Add ability to write SPIR-V to file for debugging purposes.
+- Update ThirdPartyConfig.md to latest use of SPIRV-Cross testability.
+- Fixes to compute workgroup sizes and barriers.
+- Improved extraction of entry point name and workgroup size from SPIR-V.
+- Consolidate to a single ThirdPartyConfig.md document.
+- MSL enhancements to nested function use of globals.
+- Support customizing MSL based on iOS or macOS platform.
+- MSL threadgroup barrier memory scope only on iOS MSL 2.0.
+- MVKBufferView add lock when creating MTLTexture.
+- MVKDeviceMemory add lock when creating MTLBuffer during memory mapping.
+- MVKMTLBufferAllocator does not need to be threadsafe.
+- Cleanup syntax on other lock handling to add consistency.
+- Consolidate timestamps and performance tracking.
+- Derive vkCmdCopyBuffer() alignment requirement at runtime.
+- Don't log error from vkGetPhysicalDeviceFormatProperties() if format not supported.
+- Add printf-like macros to MVKLogImpl and mvkNotifyErrorWithText.
+- Updates to dylib building process. Use clang instead of libtool.
+- Allow MoltenVK to be installed and built without asciidoctor.
+- Add CI support using Travis CI.
+- Automatically install demo apps.
+- Cube demo generate SPIR-V as part of demo project build.
+- Disable watermark in debug builds.
+- Add build and runtime OS and device requirements to documentation.
+- Add Compliance and Contribution sections to README.md.
+- Remove executable permissions from non-executable files.
+- Update to latest SPRIV-Cross.
+- Update copyright dates to 2018.
+
+
+
+MoltenVK 1.0.0
+--------------
+
Released 2018/02/26
-#### Initial open-source release!
+Initial open-source release!
diff --git a/MoltenVK/MoltenVK/API/vk_mvk_moltenvk.h b/MoltenVK/MoltenVK/API/vk_mvk_moltenvk.h
index bf98a3d..7bc9d7d 100644
--- a/MoltenVK/MoltenVK/API/vk_mvk_moltenvk.h
+++ b/MoltenVK/MoltenVK/API/vk_mvk_moltenvk.h
@@ -345,12 +345,6 @@
typedef uint32_t MVKMSLSPIRVHeader;
-#pragma mark Deprecated license functions
-__attribute__((deprecated("MoltenVK no longer requires a runtime license.")))
-VKAPI_ATTR VkResult VKAPI_CALL vkActivateMoltenVKLicenseMVK(const char* licenseID, const char* licenseKey, VkBool32 acceptLicenseTermsAndConditions);
-__attribute__((deprecated("MoltenVK no longer requires a runtime license.")))
-VKAPI_ATTR static inline void VKAPI_CALL vkActivateMoltenVKLicensesMVK() {}
-
#endif // VK_NO_PROTOTYPES
diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKInstance.mm b/MoltenVK/MoltenVK/GPUObjects/MVKInstance.mm
index bdb3e04..2bfe8a6 100644
--- a/MoltenVK/MoltenVK/GPUObjects/MVKInstance.mm
+++ b/MoltenVK/MoltenVK/GPUObjects/MVKInstance.mm
@@ -259,12 +259,6 @@
#ifdef VK_USE_PLATFORM_MACOS_MVK
ADD_PROC_ADDR(vkCreateMacOSSurfaceMVK);
#endif
-
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wdeprecated-declarations"
- ADD_PROC_ADDR(vkActivateMoltenVKLicenseMVK); // Deprecated
- ADD_PROC_ADDR(vkActivateMoltenVKLicensesMVK); // Deprecated
-#pragma clang diagnostic pop
}
void MVKInstance::logVersions() {
diff --git a/MoltenVK/MoltenVK/Vulkan/vk_mvk_moltenvk.mm b/MoltenVK/MoltenVK/Vulkan/vk_mvk_moltenvk.mm
index f75c83e..611a280 100644
--- a/MoltenVK/MoltenVK/Vulkan/vk_mvk_moltenvk.mm
+++ b/MoltenVK/MoltenVK/Vulkan/vk_mvk_moltenvk.mm
@@ -134,6 +134,3 @@
*pIOSurface = mvkImg->getIOSurface();
}
-// Deprecated license function
-MVK_PUBLIC_SYMBOL VkResult vkActivateMoltenVKLicenseMVK(const char* licenseID, const char* licenseKey, VkBool32 acceptLicenseTermsAndConditions) { return VK_SUCCESS; }
-