@shopify/react-native-skia 2.6.5 → 2.6.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (250) hide show
  1. package/android/CMakeLists.txt +1 -0
  2. package/android/src/paper/java/com/facebook/react/viewmanagers/SkiaWebGPUViewManagerDelegate.java +35 -0
  3. package/android/src/paper/java/com/facebook/react/viewmanagers/SkiaWebGPUViewManagerInterface.java +17 -0
  4. package/cpp/api/JsiSkCanvas.h +33 -0
  5. package/cpp/api/JsiSkImage.h +12 -4
  6. package/cpp/api/JsiSkSurface.h +5 -1
  7. package/cpp/rnwgpu/api/GPU.cpp +0 -3
  8. package/cpp/rnwgpu/api/GPUAdapter.cpp +9 -5
  9. package/cpp/rnwgpu/api/GPUDevice.cpp +55 -4
  10. package/cpp/rnwgpu/api/GPUDevice.h +6 -0
  11. package/cpp/rnwgpu/api/GPUShaderModule.cpp +1 -1
  12. package/cpp/rnwgpu/api/GPUSharedFence.cpp +80 -0
  13. package/cpp/rnwgpu/api/GPUSharedFence.h +53 -0
  14. package/cpp/rnwgpu/api/GPUSharedTextureMemory.cpp +64 -11
  15. package/cpp/rnwgpu/api/GPUSharedTextureMemory.h +13 -8
  16. package/cpp/rnwgpu/api/descriptors/GPUSharedFenceDescriptor.h +58 -0
  17. package/cpp/rnwgpu/api/descriptors/GPUSharedFenceState.h +51 -0
  18. package/cpp/skia/include/android/GrAHardwareBufferUtils.h +1 -1
  19. package/cpp/skia/include/android/SkAndroidFrameworkUtils.h +1 -1
  20. package/cpp/skia/include/android/SkAnimatedImage.h +1 -1
  21. package/cpp/skia/include/codec/SkCodec.h +0 -8
  22. package/cpp/skia/include/codec/SkEncodedOrigin.h +1 -1
  23. package/cpp/skia/include/codec/SkPngRustDecoder.h +1 -1
  24. package/cpp/skia/include/core/SkBitmap.h +2 -8
  25. package/cpp/skia/include/core/SkCPURecorder.h +3 -1
  26. package/cpp/skia/include/core/SkCanvasVirtualEnforcer.h +1 -1
  27. package/cpp/skia/include/core/SkColorType.h +5 -3
  28. package/cpp/skia/include/core/SkContourMeasure.h +1 -1
  29. package/cpp/skia/include/core/SkCoverageMode.h +1 -1
  30. package/cpp/skia/include/core/SkCubicMap.h +1 -1
  31. package/cpp/skia/include/core/SkExecutor.h +1 -1
  32. package/cpp/skia/include/core/SkFont.h +15 -0
  33. package/cpp/skia/include/core/SkFontArguments.h +6 -1
  34. package/cpp/skia/include/core/SkFontMetrics.h +1 -1
  35. package/cpp/skia/include/core/SkFontMgr.h +36 -1
  36. package/cpp/skia/include/core/SkFontParameters.h +1 -1
  37. package/cpp/skia/include/core/SkFontScanner.h +1 -1
  38. package/cpp/skia/include/core/SkFontTypes.h +1 -1
  39. package/cpp/skia/include/core/SkM44.h +1 -1
  40. package/cpp/skia/include/core/SkMilestone.h +1 -1
  41. package/cpp/skia/include/core/SkOpenTypeSVGDecoder.h +1 -1
  42. package/cpp/skia/include/core/SkPathBuilder.h +10 -4
  43. package/cpp/skia/include/core/SkPathIter.h +1 -1
  44. package/cpp/skia/include/core/SkPathTypes.h +1 -1
  45. package/cpp/skia/include/core/SkPixelRef.h +4 -1
  46. package/cpp/skia/include/core/SkRecorder.h +2 -1
  47. package/cpp/skia/include/core/SkRegion.h +7 -1
  48. package/cpp/skia/include/core/SkSamplingOptions.h +1 -1
  49. package/cpp/skia/include/core/SkSerialProcs.h +8 -1
  50. package/cpp/skia/include/core/SkShader.h +3 -5
  51. package/cpp/skia/include/core/SkSpan.h +1 -1
  52. package/cpp/skia/include/core/SkStream.h +1 -1
  53. package/cpp/skia/include/core/SkStrikeRef.h +80 -0
  54. package/cpp/skia/include/core/SkTileMode.h +1 -1
  55. package/cpp/skia/include/core/SkVertices.h +1 -1
  56. package/cpp/skia/include/core/SkYUVAPixmaps.h +3 -5
  57. package/cpp/skia/include/docs/SkPDFDocument.h +1 -1
  58. package/cpp/skia/include/docs/SkXPSDocument.h +1 -1
  59. package/cpp/skia/include/effects/SkGradient.h +1 -1
  60. package/cpp/skia/include/effects/SkHighContrastFilter.h +1 -1
  61. package/cpp/skia/include/effects/SkShaderMaskFilter.h +1 -1
  62. package/cpp/skia/include/effects/SkTrimPathEffect.h +1 -1
  63. package/cpp/skia/include/encode/SkEncoder.h +1 -1
  64. package/cpp/skia/include/encode/SkJpegEncoder.h +1 -1
  65. package/cpp/skia/include/encode/SkPngEncoder.h +1 -1
  66. package/cpp/skia/include/encode/SkPngRustEncoder.h +1 -1
  67. package/cpp/skia/include/encode/SkWebpEncoder.h +1 -1
  68. package/cpp/skia/include/gpu/GpuTypes.h +2 -0
  69. package/cpp/skia/include/gpu/MutableTextureState.h +1 -1
  70. package/cpp/skia/include/gpu/ganesh/GrBackendSemaphore.h +1 -1
  71. package/cpp/skia/include/gpu/ganesh/GrBackendSurface.h +6 -62
  72. package/cpp/skia/include/gpu/ganesh/GrContextThreadSafeProxy.h +1 -1
  73. package/cpp/skia/include/gpu/ganesh/GrDirectContext.h +1 -1
  74. package/cpp/skia/include/gpu/ganesh/GrDriverBugWorkarounds.h +1 -1
  75. package/cpp/skia/include/gpu/ganesh/GrRecordingContext.h +2 -1
  76. package/cpp/skia/include/gpu/ganesh/mock/GrMockBackendSurface.h +59 -0
  77. package/cpp/skia/include/gpu/ganesh/mock/GrMockTypes.h +1 -1
  78. package/cpp/skia/include/gpu/ganesh/mtl/GrMtlBackendContext.h +1 -1
  79. package/cpp/skia/include/gpu/ganesh/mtl/GrMtlTypes.h +1 -1
  80. package/cpp/skia/include/gpu/ganesh/vk/GrBackendDrawableInfo.h +1 -1
  81. package/cpp/skia/include/gpu/graphite/Context.h +11 -4
  82. package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +6 -0
  83. package/cpp/skia/include/gpu/graphite/Image.h +82 -9
  84. package/cpp/skia/include/gpu/graphite/PrecompileContext.h +7 -2
  85. package/cpp/skia/include/gpu/graphite/Recorder.h +6 -4
  86. package/cpp/skia/include/gpu/graphite/precompile/PrecompileColorFilter.h +11 -1
  87. package/cpp/skia/include/gpu/graphite/precompile/PrecompileShader.h +1 -0
  88. package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteTypes.h +1 -1
  89. package/cpp/skia/include/gpu/mtl/MtlMemoryAllocator.h +1 -1
  90. package/cpp/skia/include/gpu/vk/VulkanExtensions.h +1 -1
  91. package/cpp/skia/include/gpu/vk/VulkanMemoryAllocator.h +1 -1
  92. package/cpp/skia/include/gpu/vk/VulkanTypes.h +1 -1
  93. package/cpp/skia/include/ports/SkCFObject.h +1 -1
  94. package/cpp/skia/include/ports/SkFontMgr_Fontations.h +1 -1
  95. package/cpp/skia/include/ports/SkFontMgr_android_ndk.h +1 -1
  96. package/cpp/skia/include/ports/SkFontMgr_data.h +1 -1
  97. package/cpp/skia/include/ports/SkFontMgr_fuchsia.h +1 -1
  98. package/cpp/skia/include/ports/SkFontMgr_mac_ct.h +1 -1
  99. package/cpp/skia/include/ports/SkFontScanner_Fontations.h +1 -1
  100. package/cpp/skia/include/ports/SkFontScanner_FreeType.h +1 -1
  101. package/cpp/skia/include/ports/SkTypeface_fontations.h +1 -1
  102. package/cpp/skia/include/private/SkExif.h +1 -1
  103. package/cpp/skia/include/private/SkGainmapInfo.h +1 -1
  104. package/cpp/skia/include/private/SkGainmapShader.h +1 -1
  105. package/cpp/skia/include/private/SkHdrMetadata.h +21 -0
  106. package/cpp/skia/include/private/SkJpegGainmapEncoder.h +1 -1
  107. package/cpp/skia/include/private/SkPixelStorage.h +37 -0
  108. package/cpp/skia/include/private/SkXmp.h +1 -1
  109. package/cpp/skia/include/private/base/SkAssert.h +6 -5
  110. package/cpp/skia/include/private/base/SkContainers.h +1 -1
  111. package/cpp/skia/include/private/base/SkFeatures.h +30 -30
  112. package/cpp/skia/include/private/base/SkLog.h +1 -7
  113. package/cpp/skia/include/private/base/SkLogPriority.h +4 -5
  114. package/cpp/skia/include/private/base/SkMacros.h +1 -1
  115. package/cpp/skia/include/private/base/SkMalloc.h +1 -1
  116. package/cpp/skia/include/private/base/SkSafe32.h +1 -1
  117. package/cpp/skia/include/private/base/SkSpan_impl.h +1 -1
  118. package/cpp/skia/include/private/base/SkTDArray.h +13 -1
  119. package/cpp/skia/include/private/base/SkTPin.h +1 -1
  120. package/cpp/skia/include/private/base/SkTo.h +1 -1
  121. package/cpp/skia/include/private/chromium/GrVkSecondaryCBDrawContext.h +1 -1
  122. package/cpp/skia/include/private/chromium/SkChromeRemoteGlyphCache.h +1 -1
  123. package/cpp/skia/include/private/chromium/SkCodecsICCProfileChromium.h +52 -0
  124. package/cpp/skia/include/private/chromium/SkExifChromium.h +26 -0
  125. package/cpp/skia/include/private/gpu/ganesh/GrContext_Base.h +1 -1
  126. package/cpp/skia/include/private/gpu/ganesh/GrImageContext.h +1 -1
  127. package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +2 -1
  128. package/cpp/skia/include/private/gpu/vk/SkiaVulkan.h +1 -1
  129. package/cpp/skia/include/sksl/SkSLDebugTrace.h +1 -1
  130. package/cpp/skia/include/third_party/vulkan/vulkan/vk_icd.h +41 -51
  131. package/cpp/skia/include/third_party/vulkan/vulkan/vk_layer.h +42 -53
  132. package/cpp/skia/include/third_party/vulkan/vulkan/vk_platform.h +2 -1
  133. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_av1std.h +158 -154
  134. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_av1std_decode.h +68 -65
  135. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_av1std_encode.h +90 -87
  136. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std.h +9 -9
  137. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std_decode.h +2 -2
  138. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std_encode.h +82 -79
  139. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std.h +24 -24
  140. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std_decode.h +2 -2
  141. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std_encode.h +95 -96
  142. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_vp9std.h +151 -0
  143. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_vp9std_decode.h +68 -0
  144. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codecs_common.h +1 -1
  145. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan.h +5 -1
  146. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_android.h +7 -1
  147. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_beta.h +291 -158
  148. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_core.h +13174 -10113
  149. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_directfb.h +23 -19
  150. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_fuchsia.h +159 -165
  151. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_ggp.h +22 -19
  152. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_ios.h +3 -1
  153. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_macos.h +3 -1
  154. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_metal.h +94 -88
  155. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_ohos.h +120 -0
  156. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_screen.h +55 -51
  157. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_vi.h +18 -15
  158. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_wayland.h +23 -19
  159. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_win32.h +31 -1
  160. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_xcb.h +5 -1
  161. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_xlib.h +27 -27
  162. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_xlib_xrandr.h +20 -16
  163. package/cpp/skia/include/utils/SkEventTracer.h +6 -1
  164. package/cpp/skia/include/utils/SkOrderedFontMgr.h +1 -1
  165. package/cpp/skia/include/utils/SkShadowUtils.h +1 -1
  166. package/cpp/skia/include/utils/SkTextUtils.h +1 -1
  167. package/cpp/skia/modules/jsonreader/SkJSONReader.cpp +20 -4
  168. package/cpp/skia/modules/skcms/src/Transform_inl.h +11 -15
  169. package/cpp/skia/modules/skcms/src/skcms_public.h +2 -0
  170. package/cpp/skia/modules/skottie/include/ExternalLayer.h +1 -1
  171. package/cpp/skia/modules/skottie/include/Skottie.h +1 -1
  172. package/cpp/skia/modules/skottie/include/SkottieProperty.h +1 -1
  173. package/cpp/skia/modules/skottie/include/SlotManager.h +1 -1
  174. package/cpp/skia/modules/skottie/include/TextShaper.h +1 -1
  175. package/cpp/skia/modules/skottie/src/SkottieValue.h +1 -1
  176. package/cpp/skia/modules/skottie/src/animator/Animator.h +1 -1
  177. package/cpp/skia/modules/skottie/src/text/Font.h +1 -1
  178. package/cpp/skia/modules/skottie/src/text/TextAdapter.h +1 -1
  179. package/cpp/skia/modules/skottie/src/text/TextAnimator.h +3 -2
  180. package/cpp/skia/modules/skottie/src/text/TextValue.h +1 -1
  181. package/cpp/skia/modules/skparagraph/include/DartTypes.h +1 -1
  182. package/cpp/skia/modules/skparagraph/include/FontArguments.h +1 -1
  183. package/cpp/skia/modules/skparagraph/include/FontCollection.h +5 -1
  184. package/cpp/skia/modules/skparagraph/include/Metrics.h +1 -1
  185. package/cpp/skia/modules/skparagraph/include/Paragraph.h +1 -1
  186. package/cpp/skia/modules/skparagraph/include/ParagraphBuilder.h +1 -1
  187. package/cpp/skia/modules/skparagraph/include/ParagraphCache.h +1 -1
  188. package/cpp/skia/modules/skparagraph/include/ParagraphPainter.h +1 -1
  189. package/cpp/skia/modules/skparagraph/include/ParagraphStyle.h +12 -5
  190. package/cpp/skia/modules/skparagraph/include/TextShadow.h +1 -1
  191. package/cpp/skia/modules/skparagraph/include/TextStyle.h +1 -1
  192. package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +1 -1
  193. package/cpp/skia/modules/sksg/include/SkSGClipEffect.h +1 -1
  194. package/cpp/skia/modules/sksg/include/SkSGColorFilter.h +1 -1
  195. package/cpp/skia/modules/sksg/include/SkSGDraw.h +1 -1
  196. package/cpp/skia/modules/sksg/include/SkSGEffectNode.h +1 -1
  197. package/cpp/skia/modules/sksg/include/SkSGGeometryEffect.h +1 -1
  198. package/cpp/skia/modules/sksg/include/SkSGGeometryNode.h +1 -1
  199. package/cpp/skia/modules/sksg/include/SkSGGradient.h +1 -1
  200. package/cpp/skia/modules/sksg/include/SkSGGroup.h +1 -1
  201. package/cpp/skia/modules/sksg/include/SkSGImage.h +1 -1
  202. package/cpp/skia/modules/sksg/include/SkSGInvalidationController.h +1 -1
  203. package/cpp/skia/modules/sksg/include/SkSGMaskEffect.h +1 -1
  204. package/cpp/skia/modules/sksg/include/SkSGMerge.h +1 -1
  205. package/cpp/skia/modules/sksg/include/SkSGNode.h +1 -1
  206. package/cpp/skia/modules/sksg/include/SkSGOpacityEffect.h +1 -1
  207. package/cpp/skia/modules/sksg/include/SkSGPaint.h +1 -1
  208. package/cpp/skia/modules/sksg/include/SkSGPath.h +1 -1
  209. package/cpp/skia/modules/sksg/include/SkSGPlane.h +1 -1
  210. package/cpp/skia/modules/sksg/include/SkSGRect.h +1 -1
  211. package/cpp/skia/modules/sksg/include/SkSGRenderEffect.h +1 -1
  212. package/cpp/skia/modules/sksg/include/SkSGRenderNode.h +1 -1
  213. package/cpp/skia/modules/sksg/include/SkSGScene.h +1 -1
  214. package/cpp/skia/modules/sksg/include/SkSGText.h +1 -1
  215. package/cpp/skia/modules/sksg/include/SkSGTransform.h +1 -1
  216. package/cpp/skia/modules/skshaper/include/SkShaper_coretext.h +8 -1
  217. package/cpp/skia/modules/svg/include/SkSVGFe.h +1 -1
  218. package/cpp/skia/modules/svg/include/SkSVGFeBlend.h +1 -1
  219. package/cpp/skia/modules/svg/include/SkSVGFeColorMatrix.h +1 -1
  220. package/cpp/skia/modules/svg/include/SkSVGFeComponentTransfer.h +1 -1
  221. package/cpp/skia/modules/svg/include/SkSVGFeComposite.h +1 -1
  222. package/cpp/skia/modules/svg/include/SkSVGFeDisplacementMap.h +1 -1
  223. package/cpp/skia/modules/svg/include/SkSVGFeFlood.h +1 -1
  224. package/cpp/skia/modules/svg/include/SkSVGFeGaussianBlur.h +1 -1
  225. package/cpp/skia/modules/svg/include/SkSVGFeImage.h +1 -1
  226. package/cpp/skia/modules/svg/include/SkSVGFeLightSource.h +1 -1
  227. package/cpp/skia/modules/svg/include/SkSVGFeLighting.h +1 -1
  228. package/cpp/skia/modules/svg/include/SkSVGFeMerge.h +1 -1
  229. package/cpp/skia/modules/svg/include/SkSVGFeMorphology.h +1 -1
  230. package/cpp/skia/modules/svg/include/SkSVGFeOffset.h +1 -1
  231. package/cpp/skia/modules/svg/include/SkSVGFeTurbulence.h +1 -1
  232. package/cpp/skia/modules/svg/include/SkSVGFilter.h +1 -1
  233. package/cpp/skia/modules/svg/include/SkSVGFilterContext.h +1 -1
  234. package/cpp/skia/modules/svg/include/SkSVGGradient.h +1 -1
  235. package/cpp/skia/modules/svg/include/SkSVGImage.h +1 -1
  236. package/cpp/skia/modules/svg/include/SkSVGMask.h +1 -1
  237. package/cpp/skia/modules/svg/include/SkSVGOpenTypeSVGDecoder.h +1 -1
  238. package/cpp/skia/modules/svg/include/SkSVGPattern.h +1 -1
  239. package/cpp/skia/modules/svg/include/SkSVGRadialGradient.h +1 -1
  240. package/cpp/skia/modules/svg/include/SkSVGText.h +1 -1
  241. package/cpp/skia/modules/svg/include/SkSVGUse.h +1 -1
  242. package/cpp/skia/src/base/SkAutoLocaleSetter.h +94 -0
  243. package/cpp/skia/src/base/SkUTF.h +1 -1
  244. package/lib/commonjs/skia/types/WebGPU.d.ts +70 -5
  245. package/lib/commonjs/skia/types/WebGPU.js.map +1 -1
  246. package/lib/module/skia/types/WebGPU.d.ts +70 -5
  247. package/lib/module/skia/types/WebGPU.js.map +1 -1
  248. package/lib/typescript/src/skia/types/WebGPU.d.ts +70 -5
  249. package/package.json +5 -5
  250. package/src/skia/types/WebGPU.ts +83 -5
