Bill Hollings
b70932b262
Merge pull request #200 from billhollings/master
...
Report correct workgroup sizes from MTLDevice.
2018-07-24 00:16:15 -04:00
Bill Hollings
0afb42107f
Retrieve VkPhysicalDeviceLimits::maxComputeWorkGroupSize &
...
maxComputeWorkGroupInvocations & maxComputeSharedMemorySize from MTLDevice.
2018-07-23 23:52:21 -04:00
Bill Hollings
16d8a040d1
Merge pull request #199 from billhollings/master
...
Fixes to attachment and image clearing to pass CTS tests.
2018-07-23 22:07:36 -04:00
Bill Hollings
2d4de6db68
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.
Move OS extension source files to new OS directory.
Update to latest SPIRV-Cross version.
Update MoltenVK version to 1.0.16.
2018-07-23 20:12:57 -04:00
Bill Hollings
40df55a9b4
Merge pull request #197 from billhollings/master
...
Support IOSurface on iOS only if IPHONEOS_DEPLOYMENT_TARGET is at least iOS 11.0.
2018-07-12 23:31:26 -04:00
Bill Hollings
86bb51554b
Support IOSurface on iOS only if IPHONEOS_DEPLOYMENT_TARGET is at least iOS 11.0.
...
On iOS, only compile IOSurface support, and link IOSurface framework to
libMoltenVK.dylib, if IPHONEOS_DEPLOYMENT_TARGET is at least iOS 11.0.
Update to latest version of SPIRV-Cross.
Update MoltenVK version to 1.0.15.
2018-07-12 18:26:54 -04:00
Bill Hollings
166de13325
Merge pull request #195 from karl-lunarg/karl-userguide
...
docs: Improve layer limitations description
2018-07-09 17:01:38 -04:00
Bill Hollings
348c041ef0
Merge pull request #194 from natbro/master
...
Removes references to IOSurface framework on IOS
2018-07-09 17:01:24 -04:00
Karl Schultz
d2a5c02f03
docs: Improve layer limitations description
2018-07-09 08:09:48 -06:00
Nat Brown
4ef6a0f8c9
Removes references to IOSurface framework on IOS and markes the IOSurface features as unavailable. A better solution would be to not support IOSurface features prior to iOS 11.0 when the framework became partially public, but this is a good initial solution.
2018-07-09 06:26:11 -07:00
Bill Hollings
4dbe302023
Merge pull request #191 from billhollings/master
...
Fix compute shader workgroup size specialization and correct some settings.
2018-07-04 17:58:35 -04:00
Bill Hollings
6950102404
Set correct value for VkPhysicalDeviceLimits::maxPerStageDescriptorInputAttachments.
2018-07-04 12:48:47 -04:00
Bill Hollings
e203b93285
Fix compute shader workgroup size specialization.
...
Support separate specialization for each workgroup dimension.
Support zero as a specialization ID value.
Cleanup MoltenVKShaderConverterTool.
Update to latest SPIRV-Cross version.
Update MoltenVK version to 1.0.14.
2018-07-03 13:57:53 -04:00
Bill Hollings
5280e9515a
vkGetPhysicalDeviceImageFormatProperties() indicate 1D texture limitations.
2018-06-28 17:46:14 -04:00
Bill Hollings
5943aae1ea
Merge pull request #187 from billhollings/master
...
Support larger VkBufferViews by using 2D Metal textures.
2018-06-28 14:30:27 -04:00
Bill Hollings
42d42721bd
Improve crispness of visuals on macOS Retina displays.
...
Set CAMetalLayer magnificationFilter property to Nearest by default.
Add MVKDeviceConfiguration::swapchainMagFilterUseNearest member to allow overrides.
2018-06-28 14:07:58 -04:00
Bill Hollings
e959b9d9a6
Support larger VkBufferViews by using 2D Metal textures.
...
Map 1D buffer view contents to 2D Metal texture.
Add MVKPhysicalDeviceMetalFeatures::maxTextureDimension element.
Set VkPhysicalDeviceLimits::maxTexelBufferElements to maxTextureDimension ^ 2.
Shaders accessing buffer view use special function to map 1D buffer view coordinates
to 2D Metal texture coordinates.
Pass maxTextureDimension to shader.
Update to latest SPIRV-Cross version for appropriate shaders.
Update MoltenVK version to 1.0.13.
2018-06-27 18:03:30 -04:00
Bill Hollings
699839b970
Merge pull request #186 from billhollings/master
...
Swapchain return VK_ERROR_OUT_OF_DATE_KHR when window resized.
2018-06-23 23:39:46 -04:00
Bill Hollings
d34c790bea
Swapchain return VK_ERROR_OUT_OF_DATE_KHR when window resized.
2018-06-23 15:53:16 -04:00
Bill Hollings
d58fd7e101
Merge pull request #185 from jeremyk-lunarg/jeremyk_MVK_addFetchDependencyOptions
...
fetchDeps: Add flags for pre-built repos
2018-06-22 15:10:06 -04:00
Jeremy Kniager
cbb9886723
fetchDeps: Add flags for pre-built repos
...
Add --v-headers-root, --spirv-cross-root,
and --glslang-root options with an arg that allow
caller to pass in the root dir of these three
repos if the caller already has them. The script
then symlinks to these instead of fetching and building.
2018-06-21 15:42:52 -06:00
Bill Hollings
c7b2304816
Merge pull request #181 from billhollings/master
...
Multiple fixes and update to Vulkan SDK 1.1.77.
2018-06-16 19:20:18 -04:00
Bill Hollings
394cdd4ebb
Fix texture file copy in Cube Demo.
2018-06-16 16:39:51 -04:00
Bill Hollings
10a023debe
Update to latest library dependencies to match Vulkan SDK 1.1.77.
...
Update MoltenVK version to 1.0.12.
2018-06-15 15:14:59 -04:00
Bill Hollings
e90480ea99
vkCmdClearImage() fixes to clearing depth and stencil formats and avoid Metal validation errors.
2018-06-15 14:25:52 -04:00
Bill Hollings
9ae35d73c4
Update Xcode version checks to Xcode 9.4.
2018-06-14 12:46:41 -04:00
Bill Hollings
1b9946c15d
vkCmdBlitImage() remove broken support for depth/stencil scaling.
2018-06-13 15:55:33 -04:00
Bill Hollings
84ffa1844e
vkCmdBlitImage() support texture arrays as source and destination targets.
2018-06-13 13:36:08 -04:00
Bill Hollings
595470c747
Merge branch 'master' of https://github.com/KhronosGroup/MoltenVK
2018-06-12 13:34:26 -04:00
Bill Hollings
2a3af2089c
Merge pull request #179 from danginsburg/mgpu_headless_sorting
...
Change the sorting for Metal devices in the list of physicalDevices t…
2018-06-12 13:32:54 -04:00
Bill Hollings
4723911450
Merge pull request #178 from danginsburg/vsync_fix
...
Fix Dota 2 bug with vsync toggling not working (https://github.com/Va…
2018-06-12 13:30:30 -04:00
Bill Hollings
c1616f96d3
Fix slice index when rendering to cube maps.
2018-06-12 13:27:40 -04:00
Dan Ginsburg
30751d4bde
Change the sorting for Metal devices in the list of physicalDevices to be sorted also by whether they are headless. What was happening is that on a dual FirePro D500 system sometimes the headless GPU would be returned first. When that happened, Dota 2 would select that GPU and then fail to start because the queue did not support presentation.
2018-06-12 09:20:44 -04:00
Dan Ginsburg
b808d59743
Fix Dota 2 bug with vsync toggling not working ( https://github.com/ValveSoftware/Dota-2-Vulkan/issues/257 ). Vsync would be disabled on first swapchain creation, but not re-enabled if swapchain mode switched from IMMEDIATE -> FIFO or back from FIFO -> IMMEDIATE.
2018-06-12 09:00:12 -04:00
Bill Hollings
85dae9e978
Merge branch 'master' of https://github.com/KhronosGroup/MoltenVK
2018-06-12 08:59:51 -04:00
Bill Hollings
335b8b9653
Merge pull request #177 from danginsburg/mojave_spvcross_fix
...
Update to latest SPIRV-Cross to fix MSL compilation failures on macOS…
2018-06-12 08:58:29 -04:00
danginsburg
f5a3b9072f
Update to latest SPIRV-Cross to fix MSL compilation failures on macOS 10.14 Mojave Beta ( KhronosGroup/SPIRV-Cross#603 ). Fixes Dota 2 on Mojave.
...
Also update MoltenVK to 1.0.11 so that VkPipelineCache UUID changes and shaders get regenerated by applications.
2018-06-12 08:24:56 -04:00
Bill Hollings
96d680a4e0
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.
Update MoltenVK to 1.0.11.
2018-06-06 21:14:09 -04:00
Bill Hollings
67f659c064
Fix copying 4-byte 32-bit depth/stencil formats between buffers and textures.
2018-06-05 17:24:05 -04:00
Bill Hollings
8d9ee9b518
Merge pull request #173 from billhollings/master
...
Device memory management changes.
2018-06-05 11:30:34 -04:00
Bill Hollings
c2324a574f
Avoid Metal validation error on MTLBuffer.contents access from private storage.
2018-06-04 20:04:33 -04:00
Bill Hollings
0c854c508d
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.
2018-06-04 19:15:32 -04:00
Bill Hollings
7693ebe313
Merge branch 'master' of https://github.com/KhronosGroup/MoltenVK
2018-06-01 12:49:16 -04:00
Bill Hollings
8aa29c49c3
Merge pull request #171 from danginsburg/vsync_fix
...
Fix vsync not being enabled in IMMEDIATE present mode. MVK_MACOS was …
2018-06-01 12:48:35 -04:00
Dan Ginsburg
5ce2fc82ff
Fix vsync not being enabled in IMMEDIATE present mode. MVK_MACOS was not being defined.
2018-06-01 10:23:27 -04:00
Bill Hollings
958f56fb85
Support mapping and filling device memory before binding an image to it.
...
MVKDeviceMemory uses a single memory allocation, which may be an MTLBuffer or host memory.
Image populates MTLTexture when bound to host accessible device memory.
Update MoltenVK version to 1.0.10.
2018-05-30 21:21:18 -04:00
Bill Hollings
43130ab27a
Merge pull request #169 from billhollings/master
...
Replace dependency on Vulkan-LoaderAndValidationLayers with Vulkan-Headers and Vulkan-Tools.
2018-05-28 10:54:17 -04:00
Bill Hollings
8654923cb2
Fix PR merge conflict.
2018-05-28 10:16:22 -04:00
Bill Hollings
585bfd7e02
Merge pull request #167 from hanton/fix_document_typos
...
Fix several document typos.
2018-05-28 10:10:31 -04:00
Bill Hollings
b1b26e644f
Fix glslang install.
2018-05-28 09:43:11 -04:00