LightOp defines a 3D light. More...
#include <LightOp.h>
Public Types | |
enum | { eNoFalloff , eLinearFalloff , eQuadraticFalloff , eCubicFalloff } |
enum | LightType { ePointLight , eDirectionalLight , eSpotLight , eOtherLight } |
enum | ShadowMode { eSolidShadow , eTransparentShadow , eSemiTransparentShadow } |
Public Types inherited from DD::Image::CameraOp | |
typedef void() | LensFunc(Scene *, CameraOp *, MatrixArray *transforms, const VArray &v, Vector4 &out, void *data) |
typedef void() | LensNFunc(Scene *, CameraOp *, MatrixArray *transforms, VArray *vert_array, int n, void *data) |
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::MaterialOpI | |
enum | { INPUT_TYPE_NONE , INPUT_TYPE_OP , INPUT_TYPE_MATERIALOP , INPUT_TYPE_IOP , INPUT_TYPE_AXISOP , INPUT_TYPE_CAMERAOP , INPUT_TYPE_LIGHTOP } |
enum | { OUTPUT_TYPE_NONE , OUTPUT_TYPE_COSHADER , OUTPUT_TYPE_SURFACESHADER , OUTPUT_TYPE_LIGHTSHADER , OUTPUT_TYPE_VOLUMESHADER } |
Public Member Functions | |
virtual LightMaterialOpI * | asLightMaterialOp () |
Return this LightOp cast to the LightMaterialOpI interface, if it supports translation. | |
LightOp (Node *node, GeomOpEngine::Builder engine_ctor) | |
LightOp (Node *node) | |
Backwards-compatible ctor. | |
const LightOp * | lightOp () const override |
Cast to a LightOp. This is much cheaper and safer than using dynamic_cast. | |
LightOp * | lightOp () override |
int | samples () const |
void | set_samples (int n) |
float | sample_width () const |
void | set_sample_width (float width) |
const Pixel & | color () const |
void | color (const Pixel &v) |
float | intensity () const |
void | set_intensity (float v) |
bool | falloff () const |
void | set_falloff (bool b) |
int | falloffType () const |
void | set_falloffType (int b) |
bool | cast_shadows () const |
void | set_cast_shadows (bool b) |
int | shadows_mode () const |
float | alpha_threshold () const |
TextureFilter * | shadow_filter () |
float | depthmap_bias () const |
void | set_depthmap_bias (float v) |
float | shadow_jitter_scale () const |
void | set_shadow_jitter_scale (float v) |
int | depthmap_width () const |
void | set_depthmap_width (int n) |
void | setShadowMaskChannel (Channel &channel) |
Channel | getShadowMaskChannel () const |
virtual bool | is_delta_light () const |
virtual double | hfov () const |
virtual double | vfov () const |
virtual double | aspect () const |
virtual int | lightType () const |
void | _validate (bool for_real) override |
virtual void | request (ChannelMask, int count) |
void | knobs (Knob_Callback) override |
int | knob_changed (Knob *k) override |
void | color_knobs (Knob_Callback) |
void | attenuation_knobs (Knob_Callback) |
void | shadow_knobs (Knob_Callback) |
unsigned | node_color () const override |
void | build_handles (ViewerContext *) override |
void | draw_handle (ViewerContext *) override |
virtual void | shade_GL (ViewerContext *, int light_num) |
mFnDeprecatedInNuke14 ("Class() has been deprecated, implement on subclass plugin instead.") const char *Class() const override | |
mFnDeprecatedInNuke14 ("node_help() has been deprecated, implement on subclass plugin instead.") const char *node_help() const override | |
mFnDeprecatedInNuke14 ("displayName() has been deprecated, implement on subclass plugin instead.") const char *displayName() const override | |
mFnDeprecatedInNuke14 ("get_L_vector() has been deprecated.") virtual void get_L_vector(LightContext <x | |
mFnDeprecatedInNuke14 ("get_color() has been deprecated.") virtual void get_color(LightContext <x | |
mFnDeprecatedInNuke14 ("get_shadowing() has been deprecated.") virtual float get_shadowing(const LightContext <x | |
Public Member Functions inherited from DD::Image::CameraOp | |
CameraOp (Node *node, GeomOpEngine::Builder engine_ctor) | |
CameraOp (Node *node) | |
Backwards-compatible ctor. | |
const CameraOp * | cameraOp () const override |
Cast to a CameraOp. This is much cheaper and safer than using dynamic_cast. | |
CameraOp * | cameraOp () override |
OpHints | opHints () const override |
Return hints to control when and how this op will be evaluated by the top-down system. | |
unsigned | node_color () const override |
void | _validate (bool for_real) override |
void | knobs (Knob_Callback) override |
void | addExtraFrontPanelKnobs (Knob_Callback f) override |
void | addDisplayOptionsKnobs (Knob_Callback f) override |
Adds the frustum visualization controls. | |
virtual void | addProjectionKnobs (Knob_Callback) |
Adds the default projection controls. | |
virtual void | addShutterKnobs (Knob_Callback) |
Adds the default shutter controls. | |
virtual void | addLensKnobs (Knob_Callback) |
Adds the default lens controls. | |
void | setHorizontalFov (double angle_in_degrees) |
double | horizontalAperture () const |
void | setHorizontalAperture (double w) |
double | verticalAperture () const |
void | setVerticalAperture (double h) |
double | focalLength () const |
void | setFocalLength (double f) |
double | fStop () const |
void | setfStop (double f) |
double | nearPlaneDistance () const |
void | setNearPlaneDistance (double n) |
double | farPlaneDistance () const |
void | setFarPlaneDistance (double f) |
double | focusDistance () const |
void | setFocusDistance (double f) |
const fdk::Vec2f & | windowTranslate () const |
const fdk::Vec2f & | windowScale () const |
double | windowRotateZ () const |
LensProjection | projectionMode () const |
void | setProjectionMode (LensProjection mode) |
const fdk::Mat4d & | projectionMatrix () const |
virtual fdk::Mat4d | projectionModeMatrix (LensProjection mode) const |
virtual fdk::Mat4d | projectionModeMatrixAt (LensProjection mode, const OutputContext &context) const |
Same as projectionMatrix() except it evaluates the matrix at an arbitrary OutputContext. | |
virtual bool | isLinearProjection (LensProjection mode) const |
double | lens_distort_a () const |
double | lens_distort_b () const |
double | lens_distort_c () const |
double | lens_distort_D () const |
double | lens_distortion () const |
double | lens_power () const |
bool | lens_distort_enabled () const |
virtual LensProjectionFunc * | lensProjectionFunction (LensProjection mode, const Format *format, CameraLensContext &context) const |
int | importScenePrim (const usg::StageRef &stage, const std::string &prim_path) override |
HandlesMode | doAnyHandles (ViewerContext *ctx) override |
void | build_handles (ViewerContext *) override |
void | draw_handle (ViewerContext *) override |
Draws a lovely camera, I think it is a Mitchell. | |
virtual void | drawCameraIcon (bool solid, bool dashed_lines=false) |
Draw the camera's frustum outline solid or wireframe, dashed if 'dashed_lines'=true. | |
void | drawNodeName (const char *subcam_name="") |
Draw the node name at position 0,0,0 which will be the local center. | |
void | drawNodeName (const fdk::Vec3d &P, const char *subcam_name="") |
Draw the node name at an xyz position P relative to the local center. | |
void | drawAperture (const fdk::Vec3d &P, bool dashed_lines=false) |
Draw the aperture rectangle in millimeters, centered on xyz position P. | |
void | drawSolidFrustum (const fdk::Vec3d &near_corner, const fdk::Vec3d &far_corner) |
Draw the camera's frustum. | |
void | drawWireFrustum (const fdk::Vec3d &near_corner, const fdk::Vec3d &far_corner, bool dashed_lines=false) |
Draw the camera's frustum outline, dashed if 'dashed_lines'=true. | |
enum | mFnDeprecatedInNuke14 ("Enumeration deprecated, use enum class LensProjection instead.") |
mFnDeprecatedInNuke14 ("Class() has been deprecated, implement on subclass plugin instead.") const char *Class() const override | |
mFnDeprecatedInNuke14 ("node_help() has been deprecated, implement on subclass plugin instead.") const char *node_help() const override | |
mFnDeprecatedInNuke14 ("projection_knobs() has been deprecated, use addProjectionKnobs() instead.") virtual void projection_knobs(Knob_Callback f) | |
mFnDeprecatedInNuke14 ("lens_knobs() has been deprecated, use addDistortionKnobs() instead.") virtual void lens_knobs(Knob_Callback f) | |
mFnDeprecatedInNuke14 ("projection() has been deprecated, use projectionMatrix() instead") const Matrix4 &projection() const | |
mFnDeprecatedInNuke14 ("hfov(double) has been deprecated, use setHorizontalFov() instead") void hfov(double v) | |
mFnDeprecatedInNuke14 ("film_width() has been deprecated, use horizontalAperture() instead") double film_width() const | |
mFnDeprecatedInNuke14 ("film_height() has been deprecated, use verticalAperture() instead") double film_height() const | |
mFnDeprecatedInNuke14 ("focal_length() has been deprecated, use focalLength() instead") double focal_length() const | |
mFnDeprecatedInNuke14 ("Near() has been deprecated, use nearPlaneDistance() instead") double Near() const | |
mFnDeprecatedInNuke14 ("Far() has been deprecated, use farPlaneDistance() instead") double Far() const | |
mFnDeprecatedInNuke14 ("focal_point() has been deprecated, use focusDistance() instead") double focal_point() const | |
mFnDeprecatedInNuke14 ("fstop() has been deprecated, use fStop() instead") double fstop() const | |
mFnDeprecatedInNuke14 ("film_width(double) has been deprecated, use setHorizontalAperture() instead") void film_width(double v) | |
mFnDeprecatedInNuke14 ("film_height(double) has been deprecated, use setVerticalAperture() instead") void film_height(double v) | |
mFnDeprecatedInNuke14 ("focal_length(double) has been deprecated, use setFocalLength() instead") void focal_length(double v) | |
mFnDeprecatedInNuke14 ("Near(double) has been deprecated, use setNearPlaneDistance() instead") void Near(double v) | |
mFnDeprecatedInNuke14 ("Far(double) has been deprecated, use setFarPlaneDistance() instead") void Far(double v) | |
mFnDeprecatedInNuke14 ("focal_point(double) has been deprecated, use setFocusDistance() instead") void focal_point(double v) | |
mFnDeprecatedInNuke14 ("fstop(double) has been deprecated, use setfStop() instead") void fstop(double v) | |
mFnDeprecatedInNuke14 ("win_translate() has been deprecated, use windowTranslate() instead") const Vector2 &win_translate() const | |
mFnDeprecatedInNuke14 ("win_scale() has been deprecated, use windowScale() instead") const Vector2 &win_scale() const | |
mFnDeprecatedInNuke14 ("win_roll() has been deprecated, use windowRotateZ() instead") double win_roll() const | |
mFnDeprecatedInNuke14 ("projection_mode() has been deprecated, use projectionMode() instead") int projection_mode() const | |
mFnDeprecatedInNuke14 ("projection_mode(int) has been deprecated, use setProjectionMode() instead") void projection_mode(int i) | |
mFnDeprecatedInNuke14 ("projection_is_linear(int) has been deprecated, use isProjectionModeLinear(LensProjection) instead") virtual bool projection_is_linear(int mode) const | |
mFnDeprecatedInNuke14 ("projection(int) has been deprecated, use projectionModeMatrix(LensProjection) instead") virtual Matrix4 projection(int mode) const | |
mFnDeprecatedInNuke14 ("projectionAt(OutputContext) has been deprecated, use projectionModeMatrixAt(LensProjection, OutputContext) instead") virtual Matrix4 projectionAt(const OutputContext &) | |
mFnDeprecatedInNuke14 ("lens_function(int mode) has been deprecated.") virtual LensFunc *lens_function(int mode) const | |
mFnDeprecatedInNuke14 ("lensNfunction(int mode) has been deprecated.") virtual LensNFunc *lensNfunction(int mode) const | |
mFnDeprecatedInNuke14 ("to_format has been deprecated, use toFormat instead.") static void to_format(Matrix4 & | |
const Format * | mFnDeprecatedInNuke14 ("from_format has been deprecated, use fromFormat instead.") static void from_format(Matrix4 & |
Public Member Functions inherited from DD::Image::AxisOp | |
AxisOp (Node *node, GeomOpEngine::Builder engine_ctor, int defaultLookAtAxis=LookAt::kAxisZPlus) | |
AxisOp (Node *node, int defaultLookAtAxis=LookAt::kAxisZPlus) | |
Backwards-compatible ctor. | |
const AxisOp * | axisOp () const override |
Cast this Op to an AxisOp. This is much cheaper and safer than using dynamic_cast. | |
AxisOp * | axisOp () override |
AxisOp * | parentInputOp () const |
Convenience that casts parent input 0 to an AxisOp. | |
GeomOp * | sceneInputOp () const |
Convenience that casts input sceneImporterInput() to a GeomOp. | |
int32_t | parentInput () const |
Return the node input to use for the parent axis source. Always defaults to input 0. | |
virtual int32_t | sceneImporterInput () const |
Return the node input to use for the scene importer. Default returns optional_input(). | |
const char * | node_shape () const override |
Draw a circular node shape. | |
unsigned | node_color () const override |
int | minimum_inputs () const override |
Default is 2: axis and scene(optional) | |
int | maximum_inputs () const override |
Default is 2: axis and scene(optional) | |
int | optional_input () const override |
Optional input index is the scene-importer input. This returns (maximum_inputs()-1). | |
bool | test_input (int node_input, Op *op) const override |
AxisOp and null works on 0, and GeomOp or null on input 1. | |
Op * | default_input (int node_input) const override |
Returns null for all inputs. Override this so Op::test_input() doesn't produce warnings. | |
const char * | input_label (int node_input, char *) const override |
mFnDeprecatedInNuke14 ("isLegacyAxisOp() has been deprecated, port AxisOp sublass to new Nuke 14 api.") bool isLegacyAxisOp() const | |
const std::string & | primName () const |
Return the name of the prim created by this node. Stored in AxisEngine. | |
const usg::Path & | primFullPath () const |
Return the full path of this prim and all its parents. Stored in AxisEngine. | |
int | updateScenePrim (bool force=false) |
virtual int | importScenePrim (const usg::StageRef &stage, const std::string &prim_path) |
template<typename T > | |
size_t | getAttribValuesTimeWarped (const usg::Attribute &attr, double attr_fps, fdk::TimeValueList ×, std::vector< T > &values) const |
template<typename T > | |
bool | copyAttribToKnobTimeWarped (const usg::Attribute &attr, double attr_fps, Knob *knob, bool force_keys, int32_t channel_start_offset, int32_t view) const |
fdk::TimeValueList | getOutputSampleTimes (const fdk::TimeValueList &input_times, double input_fps=0.0) const |
usg::StageRef | getStage () override |
void | knobs (Knob_Callback f) override |
void | createAxisOpKnobs (Knob_Callback f, const std::string &filters="") |
create the Axis Op Knobs and set a custom filter to use on the popup | |
void | setOutputContext (const OutputContext &context) override |
Called by Nuke immediately AFTER Op::knobs(). We use this to update the importer values. | |
int | knob_changed (Knob *k) override |
void | appendGeomState (DD::Image::Hash &op_hash) override |
Adds the node name to the node hash for invalidation on changes. | |
virtual void | addDisplayOptionsKnobs (Knob_Callback f) |
Adds the OpenGL display option controls. | |
virtual void | addFileImportKnobs (Knob_Callback f) |
Add the file path and import enable knobs. | |
virtual void | addCreateOptionsKnobs (Knob_Callback f, const std::string &filters="") |
Adds the create/import, prim path, etc knobs. | |
virtual void | addScenePrimImporterKnobs (Knob_Callback f, bool group_open, bool add_time_options, bool add_xform_options) |
virtual void | addLocalParentingKnobs (Knob_Callback f, bool add_sync_options=true) |
virtual void | addLocalXformKnobs (Knob_Callback f, bool add_sync_options=true) |
virtual void | addTransformKnobs (Knob_Callback f, bool add_sync_options=true) |
Axis_KnobI * | getAxis () |
Return internal 'transform' Axis_Knob for set/get internal transformation. | |
virtual void | addExtraFrontPanelKnobs (Knob_Callback f) |
Adds addl front-panel knobs. Called after addTransformKnobs(). Base class adds nothing. | |
void | enableAxisKnobs (bool on) |
void | enableKnobs (const std::vector< std::string > &knobNames, bool on) |
virtual void | enableScenePrimImporterKnobs (bool scene_import_enabled) |
Enable/disable knobs filled in by the scene importer. | |
virtual void | enableScenePrimImporterExtraKnobs (bool scene_import_enabled) |
virtual void | enableXformExtractKnobs (bool xform_extract_enabled) |
void | _validate (bool for_real) override |
const fdk::Mat4d & | inputParentTransform () const |
const fdk::Mat4d & | localParentTransform () const |
Result of the local-parent TRS knobs, if enabled. Calculated in _validate(). | |
const fdk::Mat4d & | localAxisTransform () const |
Result of the local-axis TRS Axis_Knob (without lookat rotations.) Calculated in knobs(). | |
const fdk::Mat4d & | parentTransform () const |
Parent transform containing the input-parent and local-parent. Calculated in _validate(). | |
const fdk::Mat4d & | localTransform () const |
Local object transform containing the local-axis TRS Axis_Knob with lookat rotations. Calculated in _validate(). | |
const fdk::Mat4d & | worldTransform () const |
World transform containing the input-parent, local-parent, local-axis, and lookat. Calculated in _validate(). | |
const fdk::Mat4d & | invWorldTransform () |
virtual fdk::Mat4d | worldTransformAt (const OutputContext &context) const |
void | setWorldTransform (const fdk::Mat4d &) |
int | display3d () const |
int | display3d () |
void | setDisplay3d (int mode) |
bool | selectable () const override |
void | setSelectable (bool v) |
bool | editable () const |
void | setEditable (bool v) |
virtual bool | isGuiInteractive (Axis_KnobI::Transformation knob) const |
Return true if a particular knob transformation is modifiable by user interaction in gui. | |
HandlesMode | doAnyHandles (ViewerContext *) override |
void | build_handles (ViewerContext *) override |
void | draw_handle (ViewerContext *) override |
mFnDeprecatedInNuke14 ("Class() has been deprecated, implement on subclass plugin instead.") const char *Class() const override | |
mFnDeprecatedInNuke14 ("node_help() has been deprecated, implement on subclass plugin instead.") const char *node_help() const override | |
mFnDeprecatedInNuke14 ("selectable(bool mode) has been deprecated, use setSelectable() instead.") void selectable(bool v) | |
mFnDeprecatedInNuke14 ("display3d(int mode) has been deprecated, use setDisplay3d() instead.") void display3d(int mode) | |
mFnDeprecatedInNuke14 ("input0() has been deprecated, use parentInput() instead.") AxisOp *input0() const | |
mFnDeprecatedInNuke14 ("lookAtEnabled() has been deprecated") virtual bool lookAtEnabled() const | |
mFnDeprecatedInNuke14 ("lookat_input() has been deprecated") Op *lookat_input() const override | |
mFnDeprecatedInNuke14 ("matrix(const Matrix4&) has been deprecated, use setWorldTransform() instead.") void matrix(const Matrix4 &) | |
mFnDeprecatedInNuke14 ("local() has been deprecated, use localTransform() instead.") const Matrix4 &local() const | |
mFnDeprecatedInNuke14 ("matrix() has been deprecated, use worldTransform() instead.") const Matrix4 &matrix() const | |
mFnDeprecatedInNuke14 ("imatrix() has been deprecated, use invWorldTransform() instead.") const Matrix4 &imatrix() | |
mFnDeprecatedInNuke14 ("matrixAt() has been deprecated, use worldTransformAt() instead.") virtual void matrixAt(const OutputContext & | |
Public Member Functions inherited from DD::Image::GeomOp | |
const GeneralInfo & | generalInfo () const override |
const GeomOp * | geomOp () const override |
Cast to a GeomOp. This is much cheaper and safer than using dynamic_cast. | |
GeomOp * | geomOp () override |
GeomOpEngine * | engineNode () const |
const char * | node_shape () const override |
Draw a round sided box. | |
unsigned | node_color () const override |
int | minimum_inputs () const override |
Minimum number of Node inputs for this class - GeomOp base class has only one input. | |
int | maximum_inputs () const override |
Maximum number of Node inputs for this class. | |
Op * | default_input (int node_input) const override |
Return a default NullGeomOp op for Node input0. | |
bool | test_input (int node_input, Op *op) const override |
Allows only GeomOp inputs by default. | |
virtual void | AppendKnobToTarget (const Knob_Closure &f, const usg::Token &target_id) |
virtual void | AppendKnobToTarget (const char *knob_name, const usg::Token &target_id) |
void | KnobDefinesGeometry (const Knob_Closure &f) |
void | KnobModifiesAttribValues (const Knob_Closure &f) |
void | KnobEditsLayer (const Knob_Closure &f) |
void | KnobEditStage (const Knob_Closure &f) |
template<typename T > | |
T | getKnobValue (const char *knob_name, const OutputContext &context, const T &default_value) const |
template<typename T > | |
bool | setKnobValue (const char *knob_name, const T &value, double time, int32_t element_offset=0, int32_t view=-1) |
template<typename T > | |
bool | setKnobValues (const char *knob_name, bool clear_keys, const std::vector< T > &values, const std::vector< double > ×, int32_t element_offset=0, int32_t view=-1) |
const OutputContext & | inputContext (int node_input, int offset, OutputContext &scratch_ctx) const override |
const OutputContext * | inputUIContext (int node_input, OutputContext &scratch_ctx) const override |
GeomOp * | input (int op_input) const |
GeomOp * | input0 () const |
GeomOp * | input1 () const |
virtual bool | selectable () const |
virtual bool | selection3DChanged (ViewerContext *ctx) |
virtual bool | selection3DCleared () |
virtual bool | selection3DMouseDown (ViewerContext *ctx) |
virtual bool | selection3DMouseUp (ViewerContext *ctx) |
virtual bool | selection3DMouseDrag (ViewerContext *ctx) |
void | build_handles (ViewerContext *ctx) override |
virtual void | buildXformHandles (ViewerContext *ctx, const fdk::Mat4d &localMatrix) |
virtual usg::StageRef | getStage () |
virtual usg::StageRef | getStageFromInput (int nodeInput) |
const usg::GeomState & | inputVersions () const |
const usg::GeomState & | localVersions () const |
const usg::GeomState & | outputVersions () const |
const usg::GeomState & | inputGeomState () const |
const usg::GeomState & | localGeomState () const |
const usg::GeomState & | outputGeomState () const |
void | resetGeomState () |
void | buildGeomState (DD::Image::Hash &op_hash) |
void | appendToTarget (const usg::Token &target_id, const fdk::Hash &hash, const fdk::Hash &version, bool is_animating_source=false) |
void | appendToTarget (const usg::Token &target_id, const Hash &hash, const Hash &version, bool is_animating_source=false) |
void | appendToTarget (const usg::Token &target_id, Op *op) |
Variant that appends op->hash() and uses op->varyingOutputHash() for 'is hash animating' state. | |
void | appendToDefineGeometryTarget (const fdk::Hash &hash, const fdk::Hash &version, bool is_animating_source=false) |
void | appendToDefineGeometryTarget (const Hash &hash, const Hash &version, bool is_animating_source=false) |
void | appendToDefineGeometryTarget (Op *op) |
void | appendToModifyValuesTarget (const fdk::Hash &hash, const fdk::Hash &version, bool is_animating_source=false) |
void | appendToModifyValuesTarget (const Hash &hash, const Hash &version, bool is_animating_source=false) |
void | appendToModifyValuesTarget (Op *op) |
void | appendToEditStageTarget (const fdk::Hash &hash, const fdk::Hash &version, bool is_animating_source=false) |
void | appendToEditStageTarget (const Hash &hash, const Hash &version, bool is_animating_source=false) |
void | appendToEditStageTarget (Op *op) |
const usg::GeomStateTargetArray & | localTargets () const |
The set of knob-change targets, copied from the shared GeomOpEngine. | |
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 | detach () |
node has been deleted in DAG | |
virtual void | attach () |
node has been created in DAG | |
virtual void | pre_write_knobs () |
void | knobStorePrep (const OutputContext &storeContext) |
virtual void | knobs (Knob_Callback) |
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_changed (Knob *) |
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) |
virtual void | build_handles (ViewerContext *) |
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 |
virtual int | minimum_inputs () const |
virtual int | maximum_inputs () const |
virtual bool | test_input (int, Op *) 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 | |
Op * | input1 () const |
return the second input, if it exists | |
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 int | split_input (int) const |
virtual const OutputContext & | inputContext (int n, int offset, OutputContext &) const |
virtual const OutputContext * | inputUIContext (int n, OutputContext &) const |
virtual Op * | default_input (int) 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 unsigned | node_color () const |
virtual const char * | node_help () const =0 |
virtual const char * | input_label (int, char *) const |
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) |
virtual void | force_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. | |
bool | real_valid () const |
Returns true if it has been real-validated - including if there was an error. | |
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 bool | inUse () const |
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 Iop * | iop () |
Cast to an Iop. This is much cheaper and safer than using dynamic_cast. | |
virtual const Iop * | iop () const |
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 OpHints | opHints () const |
Return hints to control when and how this op will be evaluated by the top-down system. | |
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::LookAt | |
LookAt (int defaultLookAxis=kAxisZPlus) | |
virtual Op * | lookat_input () const =0 |
The lookat input op. | |
void | knobs (Knob_Callback f) |
Adds the 'Look' tab and knobs for all the look at options. | |
int | knobChanged (Op *parent, Knob *k) |
disables the look at input is not present | |
void | lookAt (Matrix4 &matrix) |
performs the look at on the incoming matrix | |
void | lookMatrixAt (const OutputContext &oc, Matrix4 &concatMatrix) |
performs the look at on the incoming matrix for a given context | |
Public Member Functions inherited from DD::Image::LightMaterialOpI | |
std::string | getShaderNodeName (const usg::Token &target_renderer=usg::Token()) override |
void | defineLightPrim (const usg::LayerRef &define_layer, const usg::Path &light_prim_path, const MaterialContext &rtx, usg::ShaderDescGroup &shaderdesc_group) |
Public Member Functions inherited from DD::Image::MaterialOpI | |
virtual Op * | getOp () |
Return the Op this interface is attached to. Should return 'this'. | |
virtual void | setOverrideOp (Op *) |
virtual void | clearOverrideOp () |
Disable any assigned override Op. | |
virtual Op * | getOverrideOp () const |
Return the override Op used for shader property value updating. | |
virtual usg::TokenArray | getAppliedApiSchemas () const |
Returns a list of API's this output shader must implement. | |
virtual const char * | getOutputSchema () const |
virtual int32_t | getOutputType () const |
bool | isCoShader () const |
Convenience to check output type. | |
bool | isSurfaceShader () const |
bool | isLightShader () const |
bool | isVolumeShader () const |
virtual std::string | getShaderNodeName (const usg::Token &target_renderer=usg::Token()) |
virtual int32_t | connectionTypeForNodeInput (int32_t node_input) const |
virtual usg::ShaderDesc * | createShaderGraph (int32_t output_type, const MaterialContext &rtx, usg::ShaderDescGroup &shader_group) |
virtual usg::ShaderDesc * | createShaderGraphFromOp (Op *input_op, const MaterialContext &rtx, usg::ShaderDescGroup &shader_group) |
virtual void | updateShaderGraphOverrides (int32_t output_type, const MaterialContext &rtx, usg::ShaderDescGroup &shader_group) |
virtual void | updateShaderGraphFromOp (Op *input_op, const MaterialContext &rtx, usg::ShaderDescGroup &shader_group) |
Public Attributes | |
const Vector3 & | surfP |
const Vector3 const Vector3 & | lobeN |
const Vector3 const Vector3 Vector3 & | L |
const Vector3 const Vector3 Vector3 float &D | const |
const Vector3 const Vector3 const Vector3 & | L |
const Vector3 const Vector3 const Vector3 float | D |
const Vector3 const Vector3 const Vector3 float Pixel & | out |
const VertexContext & | vtx |
const VertexContext const Vector3 & | surfP |
const VertexContext const Vector3 Pixel & | out |
Public Attributes inherited from DD::Image::AxisOp | |
Matrix4 & | const |
Public Attributes inherited from DD::Image::Op | |
const MetaData::Bundle * | metaCache |
Hash | metaCacheHash |
Protected Attributes | |
Pixel | color_ |
Color of the light (can be >3 channels!) | |
float | intensity_ |
Global intensity. | |
bool | falloff_ |
Whether to factor in physical falloff. | |
int | falloffType_ |
falloff type | |
int | samples_ |
The number of samples (for area testing) | |
float | sample_width_ |
sample width (for shadowing) | |
bool | cast_shadows_ |
Whether light casts shadows. | |
int | shadows_mode_ |
Shadow casting mode. | |
TextureFilter | shadow_filter_ |
Default filter to use in shadow texture sampling. | |
float | scene_epsilon_ |
Scene epsilon for shadow comparison. | |
float | depthmap_bias_ |
Offset in Z of shadow buffer. | |
float | depthmap_slope_bias_ |
Offset in Z to be scale in proportion of the local gradient. | |
float | alpha_threshold_ |
Alpha threshold for transparent shadow map mode. | |
float | shadow_jitter_scale_ |
Size of shadow jitter. | |
int | depthmap_width_ |
Size in pixels of shadow buffer. | |
Channel | _shadowMaskChannel |
Output the shadow mask to this channel. | |
Protected Attributes inherited from DD::Image::CameraOp | |
union { | |
double _focalLength | |
Focal length of lens (*** in millimeters ***) | |
}; | |
union { | |
double _horizontalAperture | |
Horizontal aperture size (film width) (*** in millimeters ***) | |
}; | |
union { | |
double _verticalAperture | |
Vertical aperture size (film height) (*** in millimeters ***) | |
}; | |
union { | |
double _fStop | |
Lens aperture diameter (*** unitless ratio tied to focal-length ***) | |
}; | |
union { | |
double _nearPlaneDistance | |
Near clipping plane distance (*** in world units ***) | |
}; | |
union { | |
double _farPlaneDistance | |
Far clipping plane distance (*** in world units ***) | |
}; | |
union { | |
double _focusDistance | |
Focus point distance (*** in world units ***) | |
}; | |
union { | |
fdk::Vec2f _windowTranslate | |
Window coords translate XY. | |
}; | |
union { | |
fdk::Vec2f _windowScale | |
Window coords scale XY. | |
}; | |
union { | |
double _windowRotateZ | |
Window coords rotate Z. | |
}; | |
union { | |
LensProjection _lensProjectionMode | |
Lens projection mode. | |
}; | |
ShutterControls | _shutter |
Shutter controls which may be referenced by a renderer. | |
double | _shutterBias |
Weights the shutter samples towards shutter close with a power function. | |
double | _worldToMeters |
World to meters - used to convert lens mm values to world scale. | |
bool | _glWorldSizeIcon |
Always draw the camera icon at the 'real' world size (defined by _worldToMeters) | |
bool | _glSolidFrustum |
Draw the camera frustum as solid. | |
bool | _glInsideFrustum |
Indicated whether to draw the frustum as an inside or outside box. | |
bool | use_vertical_lock_ |
double | lens_distort_a_ |
double | lens_distort_b_ |
double | lens_distort_c_ |
double | lens_distort_D_ |
double | lens_distortion_ |
double | lens_power_ |
bool | lens_distort_enabled_ |
fdk::Mat4d | _projectionMatrix |
Camera's projection matrix (only valid for linear projections) | |
Protected Attributes inherited from DD::Image::AxisOp | |
std::string | _primPath |
Path + name for the output prim to create (if needed) | |
int32_t | _parentPrimType |
The type for missing parent prims we create. | |
bool | _importEnabled |
If true this node imports prim attributes from scene input or file source. | |
bool | _passthroughEnabled |
If true this node does not create or change any input scene prims. | |
bool | _mergeEnabled |
If true any input scenegraph is merged into the output scenegraph. | |
struct DD::Image::AxisOp::ScenePrimImport | _importer |
Scene prim importer controls & state. | |
bool | _importerChanged |
If true any knobs set by the importer need to be re-stored. | |
fdk::Vec3d | _localParentTranslate |
Local-parent translation knob value. | |
fdk::Vec3d | _localParentRotate |
Local-parent rotate knob value. | |
fdk::Vec3d | _localParentScale |
Local-parent scale knob value. | |
fdk::Mat4d | _localParentMatrix |
Parent transform derived from local parent TRS knobs. | |
fdk::Mat4d | _localAxisMatrix |
Local matrix that Axis_Knob fills in (no lookat rotations) | |
fdk::Mat4d | _parentTransform |
Input-parent & local-parent transform. | |
fdk::Mat4d | _localTransform |
Local object transform - axis_matrix & lookat rotations. | |
fdk::Mat4d | _worldTransform |
World transform - _parentTransform & _localTransform. | |
fdk::Mat4d | _invWorldTransform |
Inverse world transform. | |
DD::Image::Hash | _parentHash |
Does parent path or transform need to be updated? | |
union { | |
bool _xformInversionValid | |
Is _invWorldTransform valid? | |
}; | |
union { | |
Axis_KnobI * _axisKnob | |
Reference to the node Axis_Knob. | |
}; | |
WorldMatrixProvider * | _worldMatrixProvider |
'world_matrix' output knob | |
Knob * | _localParentTranslateKnob |
If not null apply parent_translate. | |
Knob * | _localParentRotateKnob |
If not null apply parent_rotate. | |
Knob * | _localParentScaleKnob |
If not null apply parent_scale. | |
int | display3d_ |
GUI display setting - deprecate? | |
bool | selectable_ |
GUI selectable checkmark - deprecate? | |
bool | _editable |
Can the user change the knobs? (i.e. knobs not disabled) | |
Protected Attributes inherited from DD::Image::GeomOp | |
GeomOpEngine * | _engineNode |
GeomEngine graph processor shared between all Op instances of this GeomOp subclass. | |
GeneralInfo | info_ |
Global intended frame range (must remain 'info_' for MultiTypeNode support!) | |
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::LookAt | |
Matrix4 | lookat_matrix_ |
Matrix for rotating to look at the look input. | |
Matrix4 | my_local |
For the Axis_Knob to store into. | |
bool | my_transform_normals |
int | my_lookat_axis |
bool | my_rotate_x |
bool | my_rotate_y |
bool | my_rotate_z |
bool | my_lookat_use_quat |
double | my_lookat_strength |
Additional Inherited Members | |
Static Public Member Functions inherited from DD::Image::CameraOp | |
static CameraOp * | default_camera () |
static void | toFormat (fdk::Mat4f &, const Format *) |
static void | fromFormat (fdk::Mat4f &, const Format *) |
Static Public Member Functions inherited from DD::Image::GeomOp | |
static void | buildStage (usg::StageRef &stage, const usg::ArgSet &request_args, GeomOp *geop0, GeomOp *geop1=nullptr, const fdk::TimeValueSet *addl_process_times=nullptr) |
static void | buildStage (usg::StageRef &stage, const usg::ArgSet &request_args, const GeomOpSet &geops, const fdk::TimeValueSet *addl_process_times=nullptr) |
Same as buildStage(GeomOp*) but for a set of GeomOps. | |
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) |
Static Public Member Functions inherited from DD::Image::LightMaterialOpI | |
static const char * | conformPropName (const char *prop_name) |
Static Public Member Functions inherited from DD::Image::MaterialOpI | |
static std::string | getNodeInstanceSuffix (DD::Image::Op *op) |
static std::string | buildName (const std::string &node_name, const char *schema_name) |
Convenience function builds a standard shader name with '<node_name>_<schema_name>'. | |
static std::string | buildName (const usg::Token &target_renderer, const std::string &node_name, const char *schema_name) |
Convenience function builds a standard shader name with '<target_renderer>_<node_name>_<schema_name>'. | |
static int32_t | getShaderTypeFromOp (Op *op) |
static std::string | getShaderNodeNameFromOp (const usg::Token &target_renderer, Op *op) |
static const char * | inputShaderTypeName (int32_t op_type) |
static usg::ShaderDesc * | createOpInterfaceShaderDesc (int32_t op_type, Op *op) |
static usg::ShaderDesc * | createOpInterfaceShaderDesc (Op *op) |
static std::string | buildAssetPath (Op *input_op) |
static bool | parseAssetPath (const std::string &path, std::string &nodePath, OutputContext &outputContext, Hash &opHash) |
static Op * | retrieveOpFromAssetPath (const std::string &path) |
Static Public Attributes inherited from DD::Image::CameraOp | |
static const char * | projection_modes [] |
static const char * | projection_modes_renderer [] |
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 |
Protected Types inherited from DD::Image::LookAt | |
enum | { kAxisZPlus , kAxisZMinus , kAxisYPlus , kAxisYMinus , kAxisXPlus , kAxisXMinus } |
Protected Member Functions inherited from DD::Image::CameraOp | |
mFnDeprecatedInNuke14 ("projection_ has been deprecated, use Mat4d _projectionMatrix instead.") Matrix4 projection_ | |
Camera's projection matrix - deprecated. | |
Protected Member Functions inherited from DD::Image::AxisOp | |
mFnDeprecatedInNuke14 ("isLegacyAxisOp() has been deprecated, port AxisOp sublass to new Nuke 14 api.") virtual bool _isLegacyAxisOp() const | |
mFnDeprecatedInNuke14 ("localtransform_ has been deprecated, use Mat4d _localTransform instead.") Matrix4 localtransform_ | |
Local 'axis' matrix that Axis_Knob fills in - deprecated. | |
mFnDeprecatedInNuke14 ("local_ has been deprecated, use Mat4d _localAxisMatrix instead.") Matrix4 local_ | |
Local matrix after look at performed - deprecated. | |
mFnDeprecatedInNuke14 ("matrix_ has been deprecated, use Mat4d _worldTransform instead.") Matrix4 matrix_ | |
Object matrix - local&parent - deprecated. | |
mFnDeprecatedInNuke14 ("imatrix_ has been deprecated, use Mat4d _invWorldTransform instead.") Matrix4 imatrix_ | |
Inverse object matrix - deprecated. | |
Protected Member Functions inherited from DD::Image::GeomOp | |
GeomOp (Node *node, GeomOpEngine::Builder engineBuilder) | |
GeomOp (Node *) | |
Ctor for MultiTypeNode support only! Do not implement for Engine-using subclasses. | |
OpHints | opHints () const override |
Return hints to control when and how this op will be evaluated by the top-down system. | |
void | setOutputContext (const OutputContext &context) override |
Called by Nuke immediately AFTER Op::knobs(). | |
int | knob_changed (Knob *k) override |
virtual void | appendGeomState (DD::Image::Hash &op_hash) |
void | _validate (bool for_real) override |
virtual void | updateGeneralInfo () |
Default implemenation copies the GeneralInfo from input0. | |
virtual fdk::Mat4d | handlesParentTransform (DD::Image::ViewerContext *ctx) |
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. | |
virtual void | _invalidate () |
virtual void | _validate (bool for_real) |
virtual void | _open () |
virtual void | _close () |
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 | |
HandlesMode | anyKnobHandles (ViewerContext *) |
return if any of the knobs on this node wish to draw handles | |
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 HandlesMode | doAnyHandles (ViewerContext *ctx) |
virtual PrevalidateResult | doPreValidate (ViewerContext *ctx=nullptr, PreValidateContext *=nullptr) |
Protected Member Functions inherited from DD::Image::LookAt | |
void | perform_lookat (Matrix4 &concatMatrix, const Matrix4 &axisMatrix) |
Protected Member Functions inherited from DD::Image::LightMaterialOpI | |
bool | overrideShaderDescInput (const char *knob_name, const MaterialContext &rtx, usg::ShaderDesc &shader_desc, const char *target_property_name, usg::Value::Type target_property_type_hint=usg::Value::Type::InvalidType) override |
bool | overrideShaderDescInput (const Channel &chan, const MaterialContext &rtx, usg::ShaderDesc &shader_desc, const char *target_property_name) override |
bool | overrideShaderDescInput (const Channel *chan_array, uint32_t num_channels, const MaterialContext &rtx, usg::ShaderDesc &shader_desc, const char *target_property_name) override |
bool | overrideShaderDescInput (const ChannelSet &channels, const MaterialContext &rtx, usg::ShaderDesc &shader_desc, const char *target_property_name) override |
virtual bool | overrideShaderDescInput (const char *knob_name, const MaterialContext &rtx, usg::ShaderDesc &shader_desc, const char *target_property_name, usg::Value::Type target_property_type_hint=usg::Value::Type::InvalidType) |
virtual bool | overrideShaderDescInput (const Channel &chan, const MaterialContext &rtx, usg::ShaderDesc &shader_desc, const char *target_property_name) |
virtual bool | overrideShaderDescInput (const Channel *chan_array, uint32_t num_channels, const MaterialContext &rtx, usg::ShaderDesc &shader_desc, const char *target_property_name) |
virtual bool | overrideShaderDescInput (const ChannelSet &channels, const MaterialContext &rtx, usg::ShaderDesc &shader_desc, const char *target_property_name) |
Static Protected Member Functions inherited from DD::Image::GeomOp | |
template<class Engine > | |
static GeomOpEngine::Builder | BuildEngine () |
A helper function you can use as the engineBuilder argument to the GeomOp constructor to reduce clutter. | |
Static Protected Attributes inherited from DD::Image::LookAt | |
static const char *const | ms_lookat_axis_choices [] |
LightOp defines a 3D light.
Light base class which defaults to point source lighting with falloff.
|
inlineoverridevirtual |
Cast to a LightOp. This is much cheaper and safer than using dynamic_cast.
Reimplemented from DD::Image::Op.
|
inlineoverridevirtual |
Reimplemented from DD::Image::Op.
|
virtual |
Whether the light has a delta distribution (point/spot/direct lights)
Reimplemented in DD::Image::ComplexLightOp.
|
inlinevirtual |
field-of-view methods.
Reimplemented in DD::Image::ComplexLightOp.
Referenced by DD::Image::ComplexLightOp::hfov().
|
overridevirtual |
Reimplemented from DD::Image::CameraOp.
|
virtual |
Handle channel requests. Base class does nothing, but Lights that read imagery such as environment maps will need to implement this.
Referenced by DD::Image::Scene::request().
|
overridevirtual |
Reimplemented from DD::Image::CameraOp.
|
overridevirtual |
Reimplemented from DD::Image::AxisOp.
|
inlineoverridevirtual |
Reimplemented from DD::Image::CameraOp.
|
overridevirtual |
Reimplemented from DD::Image::CameraOp.
|
overridevirtual |
Draws a picture of a point light.
Reimplemented from DD::Image::CameraOp.
References DD::Image::Matrix4::array(), color_, DD::Image::ViewerContext::draw_knobs(), DD::Image::ViewerContext::fg_color(), DD::Image::gl_sphere(), DD::Image::gl_text(), DD::Image::glColor(), DD::Image::ViewerContext::hit_detect(), DD::Image::ViewerContext::icon_size(), DD::Image::ViewerContext::modelmatrix, DD::Image::ViewerContext::node_color(), DD::Image::Op::node_disabled(), DD::Image::Op::node_selected(), and DD::Image::Op::print_name().
|
virtual |
Point light OpenGL settings.
Reimplemented in DD::Image::ComplexLightOp.
References DD::Image::Vector4::array(), color_, falloffType_, intensity_, DD::Image::Op::node_disabled(), and DD::Image::Vector4::set().
©2024 The Foundry Visionmongers, Ltd. All Rights Reserved. |