@@ -2,7 +2,7 @@
2
2
  #define VULKAN_BETA_H_ 1
3
3
 
4
4
  /*
5
- ** Copyright 2015-2025 The Khronos Group Inc.
5
+ ** Copyright 2015-2026 The Khronos Group Inc.
6
6
  **
7
7
  ** SPDX-License-Identifier: Apache-2.0
8
8
  */
@@ -12,185 +12,286 @@
12
12
  **
13
13
  */
14
14
 
15
+
15
16
  #ifdef __cplusplus
16
17
  extern "C" {
17
18
  #endif
18
19
 
20
+
21
+
19
22
  // VK_KHR_portability_subset is a preprocessor guard. Do not pass it to API calls.
20
23
  #define VK_KHR_portability_subset 1
21
24
  #define VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION 1
22
25
  #define VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME "VK_KHR_portability_subset"
23
26
  typedef struct VkPhysicalDevicePortabilitySubsetFeaturesKHR {
24
- VkStructureType sType;
25
- void* pNext;
26
- VkBool32 constantAlphaColorBlendFactors;
27
- VkBool32 events;
28
- VkBool32 imageViewFormatReinterpretation;
29
- VkBool32 imageViewFormatSwizzle;
30
- VkBool32 imageView2DOn3DImage;
31
- VkBool32 multisampleArrayImage;
32
- VkBool32 mutableComparisonSamplers;
33
- VkBool32 pointPolygons;
34
- VkBool32 samplerMipLodBias;
35
- VkBool32 separateStencilMaskRef;
36
- VkBool32 shaderSampleRateInterpolationFunctions;
37
- VkBool32 tessellationIsolines;
38
- VkBool32 tessellationPointMode;
39
- VkBool32 triangleFans;
40
- VkBool32 vertexAttributeAccessBeyondStride;
27
+ VkStructureType sType;
28
+ void* pNext;
29
+ VkBool32 constantAlphaColorBlendFactors;
30
+ VkBool32 events;
31
+ VkBool32 imageViewFormatReinterpretation;
32
+ VkBool32 imageViewFormatSwizzle;
33
+ VkBool32 imageView2DOn3DImage;
34
+ VkBool32 multisampleArrayImage;
35
+ VkBool32 mutableComparisonSamplers;
36
+ VkBool32 pointPolygons;
37
+ VkBool32 samplerMipLodBias;
38
+ VkBool32 separateStencilMaskRef;
39
+ VkBool32 shaderSampleRateInterpolationFunctions;
40
+ VkBool32 tessellationIsolines;
41
+ VkBool32 tessellationPointMode;
42
+ VkBool32 triangleFans;
43
+ VkBool32 vertexAttributeAccessBeyondStride;
41
44
  } VkPhysicalDevicePortabilitySubsetFeaturesKHR;
42
45
 
43
46
  typedef struct VkPhysicalDevicePortabilitySubsetPropertiesKHR {
44
- VkStructureType sType;
45
- void* pNext;
46
- uint32_t minVertexInputBindingStrideAlignment;
47
+ VkStructureType sType;
48
+ void* pNext;
49
+ uint32_t minVertexInputBindingStrideAlignment;
47
50
  } VkPhysicalDevicePortabilitySubsetPropertiesKHR;
48
51
 
52
+
53
+
49
54
  // VK_AMDX_shader_enqueue is a preprocessor guard. Do not pass it to API calls.
50
55
  #define VK_AMDX_shader_enqueue 1
51
56
  #define VK_AMDX_SHADER_ENQUEUE_SPEC_VERSION 2
52
57
  #define VK_AMDX_SHADER_ENQUEUE_EXTENSION_NAME "VK_AMDX_shader_enqueue"
53
- #define VK_SHADER_INDEX_UNUSED_AMDX (~0U)
58
+ #define VK_SHADER_INDEX_UNUSED_AMDX (~0U)
54
59
  typedef struct VkPhysicalDeviceShaderEnqueueFeaturesAMDX {
55
- VkStructureType sType;
56
- void* pNext;
57
- VkBool32 shaderEnqueue;
58
- VkBool32 shaderMeshEnqueue;
60
+ VkStructureType sType;
61
+ void* pNext;
62
+ VkBool32 shaderEnqueue;
63
+ VkBool32 shaderMeshEnqueue;
59
64
  } VkPhysicalDeviceShaderEnqueueFeaturesAMDX;
60
65
 
61
66
  typedef struct VkPhysicalDeviceShaderEnqueuePropertiesAMDX {
62
- VkStructureType sType;
63
- void* pNext;
64
- uint32_t maxExecutionGraphDepth;
65
- uint32_t maxExecutionGraphShaderOutputNodes;
66
- uint32_t maxExecutionGraphShaderPayloadSize;
67
- uint32_t maxExecutionGraphShaderPayloadCount;
68
- uint32_t executionGraphDispatchAddressAlignment;
69
- uint32_t maxExecutionGraphWorkgroupCount[3];
70
- uint32_t maxExecutionGraphWorkgroups;
67
+ VkStructureType sType;
68
+ void* pNext;
69
+ uint32_t maxExecutionGraphDepth;
70
+ uint32_t maxExecutionGraphShaderOutputNodes;
71
+ uint32_t maxExecutionGraphShaderPayloadSize;
72
+ uint32_t maxExecutionGraphShaderPayloadCount;
73
+ uint32_t executionGraphDispatchAddressAlignment;
74
+ uint32_t maxExecutionGraphWorkgroupCount[3];
75
+ uint32_t maxExecutionGraphWorkgroups;
71
76
  } VkPhysicalDeviceShaderEnqueuePropertiesAMDX;
72
77
 
73
78
  typedef struct VkExecutionGraphPipelineScratchSizeAMDX {
74
- VkStructureType sType;
75
- void* pNext;
76
- VkDeviceSize minSize;
77
- VkDeviceSize maxSize;
78
- VkDeviceSize sizeGranularity;
79
+ VkStructureType sType;
80
+ void* pNext;
81
+ VkDeviceSize minSize;
82
+ VkDeviceSize maxSize;
83
+ VkDeviceSize sizeGranularity;
79
84
  } VkExecutionGraphPipelineScratchSizeAMDX;
80
85
 
81
86
  typedef struct VkExecutionGraphPipelineCreateInfoAMDX {
82
- VkStructureType sType;
83
- const void* pNext;
84
- VkPipelineCreateFlags flags;
85
- uint32_t stageCount;
86
- const VkPipelineShaderStageCreateInfo* pStages;
87
- const VkPipelineLibraryCreateInfoKHR* pLibraryInfo;
88
- VkPipelineLayout layout;
89
- VkPipeline basePipelineHandle;
90
- int32_t basePipelineIndex;
87
+ VkStructureType sType;
88
+ const void* pNext;
89
+ VkPipelineCreateFlags flags;
90
+ uint32_t stageCount;
91
+ const VkPipelineShaderStageCreateInfo* pStages;
92
+ const VkPipelineLibraryCreateInfoKHR* pLibraryInfo;
93
+ VkPipelineLayout layout;
94
+ VkPipeline basePipelineHandle;
95
+ int32_t basePipelineIndex;
91
96
  } VkExecutionGraphPipelineCreateInfoAMDX;
92
97
 
93
98
  typedef union VkDeviceOrHostAddressConstAMDX {
94
- VkDeviceAddress deviceAddress;
95
- const void* hostAddress;
99
+ VkDeviceAddress deviceAddress;
100
+ const void* hostAddress;
96
101
  } VkDeviceOrHostAddressConstAMDX;
97
102
 
98
103
  typedef struct VkDispatchGraphInfoAMDX {
99
- uint32_t nodeIndex;
100
- uint32_t payloadCount;
101
- VkDeviceOrHostAddressConstAMDX payloads;
102
- uint64_t payloadStride;
104
+ uint32_t nodeIndex;
105
+ uint32_t payloadCount;
106
+ VkDeviceOrHostAddressConstAMDX payloads;
107
+ uint64_t payloadStride;
103
108
  } VkDispatchGraphInfoAMDX;
104
109
 
105
110
  typedef struct VkDispatchGraphCountInfoAMDX {
106
- uint32_t count;
107
- VkDeviceOrHostAddressConstAMDX infos;
108
- uint64_t stride;
111
+ uint32_t count;
112
+ VkDeviceOrHostAddressConstAMDX infos;
113
+ uint64_t stride;
109
114
  } VkDispatchGraphCountInfoAMDX;
110
115
 
111
116
  typedef struct VkPipelineShaderStageNodeCreateInfoAMDX {
112
- VkStructureType sType;
113
- const void* pNext;
114
- const char* pName;
115
- uint32_t index;
117
+ VkStructureType sType;
118
+ const void* pNext;
119
+ const char* pName;
120
+ uint32_t index;
116
121
  } VkPipelineShaderStageNodeCreateInfoAMDX;
117
122
 
118
- typedef VkResult(VKAPI_PTR* PFN_vkCreateExecutionGraphPipelinesAMDX)(
119
- VkDevice device,
120
- VkPipelineCache pipelineCache,
121
- uint32_t createInfoCount,
122
- const VkExecutionGraphPipelineCreateInfoAMDX* pCreateInfos,
123
- const VkAllocationCallbacks* pAllocator,
124
- VkPipeline* pPipelines);
125
- typedef VkResult(VKAPI_PTR* PFN_vkGetExecutionGraphPipelineScratchSizeAMDX)(
126
- VkDevice device,
127
- VkPipeline executionGraph,
128
- VkExecutionGraphPipelineScratchSizeAMDX* pSizeInfo);
129
- typedef VkResult(VKAPI_PTR* PFN_vkGetExecutionGraphPipelineNodeIndexAMDX)(
130
- VkDevice device,
131
- VkPipeline executionGraph,
132
- const VkPipelineShaderStageNodeCreateInfoAMDX* pNodeInfo,
133
- uint32_t* pNodeIndex);
134
- typedef void(VKAPI_PTR* PFN_vkCmdInitializeGraphScratchMemoryAMDX)(VkCommandBuffer commandBuffer,
135
- VkPipeline executionGraph,
136
- VkDeviceAddress scratch,
137
- VkDeviceSize scratchSize);
138
- typedef void(VKAPI_PTR* PFN_vkCmdDispatchGraphAMDX)(VkCommandBuffer commandBuffer,
139
- VkDeviceAddress scratch,
140
- VkDeviceSize scratchSize,
141
- const VkDispatchGraphCountInfoAMDX* pCountInfo);
142
- typedef void(VKAPI_PTR* PFN_vkCmdDispatchGraphIndirectAMDX)(
143
- VkCommandBuffer commandBuffer,
144
- VkDeviceAddress scratch,
145
- VkDeviceSize scratchSize,
146
- const VkDispatchGraphCountInfoAMDX* pCountInfo);
147
- typedef void(VKAPI_PTR* PFN_vkCmdDispatchGraphIndirectCountAMDX)(VkCommandBuffer commandBuffer,
148
- VkDeviceAddress scratch,
149
- VkDeviceSize scratchSize,
150
- VkDeviceAddress countInfo);
123
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateExecutionGraphPipelinesAMDX)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkExecutionGraphPipelineCreateInfoAMDX* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
124
+ typedef VkResult (VKAPI_PTR *PFN_vkGetExecutionGraphPipelineScratchSizeAMDX)(VkDevice device, VkPipeline executionGraph, VkExecutionGraphPipelineScratchSizeAMDX* pSizeInfo);
125
+ typedef VkResult (VKAPI_PTR *PFN_vkGetExecutionGraphPipelineNodeIndexAMDX)(VkDevice device, VkPipeline executionGraph, const VkPipelineShaderStageNodeCreateInfoAMDX* pNodeInfo, uint32_t* pNodeIndex);
126
+ typedef void (VKAPI_PTR *PFN_vkCmdInitializeGraphScratchMemoryAMDX)(VkCommandBuffer commandBuffer, VkPipeline executionGraph, VkDeviceAddress scratch, VkDeviceSize scratchSize);
127
+ typedef void (VKAPI_PTR *PFN_vkCmdDispatchGraphAMDX)(VkCommandBuffer commandBuffer, VkDeviceAddress scratch, VkDeviceSize scratchSize, const VkDispatchGraphCountInfoAMDX* pCountInfo);
128
+ typedef void (VKAPI_PTR *PFN_vkCmdDispatchGraphIndirectAMDX)(VkCommandBuffer commandBuffer, VkDeviceAddress scratch, VkDeviceSize scratchSize, const VkDispatchGraphCountInfoAMDX* pCountInfo);
129
+ typedef void (VKAPI_PTR *PFN_vkCmdDispatchGraphIndirectCountAMDX)(VkCommandBuffer commandBuffer, VkDeviceAddress scratch, VkDeviceSize scratchSize, VkDeviceAddress countInfo);
130
+
131
+ #ifndef VK_NO_PROTOTYPES
132
+ #ifndef VK_ONLY_EXPORTED_PROTOTYPES
133
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateExecutionGraphPipelinesAMDX(
134
+ VkDevice device,
135
+ VkPipelineCache pipelineCache,
136
+ uint32_t createInfoCount,
137
+ const VkExecutionGraphPipelineCreateInfoAMDX* pCreateInfos,
138
+ const VkAllocationCallbacks* pAllocator,
139
+ VkPipeline* pPipelines);
140
+ #endif
141
+
142
+ #ifndef VK_ONLY_EXPORTED_PROTOTYPES
143
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetExecutionGraphPipelineScratchSizeAMDX(
144
+ VkDevice device,
145
+ VkPipeline executionGraph,
146
+ VkExecutionGraphPipelineScratchSizeAMDX* pSizeInfo);
147
+ #endif
148
+
149
+ #ifndef VK_ONLY_EXPORTED_PROTOTYPES
150
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetExecutionGraphPipelineNodeIndexAMDX(
151
+ VkDevice device,
152
+ VkPipeline executionGraph,
153
+ const VkPipelineShaderStageNodeCreateInfoAMDX* pNodeInfo,
154
+ uint32_t* pNodeIndex);
155
+ #endif
156
+
157
+ #ifndef VK_ONLY_EXPORTED_PROTOTYPES
158
+ VKAPI_ATTR void VKAPI_CALL vkCmdInitializeGraphScratchMemoryAMDX(
159
+ VkCommandBuffer commandBuffer,
160
+ VkPipeline executionGraph,
161
+ VkDeviceAddress scratch,
162
+ VkDeviceSize scratchSize);
163
+ #endif
164
+
165
+ #ifndef VK_ONLY_EXPORTED_PROTOTYPES
166
+ VKAPI_ATTR void VKAPI_CALL vkCmdDispatchGraphAMDX(
167
+ VkCommandBuffer commandBuffer,
168
+ VkDeviceAddress scratch,
169
+ VkDeviceSize scratchSize,
170
+ const VkDispatchGraphCountInfoAMDX* pCountInfo);
171
+ #endif
172
+
173
+ #ifndef VK_ONLY_EXPORTED_PROTOTYPES
174
+ VKAPI_ATTR void VKAPI_CALL vkCmdDispatchGraphIndirectAMDX(
175
+ VkCommandBuffer commandBuffer,
176
+ VkDeviceAddress scratch,
177
+ VkDeviceSize scratchSize,
178
+ const VkDispatchGraphCountInfoAMDX* pCountInfo);
179
+ #endif
180
+
181
+ #ifndef VK_ONLY_EXPORTED_PROTOTYPES
182
+ VKAPI_ATTR void VKAPI_CALL vkCmdDispatchGraphIndirectCountAMDX(
183
+ VkCommandBuffer commandBuffer,
184
+ VkDeviceAddress scratch,
185
+ VkDeviceSize scratchSize,
186
+ VkDeviceAddress countInfo);
187
+ #endif
188
+ #endif
189
+
190
+
191
+ // VK_NV_cuda_kernel_launch is a preprocessor guard. Do not pass it to API calls.
192
+ #define VK_NV_cuda_kernel_launch 1
193
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCudaModuleNV)
194
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCudaFunctionNV)
195
+ #define VK_NV_CUDA_KERNEL_LAUNCH_SPEC_VERSION 2
196
+ #define VK_NV_CUDA_KERNEL_LAUNCH_EXTENSION_NAME "VK_NV_cuda_kernel_launch"
197
+ typedef struct VkCudaModuleCreateInfoNV {
198
+ VkStructureType sType;
199
+ const void* pNext;
200
+ size_t dataSize;
201
+ const void* pData;
202
+ } VkCudaModuleCreateInfoNV;
203
+
204
+ typedef struct VkCudaFunctionCreateInfoNV {
205
+ VkStructureType sType;
206
+ const void* pNext;
207
+ VkCudaModuleNV module;
208
+ const char* pName;
209
+ } VkCudaFunctionCreateInfoNV;
210
+
211
+ typedef struct VkCudaLaunchInfoNV {
212
+ VkStructureType sType;
213
+ const void* pNext;
214
+ VkCudaFunctionNV function;
215
+ uint32_t gridDimX;
216
+ uint32_t gridDimY;
217
+ uint32_t gridDimZ;
218
+ uint32_t blockDimX;
219
+ uint32_t blockDimY;
220
+ uint32_t blockDimZ;
221
+ uint32_t sharedMemBytes;
222
+ size_t paramCount;
223
+ const void* const * pParams;
224
+ size_t extraCount;
225
+ const void* const * pExtras;
226
+ } VkCudaLaunchInfoNV;
227
+
228
+ typedef struct VkPhysicalDeviceCudaKernelLaunchFeaturesNV {
229
+ VkStructureType sType;
230
+ void* pNext;
231
+ VkBool32 cudaKernelLaunchFeatures;
232
+ } VkPhysicalDeviceCudaKernelLaunchFeaturesNV;
233
+
234
+ typedef struct VkPhysicalDeviceCudaKernelLaunchPropertiesNV {
235
+ VkStructureType sType;
236
+ void* pNext;
237
+ uint32_t computeCapabilityMinor;
238
+ uint32_t computeCapabilityMajor;
239
+ } VkPhysicalDeviceCudaKernelLaunchPropertiesNV;
240
+
241
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateCudaModuleNV)(VkDevice device, const VkCudaModuleCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCudaModuleNV* pModule);
242
+ typedef VkResult (VKAPI_PTR *PFN_vkGetCudaModuleCacheNV)(VkDevice device, VkCudaModuleNV module, size_t* pCacheSize, void* pCacheData);
243
+ typedef VkResult (VKAPI_PTR *PFN_vkCreateCudaFunctionNV)(VkDevice device, const VkCudaFunctionCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCudaFunctionNV* pFunction);
244
+ typedef void (VKAPI_PTR *PFN_vkDestroyCudaModuleNV)(VkDevice device, VkCudaModuleNV module, const VkAllocationCallbacks* pAllocator);
245
+ typedef void (VKAPI_PTR *PFN_vkDestroyCudaFunctionNV)(VkDevice device, VkCudaFunctionNV function, const VkAllocationCallbacks* pAllocator);
246
+ typedef void (VKAPI_PTR *PFN_vkCmdCudaLaunchKernelNV)(VkCommandBuffer commandBuffer, const VkCudaLaunchInfoNV* pLaunchInfo);
151
247
 
