class MRenderData

Jump to documentation

Access Rendering Data (OpenMayaRender) (OpenMayaRender.py)

public members:

MRenderData ()
void worldToScreen ( const MFloatPoint & worldPoint, MFloatPoint & screenPoint) const
void screenToWorld ( const MFloatPoint & screenPoint, MFloatPoint & worldPoint) const
bool perspective
set if the camera has a perspective projection
unsigned short resX
the x resolution of the rendered image
unsigned short resY
the y resolution of the rendered image
unsigned short left
the left (low) render region dimension
unsigned short bottom
the bottom (low) render region dimension
unsigned short right
the right (high) render region dimension
unsigned short top
the top (high) render region dimension
unsigned short bytesPerChannel
number of bytes per channel of the rgbaArr
unsigned short xsize
the actual x resolution of rgbaArr and depthArr
unsigned short ysize
the actual y resolution of rgbaArr and depthArr
float fieldOfView
camera horizontal field of view in radians
float aspectRatio
camera pixel aspect ratio
MFloatVector viewDirection
view direction of the camera (object space)
MFloatPoint eyePoint
position of the camera (object space)
MFloatMatrix worldToEyeMatrix
camera matrix to transform to eye space
unsigned char * rgbaArr
this is a 1d array representing the output image buffer. It is of size: resX * resY * 4 * bytesPerChannel. The array is indexed as [(resX * x + y) * 4 * bytesPerChannel], where (x,y) is the current pixel coordinates. The "4" multiplier is used for storing RGBA information, in the order of a,b,g,r (on OSX) or b,g,r,a (on Windows and Linux).
float * depthArr
this is a 1d array representing the output depth buffer. It is of size: resX * resY, where each depth value is a single precision floating point vlue. It is indexed as [resX * x + y], where (x,y) is the current pixel coordinates.

Documentation

Access Rendering Data (OpenMayaRender) (OpenMayaRender.py)
Description

The rendered image and depth map can be changed following the software render by instanciating a MRenderCallback and overriding renderCallback() or postProcessCallback(). When these methods are invoked, a MRenderData is passed as an argument; the rgbaArr and depthArr can then be changed by this API. Methods and data are provided to assist in transforming back and forth from world space to image space. Paint Effects and Fur are two examples which use this mechanism to change the rendered image.

Functions

MRenderData:: MRenderData ()
Description

Default class Constructor

void MRenderData:: worldToScreen ( const MFloatPoint & inPoint, MFloatPoint & outPoint ) const
Description

Converts world space point to screen space. Screen depth is stored in outPoint.z.

Arguments

  • inPoint The original point in world space
  • outPoint The converted point in screen space

void MRenderData:: screenToWorld ( const MFloatPoint & inPoint, MFloatPoint & outPoint ) const
Description

Converts screen space point to world space. Screen depth is stored in inPoint.z.

Arguments

  • inPoint The original point in screen space
  • outoint The converted point in world space

This class has no child classes.


Autodesk® Maya® 2008 © 1997-2007 Autodesk, Inc. All rights reserved. doc++ Copyright