Bill Hollings
bb2188c083
Add support for VK_PRESENT_MODE_IMMEDIATE_KHR swapchain presentation mode.
2018-04-18 20:16:45 -04:00
Bill Hollings
9b871d0280
Update to latest LunarG/VulkanSamples and update MoltenVK version to 1.0.3.
2018-04-18 11:06:47 -04:00
Bill Hollings
e837edd200
Merge pull request #135 from karl-lunarg/travis-demos
...
build: Build the demos in Travis-CI
2018-04-17 20:16:54 -04:00
Bill Hollings
e6199b6ad6
Merge pull request #134 from billhollings/master
...
Update to latest V-LVL, glslang & SPIRV-Tools.
2018-04-17 16:43:07 -04:00
Karl Schultz
9b616bc087
build: Build the demos in Travis-CI
2018-04-17 13:41:39 -06:00
Bill Hollings
8631fc06b8
Update to latest V-LVL, glslang & SPIRV-Tools.
...
Fix link references when building against latest SPIRV-Tools.
2018-04-17 13:41:08 -04:00
Bill Hollings
264c4da135
Merge pull request #133 from karl-lunarg/LVL-update
...
Update V-LVL revision
2018-04-17 11:54:15 -04:00
Karl Schultz
5c36a26632
Update V-LVL revision
...
- pick up 1.1.73 headers
- cope with interface change in cube demo
2018-04-16 17:52:01 -06:00
Bill Hollings
b59d74cef5
Merge pull request #132 from billhollings/master
...
Update Demos to use latest LunarG VulkanSamples and Vulkan-LoaderAndValidationLayers code.
2018-04-16 18:49:40 -04:00
Bill Hollings
3a2657b2bb
Update Demos to use latest LunarG VulkanSamples and Vulkan-LoaderAndValidationLayers code.
...
Update to latest Vulkan-LoaderAndValidationLayers version.
Update to latest VulkanSamples version.
Update to latest SPIRV-Cross version.
2018-04-16 16:26:34 -04:00
Bill Hollings
206461371f
Merge pull request #131 from billhollings/master
...
Add workaround for apps that use one semaphore for all swapchain images.
2018-04-15 10:07:27 -04:00
Bill Hollings
793f3fdaf3
Add workaround for apps that use one semaphore for all swapchain images.
...
Support deferred secondary signaling of semaphore & fence acquired while image is free.
Add MVKBaseObject::destroy() function to support customization of object destruction.
Support deferred destruction of MVKSemaphore & MVKFence instances.
2018-04-14 20:12:33 -04:00
Bill Hollings
4c746bb288
Merge pull request #129 from billhollings/master
...
Clean up reference to SDK in dylib build script.
2018-04-10 10:27:25 -04:00
Bill Hollings
9fe7e3659a
Clean up reference to SDK in dylib build script.
2018-04-09 17:42:51 -04:00
Bill Hollings
e9499d1209
Merge pull request #127 from billhollings/master
...
Fix issues #64 & #97 .
2018-04-09 16:42:53 -04:00
Bill Hollings
796cf7e417
MVKImage::getArrayLayers() reports only layer count and excludes depth.
2018-04-09 16:22:43 -04:00
Bill Hollings
c08e22e097
vkCmdCopyBufferToImage() & vkCmdCopyImageToBuffer() support a VkBuffer
...
that is bound to an offseted position in a VkDeviceMemory.
2018-04-09 14:26:02 -04:00
Bill Hollings
256c76683e
Merge pull request #126 from VinDuv/use-ninja-for-deps
...
fetchDependencies: Use ninja if available to build dependencies
2018-04-09 12:58:02 -04:00
Bill Hollings
586186e8f4
Merge pull request #125 from karl-lunarg/fetch-copy
...
fetchDeps: Copy glslang instead of symlink
2018-04-09 12:14:33 -04:00
Karl Schultz
b1a18b7855
fetchDeps: Copy glslang instead of symlink
...
Using a symlink to locate an externally-built glslang
doesn't work if the parent directory of the externally-built
glslang isn't the same as the parent here (External).
This fixes a portability warning when building from V-LVL
because the parent there was "external" vs "External".
Copy is still a win because it is better than fetching and
building.
2018-04-06 18:33:28 -06:00
Vincent Duvert
9a3ab266d1
Use ninja if available to build dependencies
...
If the ninja build system is installed, ask CMake to generate Ninja build files and use
it for the build.
2018-04-06 08:27:22 +02:00
Bill Hollings
9c8117efe6
Merge pull request #124 from billhollings/master
...
Queue and device wait idle logic and update to latest version of VulkanSamples.
2018-04-06 00:07:04 -04:00
Bill Hollings
d58da3a3c8
Queue and device wait idle handled by internal fence instead of semaphore.
...
Merge handling of timed and infinite synchronizations.
2018-04-05 23:32:35 -04:00
Bill Hollings
3a3e52b741
In Cube demo app, replace call to demo_update_and_draw()
...
with call to demo_draw() to support new version of cube.c.
Update to latest version of VulkanSamples.
2018-04-05 11:15:54 -04:00
Bill Hollings
794db80bb8
Merge pull request #122 from billhollings/master
...
Round up row and layer byte counts when copying compressed images with sizes that are not integer multiples of block size.
2018-04-03 22:51:50 -04:00
Bill Hollings
9fddb15a53
Round up row and layer byte counts when copying compressed
...
images with sizes that are not integer multiples of block size.
2018-04-03 17:01:53 -04:00
Bill Hollings
ebfa36287b
Merge pull request #121 from karl-lunarg/fetch-repo
...
fetchDeps: remove -sdk. New opts for LVL, glslang trees
2018-04-03 09:34:57 -04:00
Karl Schultz
8faa3a2fe4
fetchDeps: remove -sdk. New opts for LVL, glslang trees
...
Changes to fetchDependencies script:
- remove -sdk option
- Add --v-lvl-root and --glslang-root options (with an arg)
that allow caller to pass in the root dir of these two repos
if the caller already has them. The script then symlinks to
these instead of fetching and building.
Fixes : #79 #84
2018-04-02 15:09:06 -06:00
Bill Hollings
823bc18cd8
Merge pull request #120 from hanton/master
...
Fix typo in Demos/README.md
2018-04-02 11:41:06 -04:00
Hanton
6d96f33b53
Fix typo in Demos/README.md
2018-04-01 14:47:03 +08:00
Bill Hollings
1156ff296d
Merge pull request #119 from billhollings/master
...
Reorganize External dependencies.
2018-03-30 22:36:21 -04:00
Bill Hollings
979a7f801f
Reorganize External dependencies.
...
fetchDependencies script now in top directory to avoid Travis caching of
External directory. fetchDependencies is now smart about fetching vs cloning
and building only what is necessary.
2018-03-30 22:16:27 -04:00
Bill Hollings
5b8c80d0ee
Merge pull request #118 from billhollings/master
...
Add support for caching converted MSL shader code offline from pipeline cache
2018-03-30 20:13:52 -04:00
Bill Hollings
d974ce46b8
Turn caching of Externals off in .travis.yml
...
until a better CI dependency graph can be defined.
2018-03-30 19:37:17 -04:00
Bill Hollings
3c6b3ae210
vkCmdClearAttachments() don't attempt to clear non-existing depth & stencil attachments.
2018-03-30 18:28:26 -04:00
Bill Hollings
e4d00447f9
Always clamp scissors to render area to avoid Metal validation error.
2018-03-30 16:44:49 -04:00
Bill Hollings
04849f9f63
Present using command buffer by default.
...
Update version to 1.0.2.
2018-03-30 16:15:22 -04:00
Bill Hollings
126e5ff9e1
Add instructions in README.md about building MoltenVK via the command line.
2018-03-30 13:03:37 -04:00
Bill Hollings
20c98e5e46
Add support for caching converted MSL shader code offline from pipeline cache
...
via vkGetPipelineCacheData(), vkCreatePipelineCache() & vkMergePipelineCaches().
Add the cereal serialization framework as a dependency.
Update documentation. Update project settings to Xcode 9.3.
2018-03-30 12:13:50 -04:00
Bill Hollings
c45b47183e
Shader libraries cached in MVKPipelineCache instead of MVKShaderModule.
2018-03-22 23:52:12 -04:00
Bill Hollings
fd7521dc7b
VkPhysicalDeviceProperties::pipelineCacheUUID value derived
...
from MoltenVK version and highest supported Metal feature set.
2018-03-21 10:17:41 -04:00
Bill Hollings
18fa813fc4
Merge pull request #108 from billhollings/master
...
SPIRV entry points, streamline integration with V-LVL & v1.0.1.
2018-03-19 12:25:09 -04:00
Bill Hollings
8fbbaba11f
Add option for per-frame performance logging via un-commentable logging code.
2018-03-19 11:44:12 -04:00
Bill Hollings
afebc3fe08
Support SPIR-V containing multiple entry points.
...
Include name and stage when matching shaders contexts for pipelines.
Avoid deprecated SPIRV-Cross members.
Update to latest SPIRV-Cross version.
2018-03-19 10:58:46 -04:00
Bill Hollings
808029bbc7
Update to latest version of Vulkan-LoaderAndValidationLayers, with glslang & SPIRV-Tools.
2018-03-18 19:51:12 -04:00
Bill Hollings
c77ad3a383
Remove folder symlinks and update MoltenVK version to 1.0.1.
...
Remove duplicate build of SPIRV-Tools in fetchDependencies.
Remove folder symlinks from Externals and MoltenVKShaderCompiler folders.
Update header search paths to reference External folders directly.
Update External/README.md documentation.
Update MoltenVK version to 1.0.1 to reflect new build instructions.
Minor update to performance logging.
2018-03-18 18:41:19 -04:00
Bill Hollings
2a6a186337
Merge pull request #106 from billhollings/master
...
Fix memory issues.
2018-03-15 22:59:50 -04:00
Bill Hollings
a911b63247
Fix memory issues.
...
Wrap each queue submission in a dedicated @autoreleasepool.
Fix memory leak during creation of global format mappings.
2018-03-15 18:46:56 -04:00
Bill Hollings
5cc7652a62
Merge pull request #104 from billhollings/master
...
Derive vkCmdCopyBuffer() alignment requirement at runtime.
2018-03-14 15:31:44 -04:00
Bill Hollings
9ba039c6d6
Derive vkCmdCopyBuffer() alignment requirement at runtime.
...
Add MVKPhysicalDeviceMetalFeatures::mtlCopyBufferAlignment.
Set MTLComputeCommandEncoder label based on Vulkan command type.
Add MVKCommandUse::kMVKCommandUseDispatch.
2018-03-14 10:13:19 -04:00