152
248
  #ifndef VK_NO_PROTOTYPES
153
- VKAPI_ATTR VkResult VKAPI_CALL
154
- vkCreateExecutionGraphPipelinesAMDX(VkDevice device,
155
- VkPipelineCache pipelineCache,
156
- uint32_t createInfoCount,
157
- const VkExecutionGraphPipelineCreateInfoAMDX* pCreateInfos,
158
- const VkAllocationCallbacks* pAllocator,
159
- VkPipeline* pPipelines);
160
-
161
- VKAPI_ATTR VkResult VKAPI_CALL
162
- vkGetExecutionGraphPipelineScratchSizeAMDX(VkDevice device,
163
- VkPipeline executionGraph,
164
- VkExecutionGraphPipelineScratchSizeAMDX* pSizeInfo);
165
-
166
- VKAPI_ATTR VkResult VKAPI_CALL
167
- vkGetExecutionGraphPipelineNodeIndexAMDX(VkDevice device,
168
- VkPipeline executionGraph,
169
- const VkPipelineShaderStageNodeCreateInfoAMDX* pNodeInfo,
170
- uint32_t* pNodeIndex);
171
-
172
- VKAPI_ATTR void VKAPI_CALL vkCmdInitializeGraphScratchMemoryAMDX(VkCommandBuffer commandBuffer,
173
- VkPipeline executionGraph,
174
- VkDeviceAddress scratch,
175
- VkDeviceSize scratchSize);
176
-
177
- VKAPI_ATTR void VKAPI_CALL vkCmdDispatchGraphAMDX(VkCommandBuffer commandBuffer,
178
- VkDeviceAddress scratch,
179
- VkDeviceSize scratchSize,
180
- const VkDispatchGraphCountInfoAMDX* pCountInfo);
181
-
182
- VKAPI_ATTR void VKAPI_CALL
183
- vkCmdDispatchGraphIndirectAMDX(VkCommandBuffer commandBuffer,
184
- VkDeviceAddress scratch,
185
- VkDeviceSize scratchSize,
186
- const VkDispatchGraphCountInfoAMDX* pCountInfo);
187
-
188
- VKAPI_ATTR void VKAPI_CALL vkCmdDispatchGraphIndirectCountAMDX(VkCommandBuffer commandBuffer,
189
- VkDeviceAddress scratch,
190
- VkDeviceSize scratchSize,
191
- VkDeviceAddress countInfo);
249
+ #ifndef VK_ONLY_EXPORTED_PROTOTYPES
250
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateCudaModuleNV(
251
+ VkDevice device,
252
+ const VkCudaModuleCreateInfoNV* pCreateInfo,
253
+ const VkAllocationCallbacks* pAllocator,
254
+ VkCudaModuleNV* pModule);
255
+ #endif
256
+
257
+ #ifndef VK_ONLY_EXPORTED_PROTOTYPES
258
+ VKAPI_ATTR VkResult VKAPI_CALL vkGetCudaModuleCacheNV(
259
+ VkDevice device,
260
+ VkCudaModuleNV module,
261
+ size_t* pCacheSize,
262
+ void* pCacheData);
263
+ #endif
264
+
265
+ #ifndef VK_ONLY_EXPORTED_PROTOTYPES
266
+ VKAPI_ATTR VkResult VKAPI_CALL vkCreateCudaFunctionNV(
267
+ VkDevice device,
268
+ const VkCudaFunctionCreateInfoNV* pCreateInfo,
269
+ const VkAllocationCallbacks* pAllocator,
270
+ VkCudaFunctionNV* pFunction);
192
271
  #endif
