|
|
@@ -3367,18 +3367,10 @@ namespace bgfx { namespace d3d11
|
|
|
data = (const char*)m_uniforms[handle.idx];
|
|
|
}
|
|
|
|
|
|
-#define CASE_IMPLEMENT_UNIFORM(_uniform, _dxsuffix, _type) \
|
|
|
- case UniformType::_uniform: \
|
|
|
- case UniformType::_uniform|kUniformFragmentBit: \
|
|
|
- { \
|
|
|
- setShaderUniform(uint8_t(type), loc, data, num); \
|
|
|
- } \
|
|
|
- break;
|
|
|
-
|
|
|
switch ( (uint32_t)type)
|
|
|
{
|
|
|
case UniformType::Mat3:
|
|
|
- case UniformType::Mat3|kUniformFragmentBit: \
|
|
|
+ case UniformType::Mat3|kUniformFragmentBit:
|
|
|
{
|
|
|
float* value = (float*)data;
|
|
|
for (uint32_t ii = 0, count = num/3; ii < count; ++ii, loc += 3*16, value += 9)
|
|
|
@@ -3401,9 +3393,16 @@ namespace bgfx { namespace d3d11
|
|
|
}
|
|
|
break;
|
|
|
|
|
|
- CASE_IMPLEMENT_UNIFORM(Sampler, I, int);
|
|
|
- CASE_IMPLEMENT_UNIFORM(Vec4, F, float);
|
|
|
- CASE_IMPLEMENT_UNIFORM(Mat4, F, float);
|
|
|
+ case UniformType::Sampler:
|
|
|
+ case UniformType::Sampler | kUniformFragmentBit:
|
|
|
+ case UniformType::Vec4:
|
|
|
+ case UniformType::Vec4 | kUniformFragmentBit:
|
|
|
+ case UniformType::Mat4:
|
|
|
+ case UniformType::Mat4 | kUniformFragmentBit:
|
|
|
+ {
|
|
|
+ setShaderUniform(uint8_t(type), loc, data, num);
|
|
|
+ }
|
|
|
+ break;
|
|
|
|
|
|
case UniformType::End:
|
|
|
break;
|
|
|
@@ -3412,7 +3411,6 @@ namespace bgfx { namespace d3d11
|
|
|
BX_TRACE("%4d: INVALID 0x%08x, t %d, l %d, n %d, c %d", _uniformBuffer.getPos(), opcode, type, loc, num, copy);
|
|
|
break;
|
|
|
}
|
|
|
-#undef CASE_IMPLEMENT_UNIFORM
|
|
|
}
|
|
|
}
|
|
|
|