More work toward 2.1: Implement InputOptions using TexImage.
This commit is contained in:
@ -32,36 +32,36 @@
|
||||
|
||||
|
||||
struct MyMessageHandler : public nv::MessageHandler {
|
||||
MyMessageHandler() {
|
||||
nv::debug::setMessageHandler( this );
|
||||
}
|
||||
~MyMessageHandler() {
|
||||
nv::debug::resetMessageHandler();
|
||||
}
|
||||
MyMessageHandler() {
|
||||
nv::debug::setMessageHandler( this );
|
||||
}
|
||||
~MyMessageHandler() {
|
||||
nv::debug::resetMessageHandler();
|
||||
}
|
||||
|
||||
virtual void log( const char * str, va_list arg ) {
|
||||
va_list val;
|
||||
va_copy(val, arg);
|
||||
vfprintf(stderr, str, arg);
|
||||
va_end(val);
|
||||
}
|
||||
virtual void log( const char * str, va_list arg ) {
|
||||
va_list val;
|
||||
va_copy(val, arg);
|
||||
vfprintf(stderr, str, arg);
|
||||
va_end(val);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
struct MyAssertHandler : public nv::AssertHandler {
|
||||
MyAssertHandler() {
|
||||
nv::debug::setAssertHandler( this );
|
||||
}
|
||||
~MyAssertHandler() {
|
||||
nv::debug::resetAssertHandler();
|
||||
}
|
||||
|
||||
// Handler method, note that func might be NULL!
|
||||
virtual int assertion( const char *exp, const char *file, int line, const char *func ) {
|
||||
fprintf(stderr, "Assertion failed: %s\nIn %s:%d\n", exp, file, line);
|
||||
nv::debug::dumpInfo();
|
||||
exit(1);
|
||||
}
|
||||
MyAssertHandler() {
|
||||
nv::debug::setAssertHandler( this );
|
||||
}
|
||||
~MyAssertHandler() {
|
||||
nv::debug::resetAssertHandler();
|
||||
}
|
||||
|
||||
// Handler method, note that func might be NULL!
|
||||
virtual int assertion( const char *exp, const char *file, int line, const char *func ) {
|
||||
fprintf(stderr, "Assertion failed: %s\nIn %s:%d\n", exp, file, line);
|
||||
nv::debug::dumpInfo();
|
||||
exit(1);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
@ -412,10 +412,10 @@ int main(int argc, char *argv[])
|
||||
inputOptions.setFormat(nvtt::InputFormat_RGBA_32F);
|
||||
inputOptions.setTextureLayout(nvtt::TextureType_2D, image->width(), image->height());
|
||||
|
||||
for (uint i = 0; i < image->componentNum(); i++)
|
||||
/*for (uint i = 0; i < image->componentNum(); i++)
|
||||
{
|
||||
inputOptions.setMipmapChannelData(image->channel(i), i, image->width(), image->height());
|
||||
}
|
||||
}*/
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -450,8 +450,11 @@ int main(int argc, char *argv[])
|
||||
inputOptions.setAlphaMode(nvtt::AlphaMode_None);
|
||||
}
|
||||
|
||||
inputOptions.setRoundMode(nvtt::RoundMode_ToNearestPowerOfTwo);
|
||||
|
||||
// Block compressed textures with mipmaps must be powers of two.
|
||||
//if (!noMipmaps && format != nvtt::Format_RGB)
|
||||
{
|
||||
inputOptions.setRoundMode(nvtt::RoundMode_ToNearestPowerOfTwo);
|
||||
}
|
||||
|
||||
if (normal)
|
||||
{
|
||||
@ -471,11 +474,11 @@ int main(int argc, char *argv[])
|
||||
inputOptions.setMipmapGeneration(false);
|
||||
}
|
||||
|
||||
if (premultiplyAlpha)
|
||||
/*if (premultiplyAlpha)
|
||||
{
|
||||
inputOptions.setPremultiplyAlpha(true);
|
||||
inputOptions.setAlphaMode(nvtt::AlphaMode_Premultiplied);
|
||||
}
|
||||
}*/
|
||||
|
||||
inputOptions.setMipmapFilter(mipmapFilter);
|
||||
|
||||
|
@ -169,14 +169,14 @@ int main(int argc, char *argv[])
|
||||
nv::FloatImage fimage(&image);
|
||||
fimage.toLinear(0, 3, gamma);
|
||||
|
||||
#if 0
|
||||
#if 1
|
||||
nv::AutoPtr<nv::FloatImage> fresult(fimage.resize(*filter, uint(image.width() * scale), uint(image.height() * scale), wrapMode));
|
||||
|
||||
nv::AutoPtr<nv::Image> result(fresult->createImageGammaCorrect(gamma));
|
||||
result->setFormat(nv::Image::Format_ARGB);
|
||||
|
||||
nv::StdOutputStream stream(output);
|
||||
nv::ImageIO::save(output, stream, result.ptr());
|
||||
nv::StdOutputStream stream(output.str());
|
||||
nv::ImageIO::save(output.str(), stream, result.ptr());
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
|
Reference in New Issue
Block a user