193
272
 
273
+ #ifndef VK_ONLY_EXPORTED_PROTOTYPES
274
+ VKAPI_ATTR void VKAPI_CALL vkDestroyCudaModuleNV(
275
+ VkDevice device,
276
+ VkCudaModuleNV module,
277
+ const VkAllocationCallbacks* pAllocator);
278
+ #endif
279
+
280
+ #ifndef VK_ONLY_EXPORTED_PROTOTYPES
281
+ VKAPI_ATTR void VKAPI_CALL vkDestroyCudaFunctionNV(
282
+ VkDevice device,
283
+ VkCudaFunctionNV function,
284
+ const VkAllocationCallbacks* pAllocator);
285
+ #endif
286
+
287
+ #ifndef VK_ONLY_EXPORTED_PROTOTYPES
288
+ VKAPI_ATTR void VKAPI_CALL vkCmdCudaLaunchKernelNV(
289
+ VkCommandBuffer commandBuffer,
290
+ const VkCudaLaunchInfoNV* pLaunchInfo);
291
+ #endif
292
+ #endif
293
+
294
+
194
295
  // VK_NV_displacement_micromap is a preprocessor guard. Do not pass it to API calls.
195
296
  #define VK_NV_displacement_micromap 1
196
297
  #define VK_NV_DISPLACEMENT_MICROMAP_SPEC_VERSION 2
