3D image renderer parent class More...
Public Member Functions | |
void | knobs (Knob_Callback) override |
int | knob_changed (Knob *k) override |
Op::HandlesMode | doAnyHandles (ViewerContext *ctx) override |
void | build_handles (ViewerContext *) override |
int | minimum_inputs () const override |
int | maximum_inputs () const override |
int | split_input (int) const override |
const OutputContext & | inputContext (int, int, OutputContext &) const override |
bool | test_input (int input, Op *op) const override |
Op * | default_input (int input) const override |
const char * | input_label (int input, char *buffer) const override |
bool | transparency () const |
bool | ztest_enabled () const |
double | zblend_range () |
int | zblend_mode () |
void | detach () override |
void | attach () override |
Public Member Functions inherited from DD::Image::Render | |
virtual void | format_matrix (int sample=0) |
Matrix4 | get_format_matrix (float cx, float cy) |
void | display_knobs (Knob_Callback) |
void | texture_knobs (Knob_Callback) |
void | sampling_knobs (Knob_Callback) |
void | jitter_knobs (Knob_Callback) |
void | render_knobs (Knob_Callback) |
All of the above. | |
unsigned | node_color () const override |
double | overscanX () |
double | overscanY () |
int | projection_mode () const |
int | blend_operation () const |
const Filter * | texture_filter () const |
int | multisampling () const |
float | hitThresholdDistance () const |
virtual int | multisamples () const |
virtual Scene * | scene (int n=0) const |
virtual double | shutter () const |
virtual double | offset () const |
virtual unsigned | samples () const |
void | buildGeoInfoHandle (ViewerContext *ctx, DrawHandleCallbackFunc cb) |
virtual void | probe (const Vector3 ¢er, const VertexContext &vtx, Pixel &out) |
Sample the frame buffer. | |
Public Member Functions inherited from DD::Image::Iop | |
void | fetchPlane (ImagePlane &imagePlane) |
virtual PlanarI * | getPlanarI () |
void | force_validate (bool for_real=true) override |
IopImpl * | pImpl () |
Iop * | iop () override |
Cast to an Iop. This is much cheaper and safer than using dynamic_cast. | |
const Iop * | iop () const override |
~Iop () override | |
virtual bool | isBlackIop () const |
Iop * | input (int n) const |
Iop * | input (int n, int m) const |
Iop & | input0 () const |
Iop & | input1 () const |
Cache * | cache () const |
bool | cached () const |
void | cached (bool b) |
virtual void | in_channels (int, ChannelSet &) const |
ChannelMask | out_channels () const |
int | raw_channels_from () const |
virtual bool | pass_transform () const |
void | request (int x, int y, int r, int t, ChannelMask channels, int count) |
void | request (DD::Image::Box box, ChannelMask channels, int count) |
void | request (ChannelMask channels, int count) |
void | _copyState (Iop *input) |
const Box & | requestedBox () const |
const Box & | unclampedRequestedBox () const |
ChannelMask | requested_channels () const |
ChannelMask | multi_requested_channels () const |
ChannelMask | unclamped_requested_channels () const |
int | requested_count () const |
virtual void | get (int y, int x, int r, ChannelMask, Row &) |
void | at (int x, int y, Pixel &out) |
float | at (int x, int y, Channel) |
ChannelSet | peek (int x, int y, int r, int t, Pixel &out) |
bool | peek (int x, int y, int w, int h, ChannelMask pixelChannels, PixelCallbackI &callback) |
virtual Transform * | getTransform () |
virtual bool | set_texturemap (ViewerContext *, bool gl=true) |
virtual TextureImage | get_texturemap (ViewerContext *ctx) |
virtual void | unset_texturemap (ViewerContext *) |
virtual bool | shade_GL (ViewerContext *, GeoInfo &) |
virtual void | vertex_shader (VertexContext &) |
virtual void | fragment_shader (const VertexContext &, Pixel &out) |
virtual void | displacement_shader (const VertexContext &vtx, VArray &out) |
virtual float | displacement_bound () const |
virtual void | blending_shader (const Pixel &in, Pixel &out) |
virtual void | render_state (GeoInfoRenderState &state) |
virtual void | sample (float cx, float cy, float w, float h, Filter *, Pixel &out) |
void | sample (float cx, float cy, float w, float h, Pixel &out) |
virtual void | sample (const Vector2 ¢er, const Vector2 &dU, const Vector2 &dV, Filter *filter, Pixel &out) |
void | sample (const Vector2 ¢er, const Vector2 &dU, const Vector2 &dV, Pixel &out) |
virtual float | sample_shadowmap (Iop *map, bool map_is_one_over_z, float cx, float cy, float W, float H, Filter *filter, float Pz) |
virtual void | inputsAttached () |
virtual void | gpuEngine_useTextureTransform (bool useTransform) |
GPU support code. More... | |
virtual void | gpuEngine_setupTextureTransform (const Matrix4 &postOpTransform) |
virtual const char * | gpuEngine_decl () const |
virtual const char * | gpuEngine_body () const |
virtual Hash | gpuEngine_shader_hash_at (double time) |
virtual int | gpuEngine_getNumRequiredTexUnits () const |
virtual void | gpuEngine_GL_begin (GPUContext *context) |
virtual void | gpuEngine_GL_end (GPUContext *context) |
virtual Iop * | viewerPassThrough () const |
OpHints | opHints () const override |
Return hints to control when and how this op will be evaluated by the top-down system. | |
virtual void | setExtendedOpProperties (std::shared_ptr< ExtendedOpProperties > extendedOpProperties) |
Sets the pointer to object implementing extended properties. | |
virtual std::shared_ptr< ExtendedOpProperties > | getExtendedOpProperties () const |
Returns the pointer to object implementing extended properties. | |
Public Member Functions inherited from DD::Image::Op | |
PrevalidateResult | preValidate (ViewerContext *ctx=nullptr, PreValidateContext *=nullptr) |
Op * | rootOp () const |
bool | preValidateAborted (int treeStartingVersion, PrevalidateResult &result) const |
const OutputSet & | getOutputs () const |
return all the outputs of this node | |
virtual void | setInputsValid (bool nowValid) |
set whether the input ops are valid (are for the right context) | |
bool | inputsValid () const |
return whether the input ops are valid (are for the right context) | |
virtual bool | can_clone () const |
returns whether or not an op can be cloned in the dag | |
bool | haveHash () const |
return true if the hash() value is meaningful and globally unique | |
bool | varyingOutputHash () const |
void | setVaryingOutputHash (bool varyingHashes) |
Set the varyingOutputHash indicator to a specific state. | |
void | enableVaryingOutputHash () |
Enable the varyingOutputHash indicator. | |
virtual Hash | editState () const |
virtual void | setEditState (const Hash &h) |
virtual std::vector< DD::Image::OutputContext > | getPrevVersionsWanted () const |
virtual const MetaData::Bundle & | _fetchMetaData (const char *keyname) |
const MetaData::Bundle & | fetchMetaData (const char *keyname) |
Node * | node () const |
DD::Image::NodeI * | getNode () const |
void | node (Node *v) |
const char * | nodeName () const |
Return NodeI::name() which is the Node's local name with no parent path. | |
std::string | nodeFullPath (char separator= '.') const |
Hash | nodeTopologyHash () const |
Op * | firstOp () const |
void | firstOp (Op *v) |
Op * | parent () const |
void | parent (Op *lpOp) |
virtual void | pre_write_knobs () |
void | knobStorePrep (const OutputContext &storeContext) |
void | knobStorePost (const OutputContext &storeContext, Hash &hash) |
int | replace_knobs (Knob *afterthis, int n, void(*f)(void *, Knob_Callback), void *, const char *fileExt=nullptr) |
int | add_knobs (void(*f)(void *, Knob_Callback), void *, Knob_Callback) |
void | set_unlicensed () |
Knob * | knob (const char *name) const |
Knob * | knob (int) const |
bool | pushed () const |
bool | panel_visible () const |
bool | node_disabled () const |
bool | node_selected () const |
unsigned | node_gl_color () const |
void * | field (const char *name) |
void * | field (const char *name, int &type) |
void * | set_field (const char *name, const void *source, int size) |
void * | get_field (const char *name, void *dest, int size) |
void | beginHandle (HandleType command, ViewerContext *ctx, EventCallback *cb, int index, float x=0, float y=0, float z=0, ViewerContext::Cursor cursor=ViewerContext::kNoCursor) |
void | endHandle (ViewerContext *ctx) |
virtual int | knob_change_finished (Knob *knob, bool changedByUser=true) |
void | addTime (OpTimer::Category category, long long microsecondsCPU, long long microsecondsWall, bool isTopLevel=true) |
void | getPerformanceInfo (OpTimer::Category category, OpTimer::PerformanceInfo &info) const |
return the amount of CPU time taken by this op | |
virtual bool | inputs_clockwise () const |
whether unconnected inputs on the DAG should be arranged clockwise or anticlockwise (default) | |
virtual std::vector< int > | input_order () const |
virtual int | inputArrows (int nodeInputs) const |
bool | script_command (const char *command, bool py=true, bool eval=true) const |
bool | script_expand (const char *str) const |
HandlesMode | anyHandles (ViewerContext *ctx) |
void | add_draw_handle (ViewerContext *) |
virtual void | draw_handle (ViewerContext *) |
virtual void | add_input_handle (int input, ViewerContext *) |
void | add_op_handle (ViewerContext *ctx) |
void | add_knob_handle (Knob *, ViewerContext *) |
virtual int | getViewableModes () const |
virtual int | optional_input () const |
int | inputs () const |
int | node_inputs () const |
Op * | node_input (int, GenerateType=OUTPUT_OP) const |
Op * | node_input (int, GenerateType, const DD::Image::OutputContext *outputContext) const |
Op * | input_op (int n=0) const |
virtual void | inputs (int n) |
Op * | input (int) const |
int | inputNumber (int input, int offset) const |
Op * | input (int input, int offset) const |
Op * | input0 () const |
return the primary input More... | |
Op * | input1 () const |
return the second input, if it exists More... | |
const std::vector< Op * > & | getInputs () const |
const std::vector< Op * > & | getChildren () const |
virtual void | set_input (int i, Op *op, int input, int offset) |
void | set_input0 (Op *op) |
void | set_input (int i, Op *op) |
void | set_input (int i, Op &op) |
void | set_input (int input, int offset, Op *op) |
const OutputContext & | outputContext () const |
virtual void | setOutputContext (const OutputContext &c) |
virtual void | append (Hash &) |
virtual float | uses_input (int) const |
virtual void | build_splits () |
virtual const OutputContext * | inputUIContext (int n, OutputContext &) const |
const Hash & | hash () const |
virtual bool | frameTransformImplemented () const |
virtual bool | frameTransformDownstream (const OutputContext &context, unsigned int input, float inFrame, float &outFrame) const |
virtual bool | frameTransformUpstream (const OutputContext &context, unsigned int input, float outFrame, float &inFrame) const |
virtual DopeItemFlags::Mask | getDopeItemFlags () const |
virtual bool | shouldHideInDopeSheet (Knob *knob) const |
virtual DD::Image::Knob * | getDopeItemKnob () const |
virtual ViewSet | viewsProduced () const |
virtual ViewSet | viewsWantOn (int i) const |
virtual ViewSet | splitForViews () const |
bool | requested () const |
void | setRequested () |
void | forgetRequestShallow () |
void | forget_request () |
void | forget_request (std::set< Op * > &forgotten) |
virtual const char * | node_shape () const |
DD::Image::Hash | curveHash () const |
bool | opCurrent () const |
virtual const char * | node_help () const =0 |
virtual std::string | input_longlabel (int) const |
void | node_redraw () |
void | print_name (std::ostream &o) const |
NodeContext | nodeContext () const |
std::string | node_name () const |
Returns the same string as printed by print_name(ostream). | |
void | invalidateSameHash () |
bool | invalidate () |
bool | invalidate (const Hash &hash) |
bool | update (const Box *=nullptr) |
void | asapUpdate () |
void | asapUpdate (const Box &box, int direction=0) |
void | validate (bool for_real=true) |
void | update_handles () const |
bool | valid () const |
Returns true if it has been validated - including if there was an error. More... | |
bool | real_valid () const |
Returns true if it has been real-validated - including if there was an error. More... | |
bool | inErrorState () const |
bool | inInvalidState () const |
bool | opened () const |
void | open () |
void | unopen () |
bool | running () const |
void | running (bool v) |
bool | not_closed () const |
void | close () |
void | callCloseAfter (double seconds) |
void | copyState (Op *input) |
bool | cached () const |
void | cached (bool b) |
virtual Executable * | executable () |
void | setKnobsToContext (const OutputContext &, bool force=false) |
void | gotoContext (const OutputContext &, bool update) |
void | progressFraction (double fraction, StatusFlags flags=StatusNone) |
void | progressFraction (int a, int b, StatusFlags flags=StatusNone) |
void | progressMessage (const char *fmt,...) |
void | progressModalMessage (const char *fmt,...) |
void | progressDismiss () |
int | slowness () const |
void | slowness (int newval) |
virtual bool | firstEngineRendersWholeRequest () const |
virtual bool | updateUI (const OutputContext &context) |
const Format & | input_format () const |
const OutputContext & | uiContext () const |
void | error (const char *fmt,...) |
void | warning (const char *fmt,...) |
void | critical (const char *fmt,...) |
void | debug (const char *fmt,...) |
void | abort () const |
Abort all trees the op is in. | |
bool | aborted () const |
True if one of the trees the op is in was aborted; ops should check this while processing and return quickly when true. | |
void | cancel () const |
Cancel all trees the op is in. Make sure you also call abort() to stop processing. | |
bool | cancelled () const |
True if one of the trees the op is in was cancelled (by user interaction) | |
bool | addToTree (OpTree *lpTree) |
Returns true if the op was added to the tree, or false if its reference count increased. | |
bool | removeFromTree (OpTree *lpTree) |
Returns false if the op was removed from the tree, or true if its reference count decreased. | |
bool | isInTree (OpTree *lpTree) const |
Checks if an op is in a particular tree, for debugging purposes. | |
bool | isInAnyTree () const |
Checks if an op is in any tree at all. | |
OpTreeHandler * | getTreeHandler () const |
Returns the treeHandler for a given Op. | |
bool | hasError () const |
bool | opOrChildHasError () const |
const Op * | getErroredOp () const |
void | setPopUpScheme (PopUpScheme lScheme) |
PopUpScheme | getPopUpScheme () const |
bool | arePopUpsEnabled () |
Returns whether a pop-up should be enabled for the next message, modifying internal data when necessary. | |
OpMessageHandler & | getMsgHandler () |
const OpMessageHandler & | getMsgHandler () const |
std::string | getDebugInfo () const |
Returns a string of debug information about the op. For internal use. | |
std::string | getDetailedDebugInfo () const |
bool | tryValidate (bool for_real=true) |
virtual GeoOp * | geoOp () |
Cast to a GeoOp. This is much cheaper and safer than using dynamic_cast. | |
virtual const GeoOp * | geoOp () const |
virtual GeomOp * | geomOp () |
Cast to a GeomOp. This is much cheaper and safer than using dynamic_cast. | |
virtual const GeomOp * | geomOp () const |
virtual ParticleOp * | particleOp () |
Cast to a ParticleOp. This is much cheaper and safer than using dynamic_cast. | |
virtual const ParticleOp * | particleOp () const |
virtual DeepOnlyOp * | deepOnlyOp () |
Cast to a DeepOnlyOp. This is much cheaper and safer than using dynamic_cast. | |
virtual const DeepOnlyOp * | deepOnlyOp () const |
virtual AxisOp * | axisOp () |
Cast to an AxisOp. This is much cheaper and safer than using dynamic_cast. | |
virtual const AxisOp * | axisOp () const |
virtual CameraOp * | cameraOp () |
Cast to an CameraOp. This is much cheaper and safer than using dynamic_cast. | |
virtual const CameraOp * | cameraOp () const |
virtual LightOp * | lightOp () |
Cast to an LightOp. This is much cheaper and safer than using dynamic_cast. | |
virtual const LightOp * | lightOp () const |
virtual std::string | getLibraryName () const |
Return a label and version string to display library version info for the Node. | |
virtual VersionInfo | getLibraryVersion () const |
virtual const char * | Class () const =0 |
const std::string | libraryDisplayName () const |
virtual const char * | displayName () const |
virtual std::string | docsPath () const |
virtual bool | onAction (const ViewerContext *c, const DD::Image::Flags f, void *d) |
Op * | get (const Description *description) |
Public Member Functions inherited from DD::Image::IopInfoOwner | |
const Info & | info () const |
int | x () const |
int | y () const |
int | r () const |
int | t () const |
int | w () const |
int | h () const |
bool | is_constant () const |
int | clampx (int x) const |
int | clampy (int y) const |
const Format & | format () const |
const Format & | full_size_format () const |
int | ydirection () const |
bool | black_outside () const |
ChannelMask | channels () const |
const GeneralInfo & | generalInfo () const override |
const Info2D & | info2D () const override |
int | first_frame () const |
int | last_frame () const |
void | format (const Format &f) |
void | full_size_format (const Format &f) |
Protected Types | |
enum | { kZBlendNone, kZBlendLinear, kZBlendSmooth } |
Protected Member Functions | |
RenderScene (Node *node, bool enable_mip_filter=false) | |
void | _validate (bool) override |
void | _request (int x, int y, int r, int t, ChannelMask, int) override |
void | initialize_span_context (Span &span) |
CameraOp * | render_camera (int sample=0) override |
GeoOp * | render_geo (int sample=0) override |
Matrix4 | camera_matrix (int sample=0) override |
Matrix4 | projection_matrix (int sample=0) override |
Protected Member Functions inherited from DD::Image::Render | |
Render (Node *node, bool enable_mip_filter=false) | |
virtual void | overrideBBox (Box &f) const |
void | engine (int y, int x, int r, ChannelMask, Row &) override |
virtual bool | generate_render_primitives () |
virtual bool | evaluate_lights (Scene *scene) |
virtual void | initialize () |
void | draw_primitives (int y, int x, int r, ChannelMask, Row &, const Row *bg) |
void | _close () override |
Protected Member Functions inherited from DD::Image::Iop | |
Iop (Node *node) | |
void | _invalidate () override |
void | _open () override |
virtual void | doFetchPlane (ImagePlane &imagePlane) |
bool | inUse () const override |
void | copy_info (int input) |
void | copy_info (int input, ChannelMask) |
void | copy_info () |
void | clear_info () |
void | merge_info (int input=0) |
void | merge_info (int input, ChannelMask) |
void | mergeFrameRange (int input) |
void | set_out_channels (ChannelMask m) |
void | set_out_channels (ChannelSetInit m) |
void | set_out_channels (Channel z) |
void | raw_channels_from (int n) |
void | set_out_channels (ChannelMask m, int n) |
Iop * | asIop (Op *op) const |
Transform * | getDefaultTransform () const |
template<class TileType > | |
void | doSample (float cx, float cy, float w, float h, Filter *, Pixel &out) |
template<class TileType > | |
float | do_sample_shadowmap (Iop *map, bool map_is_one_over_z, float cx, float cy, float W, float H, Filter *filter, float Pz) |
Protected Member Functions inherited from DD::Image::Op | |
Op (Node *node) | |
The constructor is protected so only subclasses can create the base class. | |
virtual void | _knobStorePrep (const OutputContext &storeContext) |
The subclass-specific portion of knobStorePrep(). See that method for more info. | |
virtual void | _knobStorePost (const OutputContext &storeContext, Hash &hash) |
The subclass-specific portion of knobStorePost(). See that method for more info. | |
Op * | create (Node *node, const char *name) |
Op * | create (const char *name) |
HandlesMode | anyInputHandles (ViewerContext *) |
return if any of the inputs (recursively) wish to draw handles More... | |
HandlesMode | anyKnobHandles (ViewerContext *) |
return if any of the knobs on this node wish to draw handles More... | |
void | build_input_handles (ViewerContext *) |
void | build_knob_handles (ViewerContext *) |
void | disallowNoTrees () |
Call this to tell the op that it should always have op trees for normal behaviour (for internal use) | |
virtual PrevalidateResult | doPreValidate (ViewerContext *ctx=nullptr, PreValidateContext *=nullptr) |
Protected Attributes | |
bool | uniform_distribution_ |
If true uniform distribuite the scenes over times. | |
int | stochastic_samples_ |
Number of sample for pixel to use in the stocastic reconstruction. | |
bool | output_shader_vectors |
Channel | P_channel [3] |
P(osition) vector to output. | |
Channel | N_channel [3] |
N(ormal) vector to output. | |
Protected Attributes inherited from DD::Image::Render | |
TextureFilter | texture_filter_ |
Default filter to use in texture filtering. | |
int | projection_mode_ |
Point projection mode. | |
int | max_tessellation_ |
Threshold to limit recursive subdivision. | |
int | blend_operation_ |
Default blending operation for textures. | |
int | multisampling_ |
Output sampling modes. | |
int | samples_ |
User set number of samples to render. | |
ShutterControls | shutter_ |
shutter controls | |
double | spatial_jitter_ |
User set jittering of sample in raster. | |
double | temporal_jitter_ |
User set jittering of sample in time. | |
const Intersection * | jitter |
XY jitter array to use - based on total samples. | |
unsigned | input_scenes |
Number of scenes renderer gets from it's input. | |
unsigned | render_scenes |
Number of scenes to render. | |
const Intersection * | multisample_array_ |
Multisampling array to use. | |
double | overscanX_ |
double | overscanY_ |
overscan size of the frame buffer | |
Format | overscanFormat_ |
overscan format | |
int | junk |
Box3 | world_bbox |
Intersected world-space bbox of all scenes. | |
Box | screen_bbox |
Intersected screen-space bbox of all scenes. | |
int | output_motion_vectors |
Whether renderer outputs motion vector channels. | |
Channel | MB_channel [3] |
Motion vector channels to output. | |
bool | generate_primitives |
Threading lock to keep other threads waiting. | |
std::vector< Scene * > | scenes_ |
List of Scenes, one per sample. | |
Protected Attributes inherited from DD::Image::Iop | |
ChannelSet | out_channels_ |
protected so validate() can directly modify it | |
int | raw_channels_from_ |
Protected Attributes inherited from DD::Image::Op | |
bool | _haveHash |
whether the _hash actually has been set by a call to invalidate(Hash) ever. | |
bool | _varyingOutputHash |
whether the hash value will animate over time | |
Hash | _editState |
Op's current edit state, usually the combination of input & knob edit states. | |
Protected Attributes inherited from DD::Image::IopInfoOwner | |
Info | info_ |
Additional Inherited Members | |
Public Types inherited from DD::Image::Render | |
enum | { SINGLE_SAMPLE, MULTISAMPLE_LOW, MULTISAMPLE_MED, MULTISAMPLE_HIGH } |
Public Types inherited from DD::Image::Op | |
enum | HandlesMode { eNoHandles, eHandlesUncooked, eHandlesCooked, eHandlesMax } |
enum | PrevalidateResult { eFinished, eCancelled, eAbandoned } |
This is a tribool return value. Do not extend. | |
enum | HandleType { eNone, eMouseLeftClick, eMouseRightClick, eMouseMove, eMouseDrag, eMouseRelease, eSelectionChanged, eSelectionChangeFinished, eHandleDragTranslate, eHandleDragRotate, eHandleDragScale, eHandleDragPivot, eAllHandles } |
enum | ViewableModes { eViewableMode2D, eViewableMode3D, eViewableMode3D_2DReference } |
enum | GenerateType { OUTPUT_OP, ANY_CONTEXT, INPUT_OP, INPUT_OP_PEEK, EXECUTABLE, EXECUTABLE_SKIP, EXECUTABLE_INPUT, UICONTEXT_ONLY } |
enum | NodeContext { eNodeGraph, eTimeline, eOpGraph } |
enum | StatusFlags { StatusNone, StatusModal, StatusUseCallback } |
enum | PopUpScheme { ePU_Never, ePU_Done, ePU_Once, ePU_Default, ePU_Always } |
Pop-up schemes determine when pop-up messages are displayed for op errors. More... | |
enum | VersionComponents { eMajor, eMinor, ePoint, eRevision } |
Enum to help get the desired version component from the VersionInfo tuple. | |
typedef std::pair< int, DD::Image::Op * > | Output |
Combination of input number and pointer to Op. | |
typedef std::set< Output > | OutputSet |
Set of all outputs from this Op. | |
typedef std::map< Hash, std::vector< unsigned int > > | ItemSelectionList |
typedef bool( | EventCallback) (Op *op, EventContext eventCtx) |
using | VersionInfo = std::tuple< int, int, int, int > |
Contains version components with each index defined by the VersionComponents enum. | |
Public Types inherited from DD::Image::IopInfoOwner | |
typedef IopInfo | Info |
Static Public Member Functions inherited from DD::Image::Render | |
static Matrix4 | get_format_matrix (const Format &format, float cx, float cy) |
static const Intersection * | multisample_array (int n) |
static unsigned int | jitter_array_size (int samples) |
static const Intersection * | jitter_array (int samples) |
Static Public Member Functions inherited from DD::Image::Iop | |
static Iop * | default_input (const OutputContext &) |
static Op * | default_input (const Op *op) |
static Channel | channel (const char *name) |
static const char * | channel_name (Channel c) |
Static Public Member Functions inherited from DD::Image::Op | |
static int | treeVersion () |
static bool | nukeBusy () |
is nuke processing something on a parallel thread? | |
static Op * | create (Node *node, const char *name, Op *p_op) |
static Op * | create (const char *name, Op *p_op) |
static void | resetTimers () |
reset all the performance timers | |
static void | setTimingEnabled (bool enabled) |
turn performance timing on or off | |
static bool | isTimingEnabled () |
return whether performance timing is on or not | |
static const char * | script_result (bool py=false) |
static void | script_unlock () |
static Op * | retrieveOp (const char *node_path, GenerateType generate_op_type, const OutputContext *generate_op_context=nullptr) |
static Op * | retrieveOp (const char *node_path, const Hash &op_hash, int tree_version) |
static void | all_forget_request () |
static void | new_request_pass () |
static double | callPendingClose (double seconds) |
static void | clearPendingClose () |
static Op * | error_op () |
static const char * | error_message () |
static void | clearAbortAndError () |
To be removed. | |
static void | SetDefaultPopUpEnable (bool lEnable) |
This is used by Nuke to indicate when ops using the default pop-up scheme should show pop-ups. Not recommended for customisation. | |
static std::string | getVersionInfoStr (const VersionInfo &versionInfo) |
Helper function to convert a VersionInfo tuple into a string. | |
static const Description * | find_description (const char *name, const Op *op_) |
static int | message_f (char t, const char *,...) |
static int | message_vf (char t, const char *, va_list) |
static void | add_timeout (float t, TimeoutHandler, void *v=nullptr) |
static void | repeat_timeout (float t, TimeoutHandler, void *=nullptr) |
static bool | has_timeout (TimeoutHandler, void *=nullptr) |
static void | remove_timeout (TimeoutHandler, void *=nullptr) |
Public Attributes inherited from DD::Image::Op | |
const MetaData::Bundle * | metaCache |
Hash | metaCacheHash |
Static Public Attributes inherited from DD::Image::Render | |
static const char * | multisampling_table [] |
Output sampling modes: | |
Static Public Attributes inherited from DD::Image::Iop | |
static bool | sPreserveCaches |
Static Public Attributes inherited from DD::Image::Op | |
static unsigned | current_request_pass |
static void(* | node_redraw_cb )(const Op *) |
static void(* | print_name_cb )(std::ostream &, const Op *) |
static void(* | status_callback )(const Op *, float, float, const char *, StatusFlags) |
static const int | kInvalidVersion |
static const VersionInfo | kUnsetVersion |
3D image renderer parent class
|
overrideprotectedvirtual |
Validate the 3D scene renderer. We construct one Scene structure per time sample. The Scene contains all primitives and lights transformed at that moment in time.
Reimplemented from DD::Image::Render.
References DD::Image::Render::_validate(), DD::Image::Scene::ambient, DD::Image::IopInfo::black_outside(), DD::Image::Iop::copy_info(), DD::Image::Box::h(), DD::Image::IopInfoOwner::info(), DD::Image::IopInfoOwner::info_, DD::Image::Op::input(), DD::Image::Iop::input0(), DD::Image::Scene::lights, DD::Image::Mask_All, DD::Image::Render::MB_channel, DD::Image::Box::merge(), DD::Image::Iop::merge_info(), N_channel, DD::Image::Render::output_motion_vectors, P_channel, DD::Image::Render::scenes_, DD::Image::Render::screen_bbox, DD::Image::Box::set(), DD::Image::Iop::set_out_channels(), DD::Image::Op::slowness(), and DD::Image::Box::w().
|
overrideprotectedvirtual |
Request input channels from background and assign output channels.
Reimplemented from DD::Image::Render.
References DD::Image::IopInfoOwner::channels(), DD::Image::Iop::in_channels(), DD::Image::IopInfoOwner::info(), DD::Image::Iop::input0(), DD::Image::Scene::lights, DD::Image::Render::MB_channel, N_channel, DD::Image::Op::node_disabled(), DD::Image::Render::output_motion_vectors, P_channel, DD::Image::Box::r(), DD::Image::Scene::request(), DD::Image::Iop::request(), DD::Image::Render::scenes_, DD::Image::Box::t(), DD::Image::Box::x(), and DD::Image::Box::y().
|
overrideprotectedvirtual |
Returns the camera attached to input 2(if available,) otherwise 0.
Reimplemented from DD::Image::Render.
References DD::Image::CameraOp::default_camera(), DD::Image::Op::input(), DD::Image::Op::inputs(), DD::Image::Render::output_motion_vectors, and DD::Image::Op::validate().
|
overrideprotectedvirtual |
Returns the GeoOp connected to input 1 for
sample.
Implements DD::Image::Render.
References DD::Image::Op::input().
|
overrideprotectedvirtual |
Returns the inverse camera matrix for a particular sample. This supports jittering of the camera's position around the focal_point.
Reimplemented from DD::Image::Render.
References DD::Image::Render::scenes_.
|
overrideprotectedvirtual |
Returns the camera projection matrix for a particular sample. ARRGH! Egg makes this translate from -1..1 rather than pixels... This should be able to use CameraOp::to_format().
Reimplemented from DD::Image::Render.
References DD::Image::IopInfoOwner::info_, DD::Image::Iop::sample(), and DD::Image::Render::scenes_.
|
overridevirtual |
we have to shift the mode to perspective as downstream nodes will make decisions based upon that type.
Reimplemented from DD::Image::Render.
References DD::Image::Op::doAnyHandles(), DD::Image::ViewerContext::transform_mode(), DD::Image::VIEWER_2D, and DD::Image::VIEWER_PERSP.
|
overridevirtual |
Sets 2D viewer to 3D mode to draw any geometry in the input. Adds the camera as something that should be snapped to.
Reimplemented from DD::Image::Render.
References DD::Image::ViewerContext::addCamera(), DD::Image::CameraOp::default_camera(), DD::Image::Op::EXECUTABLE, DD::Image::IopInfoOwner::format(), DD::Image::Render::get_format_matrix(), DD::Image::ValueStuffI::get_value(), DD::Image::Op::hash(), DD::Image::Op::knob(), DD::Image::ViewerContext::modelmatrix, DD::Image::Op::node_input(), DD::Image::Knob::store(), DD::Image::ViewerContext::transform_mode(), DD::Image::Op::uiContext(), DD::Image::VIEWER_2D, and DD::Image::VIEWER_PERSP.
|
overridevirtual |
Return how many op inputs this operator requires for the arrow the user sees numbered n.
Reimplemented from DD::Image::Op.
References DD::Image::Render::output_motion_vectors.
|
overridevirtual |
Changes the time for input m for temporal sampling.
Reimplemented from DD::Image::Op.
References clamp(), DD::Image::Render::output_motion_vectors, DD::Image::Op::outputContext(), DD::Image::p_random(), DD::Image::Render::temporal_jitter_, and uniform_distribution_.
©2024 The Foundry Visionmongers, Ltd. All Rights Reserved. |