dxvk/src/d3d11/d3d11_util.h

46 lines
1.1 KiB
C
Raw Normal View History

#pragma once
2017-12-15 18:11:10 +00:00
#include "../dxvk/dxvk_device.h"
#include "../dxbc/dxbc_util.h"
#include "d3d11_include.h"
namespace dxvk {
template<typename T>
UINT CompactSparseList(T* pData, UINT Mask) {
uint32_t count = 0;
2021-08-13 17:48:40 +01:00
for (uint32_t id : bit::BitMask(Mask))
pData[count++] = pData[id];
return count;
}
HRESULT DecodeSampleCount(
2017-12-19 15:01:50 +00:00
UINT Count,
VkSampleCountFlagBits* pCount);
VkSamplerAddressMode DecodeAddressMode(
D3D11_TEXTURE_ADDRESS_MODE mode);
2017-12-19 15:01:50 +00:00
VkCompareOp DecodeCompareOp(
D3D11_COMPARISON_FUNC Mode);
VkConservativeRasterizationModeEXT DecodeConservativeRasterizationMode(
D3D11_CONSERVATIVE_RASTERIZATION_MODE Mode);
VkShaderStageFlagBits GetShaderStage(
DxbcProgramType ProgramType);
VkFormatFeatureFlags GetBufferFormatFeatures(
UINT BindFlags);
VkFormatFeatureFlags GetImageFormatFeatures(
UINT BindFlags);
VkFormat GetPackedDepthStencilFormat(
DXGI_FORMAT Format);
}