@@ -203,38 +304,70 @@ typedef enum VkDisplacementMicromapFormatNV {
203
304
  VK_DISPLACEMENT_MICROMAP_FORMAT_MAX_ENUM_NV = 0x7FFFFFFF
204
305
  } VkDisplacementMicromapFormatNV;
205
306
  typedef struct VkPhysicalDeviceDisplacementMicromapFeaturesNV {
206
- VkStructureType sType;
207
- void* pNext;
208
- VkBool32 displacementMicromap;
307
+ VkStructureType sType;
308
+ void* pNext;
309
+ VkBool32 displacementMicromap;
209
310
  } VkPhysicalDeviceDisplacementMicromapFeaturesNV;
210
311
 
211
312
  typedef struct VkPhysicalDeviceDisplacementMicromapPropertiesNV {
212
- VkStructureType sType;
213
- void* pNext;
214
- uint32_t maxDisplacementMicromapSubdivisionLevel;
313
+ VkStructureType sType;
314
+ void* pNext;
315
+ uint32_t maxDisplacementMicromapSubdivisionLevel;
215
316
  } VkPhysicalDeviceDisplacementMicromapPropertiesNV;
216
317
 
217
318
  typedef struct VkAccelerationStructureTrianglesDisplacementMicromapNV {
218
- VkStructureType sType;
219
- void* pNext;
220
- VkFormat displacementBiasAndScaleFormat;
221
- VkFormat displacementVectorFormat;
222
- VkDeviceOrHostAddressConstKHR displacementBiasAndScaleBuffer;
223
- VkDeviceSize displacementBiasAndScaleStride;
224
- VkDeviceOrHostAddressConstKHR displacementVectorBuffer;
225
- VkDeviceSize displacementVectorStride;
226
- VkDeviceOrHostAddressConstKHR displacedMicromapPrimitiveFlags;
227
- VkDeviceSize displacedMicromapPrimitiveFlagsStride;
228
- VkIndexType indexType;
229
- VkDeviceOrHostAddressConstKHR indexBuffer;
230
- VkDeviceSize indexStride;
231
- uint32_t baseTriangle;
232
- uint32_t usageCountsCount;
233
- const VkMicromapUsageEXT* pUsageCounts;
234
- const VkMicromapUsageEXT* const* ppUsageCounts;
235
- VkMicromapEXT micromap;
319
+ VkStructureType sType;
320
+ void* pNext;
321
+ VkFormat displacementBiasAndScaleFormat;
322
+ VkFormat displacementVectorFormat;
323
+ VkDeviceOrHostAddressConstKHR displacementBiasAndScaleBuffer;
324
+ VkDeviceSize displacementBiasAndScaleStride;
325
+ VkDeviceOrHostAddressConstKHR displacementVectorBuffer;
326
+ VkDeviceSize displacementVectorStride;
327
+ VkDeviceOrHostAddressConstKHR displacedMicromapPrimitiveFlags;
328
+ VkDeviceSize displacedMicromapPrimitiveFlagsStride;
329
+ VkIndexType indexType;
330
+ VkDeviceOrHostAddressConstKHR indexBuffer;
331
+ VkDeviceSize indexStride;
332
+ uint32_t baseTriangle;
333
+ uint32_t usageCountsCount;
334
+ const VkMicromapUsageEXT* pUsageCounts;
335
+ const VkMicromapUsageEXT* const* ppUsageCounts;
336
+ VkMicromapEXT micromap;
236
337
  } VkAccelerationStructureTrianglesDisplacementMicromapNV;
