Hello all,

I'm running into an error when using ImageBufAlgo::make_texture to create a
mipmapped .tx file from an ImageBuf, using OIIO 1.4.12.. I've tried to do
my due diligence in looking for previous questions about this, as well as
trying to track it down myself, but so far I've had no luck. I haven't gone
as far as patching and playing around with the OIIO code yet though.

Here's a rough outline of what I'm doing:

ImageSpec srcSpec(w, h, chanCount, TypeDesc::FLOAT);
ImageBuf srcBuffer(srcSpec);
// ...
// Fill in srcBuffer, currently using setpixel,
// but eventually (hopefully) using an iterator
// ...
ImageSpec destSpec(w, h, chanCount, TypeDesc::FLOAT);
// ...or some other BASETYPE
// ...
// Set various "maketx:" attributes
ImageBufAlgo::make_texture(ImageBufAlgo::MakeTxTexture, srcBuffer,
                           filename, destSpec, &std::cout);


When this runs, I get a failed assertion '0 && "ImageBuf wrapping client
buffer not yet supported"'. I've looked through various source files, and
while this is originating in the ImageBuf copy constructor, it looks like
the assertion should only be hit if the original ImageBuf was constructed
with an external buffer pointer. I'm obviously not doing this, and I have
confirmed that my buffer's storage mode is set to LOCALBUFFER, so I'm not
sure what else could be going on.

So my question to you good people is, am I just doing and/or overlooking
something really dumb here? Or does this look like a bug in make_texture?

Thanks for any help or ideas.


-Nathan
_______________________________________________
Oiio-dev mailing list
[email protected]
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to