Bill Hollings
205b859580
Fix issue where mapped host-coherent device memory not updated from image contents on macOS.
...
Currently, when a mapping is initiated for host-coherent device memory, existing
image contents are copied from the MTLTexture to host memory. However, if
host-coherent device memory is already mapped in a long-standing memory mapping,
changes to MTLTexture content are not reflected to the host memory.
This change adds that capability to open memory mappings. When the image pipeline
barrier is applied to an image that is attached to a host-coherent device memory
that currently has an open memory mapping, the MTLTexture contents are copied to
the open host memory binding.
Add MVKMappedMemoryRange to retrieve the currently mapped range in an MVKDeviceMemory.
MVKImage cleanup use of isHostCoherent(). Let it be same as MVKDeviceMemory
and don't test for it from macOS because it is unnecessary.
2020-06-15 22:18:53 -04:00
Aman Gupta
d8adfa6989
ensure metal devices are seen on tvos
2020-06-15 18:33:23 -07:00
Aman Gupta
f8133bfb84
missing tvOS symlinks
2020-06-15 17:55:57 -07:00
Aman Gupta
1cb99b1b3f
fill in tvOS details from Metal-Feature-Set-Tables.pdf
2020-06-15 17:46:00 -07:00
Aman Gupta
ef08f0d9fb
fix some warnings
2020-06-15 17:05:07 -07:00
Aman Gupta
7d1b1e7e8e
fix build
2020-06-15 16:49:51 -07:00
Aman Gupta
8c7b6771bc
oops
2020-06-15 16:47:53 -07:00
Aman Gupta
ad61c70427
define initGPUInfoProperties stub
2020-06-15 16:47:20 -07:00
Aman Gupta
b13dd86350
forgot an ios reference
2020-06-15 16:45:27 -07:00
Aman Gupta
50e8d9cae5
more conditionals
2020-06-15 16:44:56 -07:00
Aman Gupta
9694169da6
split out MVK_IOS_OR_TVOS
2020-06-15 16:36:05 -07:00
Aman Gupta
b250212c6f
add MVK_TVOS and start conditionalizing build failures
2020-06-15 16:21:13 -07:00
Aman Gupta
4ab6b3d4fe
fix more xcode deps for tvos
2020-06-15 16:11:14 -07:00
Aman Gupta
4b1aa0a0c4
add template framework for tvos
2020-06-15 15:55:36 -07:00
Aman Gupta
aabc94995b
forgot a script
2020-06-15 15:54:31 -07:00
Aman Gupta
b26d8673b0
more tvos fixes
2020-06-15 15:53:54 -07:00
Alexander Meißner
82a07ed468
Replaced _mtlBuffer by a malloc of _buffer and _length.
...
Added comments about why the third parameter of read() and write() is different.
2020-06-15 09:02:19 +02:00
Bill Hollings
c1c49def22
Move applyImageMemoryBarrier() logic to MVKImagePlane.
...
Mark MVKResource::bindDeviceMemory() as virtual.
Remove use of !! from mvkIsAnyFlagEnabled().
Update What's New document for VK_KHR_sampler_ycbcr_conversion.
2020-06-14 19:15:39 -04:00
Bill Hollings
a8449ef764
Merge pull request #923 from billhollings/master
...
Fixes and consistency improvements to the recent VK_KHR_sampler_ycbcr_conversion extension.
2020-06-14 13:35:37 -04:00
Alexander Meißner
4a09c7aa20
Fixes 4 bugs in VK_EXT_inline_uniform_block:
...
descriptorCount measures bytes, array indices are offsets into the buffer,
missing isInline flag in bind, missing struct VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT.
2020-06-14 09:45:07 +02:00
Bill Hollings
4d69e0aecd
Fix MVKImageViewPlane ignoring swizzle.
...
Allow MVKImageViewPlane MTLPixelFormat to be modified by swizzle settings.
Make MVKImageViewPlane a subclass of MVKBaseDeviceObject to streamline device access.
2020-06-13 22:08:58 -04:00
Bill Hollings
73eab172e0
Treat MVKImageMemoryBinding, MVKImagePlane, and MVKImageViewPlane
...
as subclasses of MVKBaseObject for lifecycles.
Remove use of unique_ptr to manage destruction of MVKImageMemoryBinding,
MVKImagePlane, and MVKImageViewPlane instances. Instead, call destroy()
on them during destruction of MVKImage and MVKImageView.
2020-06-13 20:18:06 -04:00
Bill Hollings
83bbd6e384
Fix use of needsHostReadSync().
...
MVKImageMemoryBinding::needsHostReadSync() use MVKPipelineBarrier.
Removed obsolete MVKResource::needsHostReadSync(), which was no longer being used.
2020-06-13 17:09:49 -04:00
Bill Hollings
06747095c5
Merge pull request #921 from Lichtso/VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES
...
Move VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES
2020-06-13 13:18:18 -04:00
Alexander Meißner
81dd248b36
Moves VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES
...
from VkPhysicalDeviceProperties2 to VkImageFormatProperties2.
2020-06-13 11:11:53 +02:00
Bill Hollings
8be219f428
Merge pull request #915 from billhollings/master
...
Restore the correct value for maxDrawIndexedIndexValue.
2020-06-11 17:58:35 -04:00
Bill Hollings
348c064b75
Merge pull request #909 from Lichtso/VK_KHR_sampler_ycbcr_conversion
...
VK_KHR_sampler_ycbcr_conversion
2020-06-11 17:09:34 -04:00
Bill Hollings
05a2607391
Add explanatory comment regarding value of maxDrawIndexedIndexValue.
2020-06-11 17:08:32 -04:00
Bill Hollings
c39e90cbfd
Restore the correct value for maxDrawIndexedIndexValue.
2020-06-11 17:03:03 -04:00
Bill Hollings
2ec9af4069
Merge pull request #914 from billhollings/master
...
Remove use of @available() directive as it can cause issues in some build environments.
2020-06-11 14:31:48 -04:00
Bill Hollings
89fce99ef1
Update What's New document.
2020-06-11 12:49:42 -04:00
Bill Hollings
dd98fbd26f
Remove use of @available() directive as it can cause issues in some build environments.
...
Generally replace use of @available() with respondsToSelector:.
Add mvkMakeOSVersion() and mvkOSVersionIsAtLeast(macos,ios) to help testing OS versions.
Set maxDrawIndexedIndexValue to kMVKUndefinedLargeUInt32 instead of uint32_t max.
2020-06-11 12:43:38 -04:00
Alexander Meißner
7a0dcc07e6
Minor fixes
2020-06-11 13:41:42 +02:00
Alexander Meißner
f2e8552caf
Merge master into VK_KHR_sampler_ycbcr_conversion
2020-06-11 12:40:55 +02:00
Bill Hollings
7cf3b26b37
Demo API-Samples generateSPIRVShaders no longer builds MoltenVKShaderController tool.
...
The tool will be built during MoltenVK build, and rebuilding just the tool
was clearing away the main MoltenVK build.
2020-06-09 22:38:48 -04:00
Aman Gupta
3a8dc355b5
try setting more tvos bits
2020-06-09 15:41:19 -07:00
Aman Gupta
118ef06371
add tvos targets to the xcode projects
2020-06-09 15:16:14 -07:00
Aman Gupta
44a2ec5836
add tvOS boilerplate
2020-06-09 14:47:11 -07:00
Bill Hollings
752c1a908d
Refactor Xcode build architectures
...
Set ARCHS build setting to $(ARCHS_STANDARD_64_BIT) in Xcode projects.
Remove ARCHS and VALID_ARCHS build settings in Xcode targets.
2020-06-09 16:39:23 -04:00
Bill Hollings
e9fc62b27d
Merge pull request #911 from billhollings/master
...
Set maxVertexInputBindingStride and maxVertexInputAttributeOffset to min Vulkan values.
2020-06-09 15:38:12 -04:00
Bill Hollings
b408557c7e
Set maxVertexInputBindingStride and maxVertexInputAttributeOffset to min Vulkan values.
...
Ensure kMVKUndefinedLarge... family of constant values are each a power-of-two.
Change several power-of-two math functions to template functions.
2020-06-09 14:44:50 -04:00
Bill Hollings
22e2f5a777
Merge pull request #910 from billhollings/master
...
Fix issue in reporting properties of substitutable VkFormats.
2020-06-09 12:53:43 -04:00
Bill Hollings
f39486666a
Fix issue in reporting properties of substitutable VkFormats.
...
Report format properties only based on the primary MTLPixelFormat
of a VkFormat, not any possible substitution MTLPixelFormat.
Update MoltenVK version to 1.0.43 and VK_MVK_MOLTENVK_SPEC_VERSION to 26.
2020-06-09 12:01:55 -04:00
Alexander Meißner
5e4e2d83cc
Merge master into VK_KHR_sampler_ycbcr_conversion
2020-06-08 00:05:16 +02:00
Alexander Meißner
0256b376da
Optimizes chroma subsampling pixel formats.
2020-06-06 22:47:51 +02:00
Alexander Meißner
05e5af7dbf
Adds support for descriptor assignment of multi planar images and samplers.
2020-06-05 14:58:19 +01:00
Bill Hollings
b0f1bacd77
Merge pull request #907 from js6i/master
...
Handle vertex attributes with zero stride
2020-06-04 15:08:45 -04:00
Jan Sikorski
fa63b92d5d
Handle vertex attributes with zero stride
2020-06-04 17:45:05 +02:00
Alexander Meißner
3005a153bc
Refactoring to support multiple MVKImageViewPlanes per MVKImageView.
2020-06-04 11:57:35 +02:00
Jan Sikorski
6df700f6e7
Don't try to move offset into stride for vertex attribute whose stride is 0
2020-06-04 09:31:34 +02:00