HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RV_VKEnum.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: RV_VKEnum.h ( RV Library, C++)
7  *
8  * COMMENTS:
9  * Helper functions for use with Vulkan Enum values
10  */
11 
12 #ifndef RV_VKEnum_h
13 #define RV_VKEnum_h
14 
15 #include "RV_API.h"
16 
17 #include <RE/RE_Types.h>
18 #include <RE/RE_TextureTypes.h>
19 
20 #include <VE/VE_VK.h>
21 #include "RV_Type.h"
22 
23 // ~~~~~~
24 // VkFormat Helpers
30  bool is_array,
31  bool is_cube);
32 
33 // convert _SIGNED and _UNSIGNED integer type to _NORM integer type
38 
40  bool normalized = false);
42 
43 // `secondary_aspect` applies to multi-aspect formats, i.e. depth/stencil
45  RV_GPUType &out_type,
46  int &out_vec_size,
47  bool primary_aspect = true);
49 
50 // ~~~~~~
51 // VkDescriporType Helpers
56 
57 // ~~~~~~
58 // VkSampleCount Helpers
60 
61 // ~~~~~~
62 // VkImageViewType
64 
65 // ~~~~~~
66 // VK Image Type helpers
72 
73 // ~~~~~~
74 // VkAccessFlags Helpers
78 
79 // ~~~~~~
80 // VkPipelineBindPoint Helpers
82 
83 // ~~~~~~
84 // VkShaderStageFlags Helpers
87  VkAccessFlags access_type,
88  VkPipelineStageFlags shader_stages);
89 
91 
92 
93 // ~~~~~~
94 // VkPipelineState helpers
101 
103 #endif
104 
VkBlendFactor
Definition: vulkan_core.h:1768
RV_API VkFormat rvGetVkFormatFromGLFormat(int32 gl_internal_enum)
VkSamplerAddressMode
Definition: vulkan_core.h:2032
int int32
Definition: SYS_Types.h:39
VkFlags VkBufferUsageFlags
Definition: vulkan_core.h:2515
VkBorderColor
Definition: vulkan_core.h:2012
RV_API VkCompareOp RVconvertToVkCompareOp(RE_ZFunction func, bool reverse_z)
RV_API VkPipelineStageFlags RVpipelineStageFromAccess(VkAccessFlags access_type, VkPipelineStageFlags shader_stages)
RV_API VkFormat RVconvertToDepthVkFormat(RV_GPUType type, bool stencil)
RV_API VkSampleCountFlagBits RVsampleCount(int samples)
RV_API bool RVisStencilFormat(VkFormat format)
int64 exint
Definition: SYS_Types.h:125
RV_API exint RVgetVkFormatSize(VkFormat)
VkFilter
Definition: vulkan_core.h:2024
RV_API VkPipelineBindPoint RVconvertToVkBindPoint(RV_ShaderType type)
RV_API VkFormat RVgetNormalizedFormat(VkFormat format)
VkFlags VkPipelineStageFlags
Definition: vulkan_core.h:2401
RV_API void RVconvertFromVkFormat(VkFormat format, RV_GPUType &out_type, int &out_vec_size, bool primary_aspect=true)
RV_API bool RVsAccessReadOnly(VkAccessFlags access)
RV_API VkAccessFlags RVaccessFromBufferUsage(VkBufferUsageFlags usage)
RV_TextureMipMode
Definition: RV_Type.h:143
VkFlags VkImageUsageFlags
Definition: vulkan_core.h:2311
RE_ShaderType
Definition: RE_Types.h:235
VkDescriptorType
Definition: vulkan_core.h:2048
RV_API VkStencilOp RVconvertToVKStencilOp(RE_SOperation op)
GLint GLint GLsizei GLint GLenum GLenum type
Definition: glcorearb.h:108
VkBlendOp
Definition: vulkan_core.h:1791
RV_API bool RVisTexBufDescriptor(VkDescriptorType t)
VkCompareOp
Definition: vulkan_core.h:1846
GLuint GLint GLboolean GLint GLenum access
Definition: glcorearb.h:2222
RV_API VkAccessFlags RVaccessFromImageUsage(VkImageUsageFlags usage)
RV_API RE_ZFunction RVconvertFromVkCompareOp(VkCompareOp func, bool reverse_z)
RV_API bool RVisAccelStructDescriptor(VkDescriptorType t)
RV_API VkFormat RVconvertToVkFormat(RV_GPUType type, uint32_t vec_size, bool normalized=false)
GLint GLint GLsizei GLint GLenum format
Definition: glcorearb.h:108
#define RV_API
Definition: RV_API.h:10
RV_TextureWrap
Definition: RV_Type.h:150
RE_BlendEquation
Definition: RE_Types.h:539
RE_TextureBorder
VkShaderStageFlagBits
Definition: vulkan_core.h:2594
RE_ZFunction
Definition: RE_Types.h:478
GLint GLenum GLboolean normalized
Definition: glcorearb.h:872
RV_TextureFilter
Definition: RV_Type.h:136
VkImageType
Definition: vulkan_core.h:1699
GLdouble t
Definition: glad.h:2397
GLsizei samples
Definition: glcorearb.h:1298
RV_ShaderType
Definition: RV_Type.h:418
RV_API bool RVisDepthFormat(VkFormat format)
RV_API VkFilter RVConvertToVkFilter(RV_TextureFilter t)
RV_API bool RVisColorFormat(VkFormat format)
GLsizeiptr const void GLenum usage
Definition: glcorearb.h:664
GLenum func
Definition: glcorearb.h:783
RV_API RV_ShaderType RVgetShaderType(VkShaderStageFlagBits stage)
VkPipelineBindPoint
Definition: vulkan_core.h:2089
VkFlags VkAccessFlags
Definition: vulkan_core.h:2155
VkSampleCountFlagBits
Definition: vulkan_core.h:2263
RV_API VkSamplerAddressMode RVConvertToVKWrap(RV_TextureWrap t)
RV_GPUType
Definition: RV_Type.h:40
VkSamplerMipmapMode
Definition: vulkan_core.h:2042
RV_API bool RVisImageDescriptor(VkDescriptorType t)
RE_SOperation
Definition: RE_Types.h:502
RV_API bool RVhasNormalizedFormat(VkFormat format)
RV_API bool RVisIntFormat(VkFormat format)
RE_BlendSourceFactor
Definition: RE_Types.h:514
VkFormat
Definition: vulkan_core.h:1386
RV_API bool RVisBufferDescriptor(VkDescriptorType t)
RV_API VkSamplerMipmapMode RVConvertToVkMipMode(RV_TextureMipMode t)
RV_API VkBlendFactor RVconvertToVkBlendFactor(RE_BlendSourceFactor fact)
VkImageViewType
Definition: vulkan_core.h:1757
RV_API bool RVisNormalizedFormat(VkFormat format)
GLint GLfloat GLint stencil
Definition: glcorearb.h:1278
RV_API VkShaderStageFlagBits RVconvertToPipelineStage(RE_ShaderType stage)
VkStencilOp
Definition: vulkan_core.h:1980
RV_ImageDim
Definition: RV_Type.h:120
RV_API VkBorderColor RVConvertToVkBorder(UT_Vector4F t)
RV_API VkImageViewType RVgetImageViewType(VkImageType type, bool is_array, bool is_cube)
RE_SFunction
Definition: RE_Types.h:490
RV_API VkBlendOp RVconvertToVkBlendOp(RE_BlendEquation op)
RV_API RV_ImageDim RVConvertFromImageViewType(VkImageViewType t)
RE_BlendDestFactor
Definition: RE_Types.h:527