237
338
 
339
+
340
+
341
+ // VK_AMDX_dense_geometry_format is a preprocessor guard. Do not pass it to API calls.
342
+ #define VK_AMDX_dense_geometry_format 1
343
+ #define VK_AMDX_DENSE_GEOMETRY_FORMAT_SPEC_VERSION 1
344
+ #define VK_AMDX_DENSE_GEOMETRY_FORMAT_EXTENSION_NAME "VK_AMDX_dense_geometry_format"
345
+ #define VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_ALIGNMENT_AMDX 128U
346
+ #define VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_STRIDE_AMDX 128U
347
+
348
+ typedef enum VkCompressedTriangleFormatAMDX {
349
+ VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_AMDX = 0,
350
+ VK_COMPRESSED_TRIANGLE_FORMAT_MAX_ENUM_AMDX = 0x7FFFFFFF
351
+ } VkCompressedTriangleFormatAMDX;
352
+ typedef struct VkPhysicalDeviceDenseGeometryFormatFeaturesAMDX {
353
+ VkStructureType sType;
354
+ void* pNext;
355
+ VkBool32 denseGeometryFormat;
356
+ } VkPhysicalDeviceDenseGeometryFormatFeaturesAMDX;
357
+
358
+ typedef struct VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX {
359
+ VkStructureType sType;
360
+ const void* pNext;
361
+ VkDeviceOrHostAddressConstKHR compressedData;
362
+ VkDeviceSize dataSize;
363
+ uint32_t numTriangles;
364
+ uint32_t numVertices;
365
+ uint32_t maxPrimitiveIndex;
366
+ uint32_t maxGeometryIndex;
367
+ VkCompressedTriangleFormatAMDX format;
368
+ } VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX;
369
+
370
+
238
371
  #ifdef __cplusplus
239
372
  }
240
373
  #endif