networking
This commit is contained in:
@@ -18,7 +18,16 @@ ParameterBlock<TextureBinding> g_textures3 : register(t24); \
|
||||
ParameterBlock<TextureBinding> g_textures4 : register(t25); \
|
||||
ParameterBlock<TextureBinding> g_textures5 : register(t26); \
|
||||
ParameterBlock<TextureBinding> g_textures6 : register(t27); \
|
||||
ParameterBlock<TextureBinding> g_textures7 : register(t28);
|
||||
ParameterBlock<TextureBinding> g_textures7 : register(t28); \
|
||||
float4 SampleTexture(uint32_t binding, float2 uv) \
|
||||
{ \
|
||||
SamplerState sampler = mlGetSampler(); \
|
||||
uint8_t textureArray = 0; \
|
||||
uint8_t textureSamplerArray = (binding >> 16) & 0xFF; \
|
||||
uint8_t textureSampler = (binding >> 8) & 0xFF; \
|
||||
uint8_t textureIndex = 1; \
|
||||
return g_textures0.textures[1].Sample(sampler, uv); \
|
||||
};
|
||||
|
||||
void _mlGetSampler()
|
||||
{
|
||||
@@ -32,16 +41,6 @@ SamplerState mlGetSampler()
|
||||
_mlGetSampler();
|
||||
};
|
||||
|
||||
float4 SampleTexture(uint32_t binding, float2 uv)
|
||||
{
|
||||
SamplerState sampler = mlGetSampler();
|
||||
uint8_t textureArray = 0;
|
||||
uint8_t textureSamplerArray = (binding >> 16) & 0xFF;
|
||||
uint8_t textureSampler = (binding >> 8) & 0xFF;
|
||||
uint8_t textureIndex = 1;
|
||||
return g_textures0.textures[1].Sample(sampler, uv);
|
||||
};
|
||||
|
||||
#define DECLARE_CBUFFER(b) \
|
||||
[[vk::binding(b)]] cbuffer cbuffer_##b : register(t##b)
|
||||
|
||||
@@ -49,16 +48,16 @@ float4 SampleTexture(uint32_t binding, float2 uv)
|
||||
[[vk::push_constant]] \
|
||||
cbuffer cbuffer_constants : register(t29)
|
||||
|
||||
#define FIX_VERTEX_POSITION(g) g = float4(g.x, -g.y, g.z, g.w);
|
||||
|
||||
#elif defined(__SPIRV__)
|
||||
|
||||
#define DECLARE_TEXTURES(b) \
|
||||
[[vk::binding(b)]] \
|
||||
Sampler2D g_textures[];
|
||||
|
||||
float4 SampleTexture(uint32_t binding, float2 uv)
|
||||
{
|
||||
return g_textures[binding].Sample(uv);
|
||||
Sampler2D g_textures[]; \
|
||||
float4 SampleTexture(uint32_t binding, float2 uv) \
|
||||
{ \
|
||||
return g_textures[binding].Sample(uv); \
|
||||
};
|
||||
|
||||
#define DECLARE_CBUFFER(b) \
|
||||
@@ -70,16 +69,21 @@ cbuffer cbuffer_##b
|
||||
[[vk::binding(b)]] \
|
||||
r
|
||||
|
||||
#define DECLARE_CONSTANTS() \
|
||||
#define DECLARE_CONSTANTS()
|
||||
[[vk::push_constant]] \
|
||||
cbuffer cbuffer_constants
|
||||
|
||||
#define FIX_VERTEX_POSITION(x)
|
||||
|
||||
#else
|
||||
#define DECLARE_TEXTURES()
|
||||
float4 SampleTexture(uint32_t binding, float2 uv);
|
||||
#define DECLARE_CBUFFER() cbuffer cbuffer_constats
|
||||
#define DECLARE_DATA() cbuffer cbuffer_constats
|
||||
#define DECLARE_CONSTANTS() cbuffer cbuffer_constats
|
||||
#define DECLARE_CBUFFER() cbuffer cbuffer_constants
|
||||
#define DECLARE_DATA() cbuffer cbuffer_constants
|
||||
#define DECLARE_CONSTANTS() cbuffer cbuffer_constants
|
||||
#define FIX_VERTEX_POSITION(x)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user