mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-06 01:50:38 +00:00
Compile fixes
This commit is contained in:
@@ -307,7 +307,7 @@ static T GLSLMin(T x, T y)
|
||||
}
|
||||
|
||||
template <>
|
||||
static float GLSLMax(float x, float y)
|
||||
float GLSLMax(float x, float y)
|
||||
{
|
||||
const bool xnan = RDCISNAN(x);
|
||||
const bool ynan = RDCISNAN(y);
|
||||
@@ -320,7 +320,7 @@ static float GLSLMax(float x, float y)
|
||||
}
|
||||
|
||||
template <>
|
||||
static float GLSLMin(float x, float y)
|
||||
float GLSLMin(float x, float y)
|
||||
{
|
||||
const bool xnan = RDCISNAN(x);
|
||||
const bool ynan = RDCISNAN(y);
|
||||
@@ -333,7 +333,7 @@ static float GLSLMin(float x, float y)
|
||||
}
|
||||
|
||||
template <>
|
||||
static double GLSLMax(double x, double y)
|
||||
double GLSLMax(double x, double y)
|
||||
{
|
||||
const bool xnan = RDCISNAN(x);
|
||||
const bool ynan = RDCISNAN(y);
|
||||
@@ -346,7 +346,7 @@ static double GLSLMax(double x, double y)
|
||||
}
|
||||
|
||||
template <>
|
||||
static double GLSLMin(double x, double y)
|
||||
double GLSLMin(double x, double y)
|
||||
{
|
||||
const bool xnan = RDCISNAN(x);
|
||||
const bool ynan = RDCISNAN(y);
|
||||
@@ -366,7 +366,12 @@ ShaderVariable FMax(ThreadState &state, uint32_t, const rdcarray<Id> ¶ms)
|
||||
ShaderVariable y = state.GetSrc(params[1]);
|
||||
|
||||
for(uint32_t c = 0; c < var.columns; c++)
|
||||
var.value.fv[c] = GLSLMax(var.value.fv[c], y.value.fv[c]);
|
||||
{
|
||||
if(var.type == VarType::Double)
|
||||
var.value.dv[c] = GLSLMax(var.value.dv[c], y.value.dv[c]);
|
||||
else
|
||||
var.value.fv[c] = GLSLMax(var.value.fv[c], y.value.fv[c]);
|
||||
}
|
||||
|
||||
return var;
|
||||
}
|
||||
@@ -405,7 +410,12 @@ ShaderVariable FMin(ThreadState &state, uint32_t, const rdcarray<Id> ¶ms)
|
||||
ShaderVariable y = state.GetSrc(params[1]);
|
||||
|
||||
for(uint32_t c = 0; c < var.columns; c++)
|
||||
var.value.fv[c] = GLSLMin(var.value.fv[c], y.value.fv[c]);
|
||||
{
|
||||
if(var.type == VarType::Double)
|
||||
var.value.dv[c] = GLSLMin(var.value.dv[c], y.value.dv[c]);
|
||||
else
|
||||
var.value.fv[c] = GLSLMin(var.value.fv[c], y.value.fv[c]);
|
||||
}
|
||||
|
||||
return var;
|
||||
}
|
||||
@@ -445,7 +455,12 @@ ShaderVariable FClamp(ThreadState &state, uint32_t, const rdcarray<Id> ¶ms)
|
||||
ShaderVariable maxVal = state.GetSrc(params[2]);
|
||||
|
||||
for(uint32_t c = 0; c < var.columns; c++)
|
||||
var.value.fv[c] = GLSLMin(GLSLMax(var.value.fv[c], minVal.value.fv[c]), maxVal.value.fv[c]);
|
||||
{
|
||||
if(var.type == VarType::Double)
|
||||
var.value.dv[c] = GLSLMin(GLSLMax(var.value.dv[c], minVal.value.dv[c]), maxVal.value.dv[c]);
|
||||
else
|
||||
var.value.fv[c] = GLSLMin(GLSLMax(var.value.fv[c], minVal.value.fv[c]), maxVal.value.fv[c]);
|
||||
}
|
||||
|
||||
return var;
|
||||
}
|
||||
@@ -521,13 +536,26 @@ ShaderVariable SmoothStep(ThreadState &state, uint32_t, const rdcarray<Id> ¶
|
||||
|
||||
for(uint32_t c = 0; c < x.columns; c++)
|
||||
{
|
||||
const float edge0f = edge0.value.fv[c];
|
||||
const float edge1f = edge1.value.fv[c];
|
||||
const float xf = x.value.fv[c];
|
||||
if(x.type == VarType::Double)
|
||||
{
|
||||
const double edge0f = edge0.value.dv[c];
|
||||
const double edge1f = edge1.value.dv[c];
|
||||
const double xf = x.value.dv[c];
|
||||
|
||||
const float t = GLSLMin(GLSLMax((xf - edge0f) / (edge1f - edge0f), 0.0f), 1.0f);
|
||||
const double t = GLSLMin(GLSLMax((xf - edge0f) / (edge1f - edge0f), 0.0), 1.0);
|
||||
|
||||
x.value.fv[c] = t * t * (3 - 2 * t);
|
||||
x.value.dv[c] = t * t * (3 - 2 * t);
|
||||
}
|
||||
else
|
||||
{
|
||||
const float edge0f = edge0.value.fv[c];
|
||||
const float edge1f = edge1.value.fv[c];
|
||||
const float xf = x.value.fv[c];
|
||||
|
||||
const float t = GLSLMin(GLSLMax((xf - edge0f) / (edge1f - edge0f), 0.0f), 1.0f);
|
||||
|
||||
x.value.fv[c] = t * t * (3 - 2 * t);
|
||||
}
|
||||
}
|
||||
|
||||
return x;
|
||||
@@ -925,7 +953,12 @@ ShaderVariable NMax(ThreadState &state, uint32_t, const rdcarray<Id> ¶ms)
|
||||
ShaderVariable y = state.GetSrc(params[1]);
|
||||
|
||||
for(uint32_t c = 0; c < var.columns; c++)
|
||||
var.value.fv[c] = GLSLMax(var.value.fv[c], y.value.fv[c]);
|
||||
{
|
||||
if(var.type == VarType::Double)
|
||||
var.value.dv[c] = GLSLMax(var.value.dv[c], y.value.dv[c]);
|
||||
else
|
||||
var.value.fv[c] = GLSLMax(var.value.fv[c], y.value.fv[c]);
|
||||
}
|
||||
|
||||
return var;
|
||||
}
|
||||
@@ -939,7 +972,12 @@ ShaderVariable NClamp(ThreadState &state, uint32_t, const rdcarray<Id> ¶ms)
|
||||
ShaderVariable maxVal = state.GetSrc(params[2]);
|
||||
|
||||
for(uint32_t c = 0; c < var.columns; c++)
|
||||
var.value.fv[c] = GLSLMin(GLSLMax(var.value.fv[c], minVal.value.fv[c]), maxVal.value.fv[c]);
|
||||
{
|
||||
if(var.type == VarType::Double)
|
||||
var.value.dv[c] = GLSLMin(GLSLMax(var.value.dv[c], minVal.value.dv[c]), maxVal.value.dv[c]);
|
||||
else
|
||||
var.value.fv[c] = GLSLMin(GLSLMax(var.value.fv[c], minVal.value.fv[c]), maxVal.value.fv[c]);
|
||||
}
|
||||
|
||||
return var;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user