Caleb Cornett
b77404ad36
Change conformance version, refactor strcpy
2020-07-08 20:57:49 -04:00
Bill Hollings
e39dde02ec
Fix new and unexpected App Store failure on newly deprecated color space values.
2020-07-08 14:58:29 -04:00
Caleb Cornett
7f64c419c2
Implement VK_KHR_driver_properties
2020-07-07 16:31:07 -04:00
Bill Hollings
cd18cec727
Fix small memory leak when setting swapchain color space.
...
Add CAMetalLayer::colorspaceNameMVK property to handle retain/release automatically.
2020-07-06 17:36:05 -04:00
Bill Hollings
1a686efc19
MVKPhysicalDevice::getSurfaceFormats() reduce fragility of surface format definitions.
2020-06-30 15:28:52 -04:00
Bill Hollings
c0b0e4e6c4
Merge pull request #939 from cdavis5e/macos-rgb10a2-surface
...
MVKDevice: Advertise VK_FORMAT_A2B10G10R10_UNORM_PACK32 as a surface format.
2020-06-30 14:40:47 -04:00
Chip Davis
85357d0a5d
MVKDevice: Advertise VK_FORMAT_A2B10G10R10_UNORM_PACK32 as a surface format.
...
The corresponding Metal format is now documented as supported for
`CAMetalLayer`, confirming my findings in #673 .
Only support the 10-10-10-2 formats on macOS. iOS and tvOS instead have
extended-range formats, which unfortunately have no Vulkan equivalents.
I've added them anyway for completeness. I suppose if Vulkan ever does
get these formats, we'll then be ready to expose them as surface
formats.
2020-06-25 13:34:00 -05:00
Aman Gupta
9d886adac5
mark shared memory type as VK_MEMORY_PROPERTY_HOST_CACHED_BIT
2020-06-25 10:49:50 -07:00
Aman Gupta
1de1c64c65
add more tvos paths in MVKDevice
2020-06-24 17:17:54 -07:00
Aman Gupta
fe1ebdf753
Merge remote-tracking branch 'upstream/master' into tvos-fixups
2020-06-24 16:00:58 -07:00
Bill Hollings
21630b59bb
Merge pull request #935 from billhollings/master
...
Support iOS Simulator and tvOS Simulator, plus further tvOS integration
2020-06-24 18:34:13 -04:00
Aman Gupta
8c6ab03bb9
fix flags in MVKImage.mm
2020-06-24 15:00:20 -07:00
Aman Gupta
dbdccdf068
memoryless storage not allowed for buffers
2020-06-24 14:57:18 -07:00
Aman Gupta
85fb1ae4e8
memoryless introduced in tvOS 10
2020-06-24 14:45:54 -07:00
Aman Gupta
fa17791a31
fix memory properties on tvos
2020-06-24 14:41:13 -07:00
Bill Hollings
40d3485cec
Remove unneeded switch default for MTLLanguageVersion.
...
Minor doc fixes from PR review.
2020-06-24 17:04:30 -04:00
Chip Davis
3a9d951d51
MVKImage: Remove error message.
...
The number of layers is set on the `MTLRenderPassDescription`.
2020-06-24 12:18:12 -05:00
Chip Davis
dc79e75379
MVKImage: Fix inverted condition.
2020-06-24 12:18:12 -05:00
Aman Gupta
043f51c5a2
missing tvos features
2020-06-23 19:56:20 -07:00
Aman Gupta
e8db4f2af7
fix maxComputeSharedMemorySize for tvos
2020-06-23 19:25:51 -07:00
Aman Gupta
e03df97f66
ensure more tvos properties are set
2020-06-23 18:33:42 -07:00
Aman Gupta
1b88d4afff
fill in some missing properties
2020-06-23 18:15:22 -07:00
Bill Hollings
da981be45b
Merge pull request #932 from Lichtso/VkPhysicalDeviceSubgroupProperties
...
Adds VkPhysicalDeviceSubgroupProperties.
2020-06-23 14:06:10 -04:00
Bill Hollings
7910f43867
MVKPixelFormats reduce some MTLPixelFormat capabilities for simulators.
...
Add MVK_IOS_SIMULATOR and MVK_TVOS_SIMULATOR macros.
MVKPixelFormats add disableMTLPixelFormatCapabilities().
MVKPixelFormats add disableAllMTLPixelFormatCapabilities().
2020-06-22 23:52:51 -04:00
Bill Hollings
72517a2474
Cleanup tvOS build warnings.
...
Use platform macros to conditionally build outstanding tvOS code.
Log validation error message when tvOS code doesn't support expected functionality.
2020-06-22 21:55:51 -04:00
Bill Hollings
8b3d3a7338
Merge pull request #930 from js6i/master
...
Host-coherent texel buffers
2020-06-22 15:56:44 -04:00
Alexander Meißner
56beffd770
Fixes supportedStages and limits subgroupSize to be only set on supported platforms / versions.
2020-06-22 21:54:27 +02:00
Jan Sikorski
6b5217e720
Protect creation of buffers with a mutex
2020-06-22 18:38:12 +02:00
Jan Sikorski
d0059a2bdf
Do host-coherent texel buffer caching just for buffer views
2020-06-22 18:35:50 +02:00
Alexander Meißner
60af232d4f
Adds VkPhysicalDeviceSubgroupProperties.
...
This comes with a fixed subgroupSize per physical device until VK_EXT_subgroup_size_control is implemented.
2020-06-21 10:17:38 +02:00
Bill Hollings
039cb199bb
Remove use of TARGETED_DEVICE_FAMILY Xcode build setting.
2020-06-19 15:55:22 -04:00
Chip Davis
d14d4e918d
MVKPipeline: Fix fragment inputs to have as many components as vertex outputs.
...
Metal is picky about interface matching. If the types of a vertex output
and its corresponding fragment input don't match, down to the number of
vector components, it fails pipeline compilation. To support cases where
the number of components in the fragment input is less than the
corresponding vertex output, we need to fix up the fragment shader to
accept the extra components.
2020-06-19 14:20:29 -05:00
Bill Hollings
ac204382db
Merge simulator support with tvOS support.
2020-06-19 15:05:43 -04:00
Jan Sikorski
5eea556bf8
Check for overlap with device memory range when flushing MVKBuffer
2020-06-19 19:37:54 +02:00
Bill Hollings
9fea13773d
Support iOS simulator and fat library builds of MoltenVK libraries.
...
Create fat builds of static, dynamic & framework libraries if both iOS
and simulator versions have been created from separate manual Xcode builds.
Refactor scripts for creating fat libraries to reuse across projects.
Add MVK_BUILT_PROD_DIR to replace use of BUILT_PRODUCTS_DIR in most scripts
to allow flexibility across per-platform compilation.
2020-06-19 09:53:43 -04:00
Aman Gupta
e952660afb
these were introduced with Metal 2.0 (tvOS 11)
2020-06-17 18:36:48 -07:00
Aman Gupta
1b08aee36e
ensure devID is for A10X
2020-06-17 17:25:20 -07:00
Aman Gupta
e847fb38e9
fix some missing return warnings
2020-06-17 14:46:06 -07:00
Aman Gupta
639d9182ac
assume tvos v1 shipped with these vertex things
2020-06-17 11:05:27 -07:00
Aman Gupta
800d8b4133
audit tvos pixel formats against metal-feature-set-tables.pdf
2020-06-17 10:56:41 -07:00
Aman Gupta
c59c137a3c
populate devID for tvOS
2020-06-17 10:42:08 -07:00
Aman Gupta
073222f8ab
proper fix for pixel formats on tvos
2020-06-17 10:28:49 -07:00
Aman Gupta
60d3b3377b
fix tvOS compat by using selectors instead of property syntax
2020-06-17 10:25:10 -07:00
Aman Gupta
5bf4d08d15
oops, bad merge here
2020-06-17 10:23:45 -07:00
Aman Gupta
766bed17e6
xcode updates
2020-06-17 10:15:34 -07:00
Aman Gupta
ec82fa46aa
this is not supported
2020-06-17 10:15:23 -07:00
Aman Gupta
ded0d173f6
set MTL language versions correctly
2020-06-17 10:15:14 -07:00
Aman Gupta
a0e357fab5
Merge remote-tracking branch 'upstream/master' into tvos
2020-06-17 10:05:40 -07:00
Bill Hollings
ae5282f38c
Merge pull request #928 from billhollings/master
...
Inline MVKVulkanAPIObject::retain()/release() calls.
2020-06-16 15:43:31 -04:00
Bill Hollings
6cede2b776
Inline MVKVulkanAPIObject::retain()/release() calls.
...
This improves performance of these calls by 30%.
2020-06-16 14:53:14 -04:00