C++ API Reference
|
An instance of a render target that may be used with Viewport 2.0. More...
#include <MRenderTargetManager.h>
Public Member Functions | |
MStatus | updateDescription (const MRenderTargetDescription &targetDescription) |
Change the description of a render target. More... | |
void | targetDescription (MRenderTargetDescription &desc) const |
Get target description. More... | |
void * | resourceHandle () const |
This method allows access to the draw API dependent handle for a render target. More... | |
void * | rawData (int &rowPitch, size_t &slicePitch) |
Get a copy of the raw data mapped to the target. More... | |
Static Public Member Functions | |
static const char * | className () |
Returns the name of this class. More... | |
static void | freeRawData (void *data) |
Convenience method that simply deletes the data that is allocated in the MRenderTarget::rawData() method. More... | |
An instance of a render target that may be used with Viewport 2.0.
This class represents a render target that may be used with the MRenderOperation class for rendering in Viewport 2.0.
MStatus updateDescription | ( | const MRenderTargetDescription & | targetDescription | ) |
Change the description of a render target.
This will mean a reallocation of the targets internal representation.
A common situation requiring this method to be called is to resize a render target.
[in] | targetDescription | Description to update the target to. |
void targetDescription | ( | MRenderTargetDescription & | desc | ) | const |
Get target description.
[out] | desc | The target description |
|
static |
Returns the name of this class.
void * resourceHandle | ( | ) | const |
This method allows access to the draw API dependent handle for a render target.
This handle is owned by the MRendertarget and is provided to allow access to use a target as a read-only object.
Modifications should never be performed on this target handle.
Any modifications may result in unpredictable stability as the MRenderTarget no longer has knowledge of the target contents.
For OpenGL, a pointer to an OpenGL texture identifier is returned.
For DirectX 10 and higher, a reference to a Direct3D "view" of a target is returned. If the render target is a color target then a "render target view" will be returned. If it is a depth-stencil target then a "depth stencil view" will be returned.
void * rawData | ( | int & | rowPitch, |
size_t & | slicePitch | ||
) |
Get a copy of the raw data mapped to the target.
The caller must deallocate the system memory as the target itself does not keep any references to it. The convenience method MTexture::freeRawData() can be used to deallocate memory.
[out] | rowPitch | The row pitch of the data. It represents the number of bytes of one line of the target data. |
[out] | slicePitch | The slice pitch of the data. It represents the number of bytes of the whole target data. |
|
static |
Convenience method that simply deletes the data that is allocated in the MRenderTarget::rawData() method.
This method can be used to safely free data within a plug-in which is compiled in debug mode.
[in] | data | Raw data. After deletion the pointer no longer points to a valid memory location. |