Merge changes from The Witness.

This commit is contained in:
castano
2012-07-20 16:19:03 +00:00
parent fea97461c5
commit 3b4fcd0369
36 changed files with 1073 additions and 178 deletions

View File

@ -1582,7 +1582,7 @@ void Surface::toRGBE(int mantissaBits, int exponentBits)
float B = ::clamp(b[i], 0.0f, maxValue);
// Compute max:
float M = max(R, G, B);
float M = max3(R, G, B);
// Preliminary exponent:
int E = max(- exponentBias - 1, floatExponent(M)) + 1 + exponentBias;
@ -1879,7 +1879,7 @@ void Surface::toneMap(ToneMapper tm, float * parameters)
if (tm == ToneMapper_Linear) {
// Clamp preserving the hue.
for (uint i = 0; i < count; i++) {
float m = max(r[i], g[i], b[i]);
float m = max3(r[i], g[i], b[i]);
if (m > 1.0f) {
r[i] *= 1.0f / m;
g[i] *= 1.0f / m;
@ -1907,7 +1907,7 @@ void Surface::toneMap(ToneMapper tm, float * parameters)
// Avoid clamping abrubtly.
// Minimize color difference along most of the color range. [0, alpha)
for (uint i = 0; i < count; i++) {
float m = max(r[i], g[i], b[i]);
float m = max3(r[i], g[i], b[i]);
if (m > 1.0f) {
r[i] *= 1.0f / m;
g[i] *= 1.0f / m;

View File

@ -53,7 +53,7 @@ Vector3 Utils::lerp(const Vector3& a, const Vector3 &b, int i, int denom)
case 3: denom *= 5; i *= 5; // fall through to case 15
case 15: weights = denom15_weights_64; break;
case 7: weights = denom7_weights_64; break;
default: nvAssume(0);
default: nvUnreachable();
}
// no need to round these as this is an exact division
@ -96,7 +96,7 @@ void Utils::clamp(Vector3 &v)
break;
default:
nvAssume (0);
nvUnreachable();
}
}
}

View File

@ -223,7 +223,7 @@ static void write_header(const ComprEndpts endpts[NREGIONS_ONE], const Pattern &
case FIELD_GZ:
case FIELD_BY:
case FIELD_BZ:
default: nvAssume(0);
default: nvUnreachable();
}
}
}
@ -278,7 +278,7 @@ static void read_header(Bits &in, ComprEndpts endpts[NREGIONS_ONE], Pattern &p)
case FIELD_GZ:
case FIELD_BY:
case FIELD_BZ:
default: nvAssume(0);
default: nvUnreachable();
}
}

View File

@ -281,7 +281,7 @@ static void write_header(const ComprEndpts endpts[NREGIONS_TWO], int shapeindex,
case FIELD_BX: out.write(bx >> endbit, len); break;
case FIELD_BY: out.write(by >> endbit, len); break;
case FIELD_BZ: out.write(bz >> endbit, len); break;
default: nvAssume(0);
default: nvUnreachable();
}
}
}
@ -338,7 +338,7 @@ static bool read_header(Bits &in, ComprEndpts endpts[NREGIONS_TWO], int &shapein
case FIELD_BX: bx |= in.read(len) << endbit; break;
case FIELD_BY: by |= in.read(len) << endbit; break;
case FIELD_BZ: bz |= in.read(len) << endbit; break;
default: nvAssume(0);
default: nvUnreachable();
}
}

View File

@ -51,7 +51,7 @@ struct MyMessageHandler : public nv::MessageHandler {
struct MyAssertHandler : public nv::AssertHandler {
MyAssertHandler() {
nv::debug::setAssertHandler( this );
nv::debug::enableSigHandler();
nv::debug::enableSigHandler(/*interactive=*/true);
}
~MyAssertHandler() {
nv::debug::resetAssertHandler();