3ds Max C++ API Reference
|
Abstracts the common properties of the camera to be rendered. More...
#include <ICameraContainer.h>
Classes | |
class | IChangeNotifier |
Notification callback interface for ICameraContainer. More... | |
Public Types | |
enum class | ProjectionType { Perspective , Orthographic } |
Camera projection types. More... | |
Public Member Functions | |
Camera Node/Object | |
Returns the camera node being used. Will return null if a camera-less viewport is being rendered. | |
virtual INode * | GetCameraNode () const =0 |
Returns the physical camera being used, if one is being used at all - or null otherwise. More... | |
virtual IPhysicalCamera * | GetPhysicalCamera (const TimeValue t) const =0 |
Returns the physical camera being used, if one is being used at all - or null otherwise. More... | |
Camera Projection | |
virtual MotionTransforms | EvaluateCameraTransform (const TimeValue t, Interval &validity, const MotionBlurSettings *camera_motion_blur_settings=nullptr) const =0 |
Evaluate the motion transform for the camera. More... | |
virtual ProjectionType | GetProjectionType (const TimeValue t, Interval &validity) const =0 |
Returns the projection type used by the camera. More... | |
virtual float | GetPerspectiveFOVRadians (const TimeValue t, Interval &validity) const =0 |
Returns the field-of-view of the camera, in radians. More... | |
virtual float | GetOrthographicApertureWidth (const TimeValue t, Interval &validity) const =0 |
Returns the width of the orthographic aperture, in system units. More... | |
virtual float | GetOrthographicApertureHeight (const TimeValue t, Interval &validity) const =0 |
Returns the height of the orthographic aperture, in system units. More... | |
Focus and Depth-of-Field | |
virtual bool | GetDOFEnabled (const TimeValue t, Interval &validity) const =0 |
Returns whether Depth-of-Field is enable on the camera. More... | |
virtual float | GetLensFocalLength (const TimeValue t, Interval &validity) const =0 |
Returns the focal length of the lends, in system units. More... | |
virtual float | GetFocusPlaneDistance (const TimeValue t, Interval &validity) const =0 |
Returns the distance to the focus plane, in system units. More... | |
virtual float | GetLensApertureRadius (const TimeValue t, Interval &validity) const =0 |
Returns the lens' aperture radius, in system units. More... | |
Clipping Planes | |
virtual bool | GetClipEnabled (const TimeValue t, Interval &validity) const =0 |
Returns the clipping planes are enabled. More... | |
virtual float | GetClipNear (const TimeValue t, Interval &validity) const =0 |
Returns the distance to the near clipping plane, in system units. More... | |
virtual float | GetClipFar (const TimeValue t, Interval &validity) const =0 |
Returns the distance to the far clipping plane, in system units. More... | |
Resolution, Region, and Bitmap | |
virtual IPoint2 | GetResolution () const =0 |
Returns the resolution of the image to be rendered. More... | |
virtual float | GetPixelAspectRatio () const =0 |
Returns the pixel aspect ratio of the image to be rendered. More... | |
virtual Bitmap * | GetBitmap () const =0 |
Returns the bitmap to which the image is to be rendered. More... | |
virtual Box2 | GetRegion () const =0 |
Returns the region to be rendered. More... | |
virtual Point2 | GetImagePlaneOffset (const TimeValue t, Interval &validity) const =0 |
Returns the X-Y offset of the canvas to be rendered, in the image planes, as number of pixels. More... | |
View Parameters | |
virtual const View & | GetView (const TimeValue t, Interval &validity) const =0 |
Returns a View structure that may be passed GeomObject::GetRenderMesh(). More... | |
virtual ViewParams | GetViewParams (const TimeValue t, Interval &validity) const =0 |
Returns a ViewParams structure, initialize with the camera's properties. More... | |
Motion Blur | |
virtual MotionBlurSettings | GetGlobalMotionBlurSettings (const TimeValue t, Interval &validity) const =0 |
Returns the scene motion blur settings specified by the camera. More... | |
Notification | |
Registers a notifier callback, to be called when interactive changes occur. | |
virtual void | RegisterChangeNotifier (IChangeNotifier ¬ifier) const =0 |
Unregisters a notification callback, previously registered with RegisterChangeNotifier(). More... | |
virtual void | UnregisterChangeNotifier (IChangeNotifier ¬ifier) const =0 |
Unregisters a notification callback, previously registered with RegisterChangeNotifier(). More... | |
Protected Member Functions | |
virtual | ~ICameraContainer () |
Protected destructor prevents deletion through this interface. More... | |
Abstracts the common properties of the camera to be rendered.
This container wraps and abstracts the camera to be rendered, whether it be a Standard, Physical, or viewport camera. The logic for interpreting a camera INode, ViewExp, and ViewParams are conveniently hidden away by this class. Additionally, This class provides a unified mechanism for notifying of changes in the camera properties.
|
strong |
|
inlineprotectedvirtual |
|
pure virtual |
Returns the physical camera being used, if one is being used at all - or null otherwise.
The physical camera exposes additional, advanced parameters which are not generic enough to be exposed directly by ICameraContainer.
t | The time value at which the camera node is evaluated to extract the physical camera. |
|
pure virtual |
Returns the physical camera being used, if one is being used at all - or null otherwise.
The physical camera exposes additional, advanced parameters which are not generic enough to be exposed directly by ICameraContainer.
t | The time value at which the camera node is evaluated to extract the physical camera. |
|
pure virtual |
Evaluate the motion transform for the camera.
t | The time at which to evaluate the transform. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
camera_motion_blur_settings | The optional motion blur settings to used when evaluating the transform. If null is passed, then the camera's and node's motion blur settings are used, just as IRenderSessionContext::EvaluateMotionTransforms(). |
|
pure virtual |
Returns the projection type used by the camera.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
|
pure virtual |
Returns the field-of-view of the camera, in radians.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
|
pure virtual |
Returns the width of the orthographic aperture, in system units.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
|
pure virtual |
Returns the height of the orthographic aperture, in system units.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
Returns whether Depth-of-Field is enable on the camera.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
Returns the focal length of the lends, in system units.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
Returns the distance to the focus plane, in system units.
This is the distance at which the lens is focused, not to be confused with the lens focal length.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
Returns the lens' aperture radius, in system units.
This is the absolute radius, not the f-stop.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
Returns the clipping planes are enabled.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
Returns the distance to the near clipping plane, in system units.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
Returns the distance to the far clipping plane, in system units.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
|
pure virtual |
Returns the resolution of the image to be rendered.
|
pure virtual |
Returns the pixel aspect ratio of the image to be rendered.
|
pure virtual |
Returns the bitmap to which the image is to be rendered.
|
pure virtual |
Returns the region to be rendered.
The renderer should only render pixels within this region; pixels outside the region should generally not not be overwritten in the Bitmap.
Returns the X-Y offset of the canvas to be rendered, in the image planes, as number of pixels.
The offset is expressed as floating-points as it may include fractions of a pixel.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
Returns a View structure that may be passed GeomObject::GetRenderMesh().
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
|
pure virtual |
Returns a ViewParams structure, initialize with the camera's properties.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
|
pure virtual |
Returns the scene motion blur settings specified by the camera.
t | The time value at which to evaluate the camera. |
validity | [in, out] The validity of the returned value is intersected into the input value of this parameter. |
|
pure virtual |
Unregisters a notification callback, previously registered with RegisterChangeNotifier().
|
pure virtual |
Unregisters a notification callback, previously registered with RegisterChangeNotifier().