1223 Commits

Author SHA1 Message Date
Bill Hollings
a64f62ee53 Update dependency libraries to match Vulkan SDK 1.1.130.
Update ExternalRevisions/README.md to document new glslang build settings.
Update What's New document.
2019-12-16 14:24:57 -05:00
Bill Hollings
ef8575f219
Merge pull request #789 from billhollings/master
Fix inconsistency in reporting device local memory between type and heap on macOS.
2019-12-16 09:16:53 -05:00
Bill Hollings
5ba074a125 Avoid reading env vars inside library constructor functions. 2019-12-15 21:47:20 -05:00
Bill Hollings
3f025bc63f Fix bug where dynamic shader buffers are overflowing.
Change MVKPhysicalDeviceMetalFeatures::dynamicMTLBuffers from boolean to uint
dynamicMTLBufferSize limit and guard dynamic buffer usage sizes against it.
Update VK_MVK_MOLTENVK_SPEC_VERSION to 23.
2019-12-12 15:46:28 -05:00
Bill Hollings
977a1f4771 Update mvkClear() to support optional length parameter. 2019-12-12 13:07:04 -05:00
Bill Hollings
b213996c5e Support Xcode 11.3.
Update What's New document.
2019-12-12 12:38:17 -05:00
Bill Hollings
574e92a38a Fix inconsistency in reporting shared memory between type and heap on macOS.
Remove VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT and VK_MEMORY_PROPERTY_HOST_CACHED_BIT
from MVK_VK_MEMORY_TYPE_METAL_SHARED.
Refactor MVKPhysicalDevice::initMemoryProperties() to configure memory
types and heaps in a more organized, procedural, and traceable manner.
Enhance MVKPhysicalDevice::getHasUnifiedMemory() detection of unified memory.
Simplify MVKPhysicalDevice::getVRAMSize().
On macOS MVKImage::validateUseTexelBuffer() tests the underlying device memory
directly to determine if it has coherent memory and cannot support texel buffer.
Add MVKInstance::getPhysicalDeviceCount().
Add mvkClear() template function for clearing structs and replace use of
memset(*, 0, sz) with mvkClear().
Refactor mvkCopyStruct() and rename to mvkCopy().
2019-12-12 10:43:20 -05:00
Bill Hollings
98e0b79a52 Fix inconsistency in reporting device local memory between type and heap on macOS. 2019-12-06 10:18:13 -05:00
Bill Hollings
5f9e946232
Merge pull request #787 from billhollings/master
Cube demo use VK_EXT_metal_surface extension.
2019-12-03 13:58:18 -05:00
Bill Hollings
5b1425b73d Cube demo use VK_EXT_metal_surface extension. 2019-12-02 13:46:31 -05:00
Bill Hollings
70749b0618
Merge pull request #785 from billhollings/master
Fix tessellation break when control stage declares but does not use position builtin.
2019-11-26 17:06:29 -05:00
Bill Hollings
9f64cc4bef Fix tessellation break when control stage declares but does not use position builtin.
Add SPIRVShaderOutput::isUsed retrieved from shader reflection.
mvk::sizeOfOutput() returns zero if output var is not used.
Update to latest SPIRV-Cross version.
2019-11-26 16:11:52 -05:00
Bill Hollings
7f83d473ba Merge branch 'master' of https://github.com/KhronosGroup/MoltenVK 2019-11-26 15:18:24 -05:00
Bill Hollings
a4f65fefe6
Merge pull request #783 from mbarriault/master
Support for EXT_inline_uniform_block
2019-11-26 15:14:23 -05:00
Michael Barriault
82f3f226d3 More tab fixes 2019-11-25 21:42:28 +00:00
Michael Barriault
4b1fb88655 Fix tabbing to be consistent. 2019-11-25 21:40:08 +00:00
Michael Barriault
ddf108153d Support for EXT_inline_uniform_block 2019-11-25 21:35:38 +00:00
Bill Hollings
16afd5e37f Make mvkCeilingDivide() a template function. 2019-11-21 16:51:41 -05:00
Bill Hollings
c5b91b423d
Merge pull request #781 from billhollings/master
Fix MTLHeap memory leak in MVKDeviceMemory.
2019-11-18 14:18:20 -05:00
Bill Hollings
3bb70e8749 Fix MTLHeap memory leak in MVKDeviceMemory. 2019-11-18 13:06:05 -05:00
Bill Hollings
578e97e6dd
Merge pull request #778 from billhollings/master
Fix image subresource sizing calculations for heap-based textures.
2019-11-16 19:47:42 -05:00
Bill Hollings
15cdb32ae9 Fix image subresource sizing calculations for heap-based textures.
Add MVKImage::_rowByteAlignment separate from _byteAlignment.
2019-11-16 19:05:44 -05:00
Bill Hollings
0026475ed2
Merge pull request #777 from billhollings/master
Clamp image copy extents to image extent.
2019-11-14 18:46:47 -05:00
Bill Hollings
ddfa225f79 Fix crash in fetchDependencies on build paths containing spaces. 2019-11-14 17:11:10 -05:00
Bill Hollings
0b6916aa23 Clamp image copy extents to image extent. 2019-11-13 15:40:43 -05:00
Bill Hollings
238f03e3a8
Merge pull request #775 from billhollings/master
Support linear filtering when using vkCmdBlitImage().
2019-11-12 17:41:13 -05:00
Bill Hollings
9b13006018 Support linear filtering when using vkCmdBlitImage().
Fixes linear filtering when using vkCmdBlitImage(), useful for mipmap generation.
Move MVKCmdBlitImage sampler definition to shader as a constexpr sampler,
and ensure mip_filter and filter are set correctly.
Add MVKRPSKeyBlitImg::srcFilter.
Include MVKCommonEnvironment.h in MVKLogging.h.
Update MoltenVK version to 1.0.39.
2019-11-12 16:47:33 -05:00
Bill Hollings
025abe501a Support Xcode 11.2. 2019-11-04 20:39:41 -05:00
Bill Hollings
eaf30d4aee
Merge pull request #771 from billhollings/master
Update What's New document.
2019-10-30 17:09:01 -04:00
Bill Hollings
f97b827fa5 Update What's New document. 2019-10-30 17:08:16 -04:00
Bill Hollings
1ddacdc25d
Merge pull request #769 from billhollings/master
Fix severe FPS degradation caused by certain swapchain recreation situations.
2019-10-30 14:21:05 -04:00
Bill Hollings
d96ee9b0ca Fix severe FPS degradation caused by certain swapchain recreation situations.
Ensure swapchain clears all cached CAMetalDrawables when destroyed.
2019-10-30 14:18:11 -04:00
Bill Hollings
a318d9de75
Merge pull request #767 from billhollings/master
Update external libraries to support Vulkan SDK 1.1.126.
2019-10-29 16:49:01 -04:00
Bill Hollings
c7fe2e3230 Update contents of Templates/spirv-tools/build.zip. 2019-10-29 15:10:50 -04:00
Bill Hollings
0bb9b38a44
Merge pull request #765 from mbarriault/master
Fix tessellation when using resolve attachments
2019-10-29 13:52:24 -04:00
Bill Hollings
0b1189dc03 Update external libraries to support Vulkan SDK 1.1.126.
Update What's New document.
2019-10-29 11:55:16 -04:00
Michael Barriault
1178bc57d0 Fix tessellation when using resolve attachments 2019-10-26 20:57:42 +01:00
Bill Hollings
789ef74d11
Merge pull request #764 from billhollings/master
Support additional capabilities in 1D images, including rendering, clearing, and mipmaps.
2019-10-26 09:31:54 -04:00
Bill Hollings
93ae214bc8 Support additional capabilities in 1D images, including rendering, clearing, and mipmaps.
Add `MVK_CONFIG_TEXTURE_1D_AS_2D` environment variable, enabled by default.
Modify 1D warning messages to recommend use of `MVK_CONFIG_TEXTURE_1D_AS_2D`.
Update to latest version of SPIRV-Cross.
Align pipeline cache contents to latest CompilerMSL::Options structure.
Clean up code signing on demo Xcode projects.
2019-10-25 14:40:59 -04:00
Bill Hollings
19c397e0b7 Move generation of SPIRV-Cross/mvkSpirvCrossRevisionDerived.h to separate script.
Add Scripts/gen_spirv_cross_rev_hdr.sh script and
call from ExternalDependencies SPIRV-Cross build.
2019-10-22 16:51:27 -04:00
Bill Hollings
69cc9c9759 ExternalDependencies Xcode project support Xcode 11. 2019-10-22 11:17:30 -04:00
Bill Hollings
d726aa043d Set value of VkPhysicalDeviceLimits::maxTexelBufferElements to more realistic value. 2019-10-22 09:06:48 -04:00
Bill Hollings
a1cc03ad38
Merge pull request #757 from w103csh/khronosMaster
Add shader linking capability to GLSLToSPIRVConverter
2019-10-18 13:33:05 -04:00
Bill Hollings
558faccb23
Merge pull request #760 from billhollings/master
Enable use of MTLFence for Vulkan semaphores, by default.
2019-10-18 12:49:51 -04:00
Colin Hughes
5c3b265888 Braces formatting 2019-10-17 19:02:50 -06:00
Bill Hollings
47d38df764 Log format substitution error when MTLPixelFormatDepth24Unorm_Stencil8 is not supported. 2019-10-17 16:59:52 -04:00
Bill Hollings
f14e44800a Enable use of MTLFence for Vulkan semaphores, by default. 2019-10-17 15:16:16 -04:00
Bill Hollings
f8520ba3e7
Merge pull request #758 from billhollings/master
Support Metal 3.0 capabilities
2019-10-17 10:51:06 -04:00
Bill Hollings
ae8a39e0d3 Update Travis to Xcode 11.1 to correctly resolve MTLGPUFamily values. 2019-10-17 08:23:41 -04:00
Bill Hollings
b5b103e75c Fix crashes for Metal 3.0 capabilities.
Don't allocate MTLHeap of zero size.
MVKImage check for device memory when accessing MTLCPUCacheMode..
2019-10-16 18:50:01 -04:00