I am able to create a destination output that is larger than the
> input, yet I can't see the extra output pixels

There are a bunch of ways the user can view the oversized bbox (Nuke's term for the ROD)

Simplest way would be to add a Transform node set to "scale: 0.5" or something, and this would pull the pixels from outside the image format into a visible area.

In comps, you would typically not really view the oversized bbox directly, but instead pixels might become visible, say, because a lens distortion pulls pixels "inwards", or a tracker node translates the pixels to the right etc etc


For debugging purposes, there is the "show overscan" option in the viewer which lets you view oversized bboxes up to a certain amount (in the viewer settings there is a default limit of 100px - to avoid accidentally viewing a 100000px wide bbox)

You could also use an expression in the Crop node (with "reformat" option checked) - e.g the following will expand the image format to match the inputs bbox:

set cut_paste_input [stack 0]
version 8.0 v6
push $cut_paste_input
Crop {
box {{"min(input.bbox.x, 0)"} {"min(input.bbox.y, 0)"} {"max(input.bbox.r, input.width)"} {"max(input.bbox.t, input.height)"}}
 reformat true
 crop false
 name Crop1
 selected true
 xpos -1133
 ypos 541
}

> "Use plugin RoD for output size"

You can do this in a NDK plugin at least - instead of specifying the output bbox, you just change the output format.

I think the Documentation/NDK/LayerExtracter.cpp does this:

void LayerExtractor::_validate(bool for_real)
  ...
  customFormat = new Format(256, 256);
  info_.format(*customFormat);
  info_.full_size_format(*customFormat);
  ...
}


On 20/08/16 07:45, Pierre Jasmin wrote:

I set a Region of Definition larger than my input, then I am able to
create a destination output that is larger than the input, yet I can't
*see* the extra output pixels
There does not even seem to be a node to easily union bbox and Format to
strap on (without typing values).

That said,

If we added kOfxImageEffectPropSpatialFormat (or something like that) in
OFX specs, would that be directly mappable to NDK Format? (as in not
much work for Foundry to support).

Below I simply set the ROD to be larger than input, which becomes a bbox
and I do get to render the whole thing but how does the user get to see
these pixels?

Isn't this something that would be useful for a plugin to be able to do?

//----------------------------------------------------------------
//----------------------------------------------------------------
     // ACTION: GetRegionOfDefinition
//----------------------------------------------------------------
     OfxStatus actionGetRegionOfDefinition(OfxImageEffectHandle effect,
OfxPropertySetHandle inArgs, OfxPropertySetHandle outArgs)
     {
         OfxStatus ofxstatus;
         OfxTime time;
         OfxRectD rod;
         OfxRectI rodI;

         OfxImageClipHandle clipHandle = mUtils->getClipHandle(effect,
kClipName_GetColorSrc);
         mUtils->getInputTime(inArgs, &time);

mHost->mEffectHost->clipGetRegionOfDefinition(clipHandle, time, &rod);
         rod.x1-=1000;
         rod.x2+=1000;
         rod.y1-=10;
         rod.y2+=10;
         mHost->mPropHost->propSetDoubleN(outArgs,
kOfxImageEffectPropRegionOfDefinition, 4, &rod.x1);

         return kOfxStatOK;
     }



_______________________________________________
Nuke-dev mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-dev


--
ben dickson
2D TD | [email protected]
rising sun pictures | www.rsp.com.au
_______________________________________________
Nuke-dev mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-dev

Reply via email to