- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Examples

- Namespace List
- Namespace Members

Classes | Enumerations | Functions

# MHWRender Namespace Reference

This reference page is linked to from the following overview topics: Autodesk Maya 2013, Overview of the Viewport 2.0 API, 2. API constructs, 2.2 Geometric Data (MGeometry), 2.5 Render Targets and Render Target Manager, 3.2 The Renderer.

Contains classes, functions and enums related to rendering. More...

## Classes
class | MComponentDataIndexing
| Class for storing index mapping when vertices are shared. More...
class | MComponentDataIndexingList
class | MLightParameterInformation
| A class for providing lighting information that may be used with Viewport 2.0. More...
class | MPassContext
| Class to allow access to pass context information. More...
class | MDrawContext
| Class to allow access to hardware draw context information. More...
class | MDrawRegistry
| Access the registry associating node types with custom draw classes. More...
class | MFragmentManager
| Provides facilities for managing fragments for use with Viewport 2.0. More...
class | MFrameContext
| This class contains some global information for the current render frame. More...
class | MGeometryExtractor
| class for extracting renderable geometry More...
class | MGeometry
| Class for working with geometric structures used to draw objects. More...
class | MVertexBufferDescriptor
| Describes properties of a vertex buffer. More...
class | MVertexBufferDescriptorList
class | MVertexBuffer
| Vertex buffer for use with MGeometry. More...
class | MVertexBufferArray
| Array of Vertex buffers. More...
class | MIndexBufferDescriptor
| MIndexBufferDescriptor describes an indexing scheme. More...
class | MIndexBufferDescriptorList
class | MIndexBuffer
| Index buffer for use with MGeometry. More...
class | MGeometryIndexMapping
| A mapping of geometry index. More...
class | MRenderItem
| A single renderable entity. More...
class | MRenderItemList
| A list of MRenderItem objects. More...
class | MGeometryRequirements
| Geometry requirements. More...
class | MGeometryUtilities
| Utilities for Viewport 2.0. More...
class | MPxDrawOverride
| Base class for user defined drawing of nodes. More...
class | MPxGeometryOverride
| Base for user-defined classes to prepare geometry for drawing. More...
class | MPxIndexBufferMutator
| Base class for user defined index buffer mutators. More...
class | MPxPrimitiveGenerator
| Base class for user defined primitive generators. More...
class | MPxShaderOverride
| Base class for user defined shading effect draw overrides. More...
class | MAttributeParameterMapping
| Class for defining relationship between Maya attributes and fragment parameters. More...
class | MAttributeParameterMappingList
| A list of MAttributeParameterMapping objects. More...
class | MPxShadingNodeOverride
| Base class for user defined shading node overrides. More...
class | MSubSceneContainer
| Container for render items generated by MPxSubSceneOverride. More...
class | MPxSubSceneOverride
| Base class for Viewport 2.0 drawing of DAG nodes which represent sub-scenes. More...
class | MPxSurfaceShadingNodeOverride
| Base class for user defined surface shading node overrides. More...
class | MPxVertexBufferGenerator
| Base class for user defined vertex buffer generators. More...
class | MPxVertexBufferMutator
| Base class for user defined vertex buffer generators. More...
class | MRenderTargetDescription
| Class which provides a description of a hardware render target The name is the unique identifier for a render target. More...
class | MRenderTarget
| An instance of a render target that may be used with Viewport 2.0. More...
class | MRenderTargetManager
| Provides access to MRenderTarget objects for use in Viewport 2.0. More...
class | MRenderUtilities
| Utilities for Viewport 2.0. More...
struct | MTextureAssignment
| Structure to hold the information required to set a texture parameter on a shader using a texture as input. More...
struct | MRenderTargetAssignment
| Structure to hold the information required to set a texture parameter on a shader using a render target as input. More...
struct | MShaderCompileMacro
| Structure to define a shader compiler macro. More...
class | MShaderInstance
| An instance of a shader that may be used with Viewport 2.0. More...
class | MShaderManager
| Provides access to MShaderInstance objects for use in Viewport 2.0. More...
class | MStateManager
| Class to allow efficient access to GPU state information. More...
class | MBlendState
| Container class for an acquired GPU blend state. More...
class | MTargetBlendDesc
| Descriptor for a blend state for a single render target. More...
class | MBlendStateDesc
| Descriptor for a complete blend state. More...
class | MRasterizerState
| Container class for an acquired complete GPU rasterizer state. More...
class | MRasterizerStateDesc
| Descriptor for a complete rasterizer state. More...
class | MDepthStencilState
| Container class for an acquired complete GPU depth stencil state. More...
class | MStencilOpDesc
| Descriptor for a depth-stencil operation. More...
class | MDepthStencilStateDesc
| Descriptor for a complete depth-stencil state. More...
class | MSamplerState
| Container class for an acquired complete GPU sampler state. More...
class | MSamplerStateDesc
| Descriptor for a complete sampler state. More...
class | MTextureDescription
| Texture description. More...
class | MDepthNormalizationDescription
| Information required to perform normalization of values stored in the depth buffer of an MImage with respect to clipping plane range. More...
class | MTexture
| Class which includes texture data. More...
class | MTextureManager
| Class which manages texture. More...
class | MUIDrawManager
| Main interface for drawing simple geometry in Viewport 2.0 and Maya Hardware Renderer 2.0. More...
class | MCameraOverride
| Camera override description. More...
class | MRenderOperation
| Class which defines a rendering operation. More...
class | MUserRenderOperation
| Class which defines a user defined rendering operation. More...
class | MHUDRender
| Class which defines rendering the 2D heads-up-display. More...
class | MPresentTarget
| Class which defines the operation of presenting a target for final output. More...
class | MClearOperation
| Class which defines the operation of clearing render target channels. More...
class | MSceneRender
| Class which defines a scene render. More...
class | MQuadRender
| Class which defines a 2d geometry quad render. More...
class | MRenderOverride
| Base class for defining a rendering override. More...
class | MRenderer
| Main interface class to the Viewport 2.0 renderer. More...
## Enumerations
enum | DisplayStatus { kActive, kLive, kDormant, kInvisible, kHilite, kTemplate, kActiveTemplate, kActiveComponent, kLead, kIntermediateObject, kActiveAffected, kNoStatus }
| This enum defines the possible drawing modes for individual objects. More...
enum | MTextureType { kImage1D = 0, kImage1DArray, kImage2D, kImage2DArray, kCubeMap, kVolumeTexture, kDepthTexture, kNumberOfTextureTypes }
| Texture types. More...
enum | MEnvironmentMapType { kEnvNone = 0, kEnvSphere, kEnvHemiSphere, kEnvLatLong, kEnvCrossVert, kEnvCrossHoriz, kEnvCubemap, kNumberOfEnvMapTypes }
| Environment mapping types for textures. More...
enum | DrawAPI { kNone = 0, kOpenGL = 1 << 0, kDirectX11 = 1 << 1, kAllDevices = kOpenGL | kDirectX11 }
| Draw API identifiers. More...
enum | MRasterFormat { kD24S8 = 0, kD24X8, kD32_FLOAT, kR24G8, kR24X8, kDXT1_UNORM, kDXT1_UNORM_SRGB, kDXT2_UNORM, kDXT2_UNORM_SRGB, kDXT2_UNORM_PREALPHA, kDXT3_UNORM, kDXT3_UNORM_SRGB, kDXT3_UNORM_PREALPHA, kDXT4_UNORM, kDXT4_SNORM, kDXT5_UNORM, kDXT5_SNORM, kR9G9B9E5_FLOAT, kR1_UNORM, kA8, kR8_UNORM, kR8_SNORM, kR8_UINT, kR8_SINT, kL8, kR16_FLOAT, kR16_UNORM, kR16_SNORM, kR16_UINT, kR16_SINT, kL16, kR8G8_UNORM, kR8G8_SNORM, kR8G8_UINT, kR8G8_SINT, kB5G5R5A1, kB5G6R5, kR32_FLOAT, kR32_UINT, kR32_SINT, kR16G16_FLOAT, kR16G16_UNORM, kR16G16_SNORM, kR16G16_UINT, kR16G16_SINT, kR8G8B8A8_UNORM, kR8G8B8A8_SNORM, kR8G8B8A8_UINT, kR8G8B8A8_SINT, kR10G10B10A2_UNORM, kR10G10B10A2_UINT, kB8G8R8A8, kB8G8R8X8, kR8G8B8X8 , kR32G32_FLOAT, kR32G32_UINT, kR32G32_SINT, kR16G16B16A16_FLOAT, kR16G16B16A16_UNORM, kR16G16B16A16_SNORM, kR16G16B16A16_UINT, kR16G16B16A16_SINT, kR32G32B32_FLOAT, kR32G32B32_UINT, kR32G32B32_SINT, kR32G32B32A32_FLOAT, kR32G32B32A32_UINT, kR32G32B32A32_SINT, kNumberOfRasterFormats }
| Pixel / raster formats. More...
## Functions
MHWRender::DrawAPI | operator| (MHWRender::DrawAPI a, MHWRender::DrawAPI b)
| Type-safe bitwise 'or' operator for GPU device type flags.

## Detailed Description

Contains classes, functions and enums related to rendering.

See also the OpenMayaRender - API module for rendering module.

## Enumeration Type Documentation

enum DisplayStatus

Search for all occurrences

This enum defines the possible drawing modes for individual objects.

Enumerator:

  kActive | Object is active (selected). Note that the last selected object will have status kLead instead of kActive. If only one object is selected the status will be kLead. Search for all occurrences
  kLive | Object is live (construction surface). Search for all occurrences
  kDormant | Object is domant. Search for all occurrences
  kInvisible | Object is invisible (not drawn). Search for all occurrences
  kHilite | Object is hilited (has selectable components). Search for all occurrences
  kTemplate | Object is templated (Not renderable). Search for all occurrences
  kActiveTemplate | Object is active and templated. Search for all occurrences
  kActiveComponent | Object has active components. Search for all occurrences
  kLead | Last selected object. Search for all occurrences
  kIntermediateObject | Construction object (not drawn). Search for all occurrences
  kActiveAffected | Affected by active object(s). Search for all occurrences
  kNoStatus | Object does not have a valid display status. Search for all occurrences

enum MTextureType

Search for all occurrences

Texture types.

Enumerator:

  kImage1D | 1D image Search for all occurrences
  kImage1DArray | Array of 1D images. Search for all occurrences
  kImage2D | 2D image Search for all occurrences
  kImage2DArray | Array of 2D images. Search for all occurrences
  kCubeMap | Cube map. Search for all occurrences
  kVolumeTexture | Volume texture. Search for all occurrences
  kDepthTexture | Depth texture. Search for all occurrences
  kNumberOfTextureTypes | Not to be used to describe a raster. This is the number of texture types. Search for all occurrences

enum MEnvironmentMapType

Search for all occurrences

Environment mapping types for textures.

Describes the algorithm for how the data in the texture should be looked up.

Enumerator:

  kEnvNone | Direct mapping. Search for all occurrences
  kEnvSphere | Sphere style environment mapping. Search for all occurrences
  kEnvHemiSphere | Hemi-sphere style environment mapping. Search for all occurrences
  kEnvLatLong | Latitude/longitude style environment map. Search for all occurrences
  kEnvCrossVert | Vertical cross style environment map. Search for all occurrences
  kEnvCrossHoriz | Horizontal cross style environment map. Search for all occurrences
  kEnvCubemap | 6 faces cube map style environment map Search for all occurrences
  kNumberOfEnvMapTypes | Not to be used to describe a raster. This is the number of environment map types. Search for all occurrences

enum DrawAPI

Search for all occurrences

Draw API identifiers.

Enumerator:

  kNone | Uninitialized device. Search for all occurrences
  kOpenGL | OpenGL. Search for all occurrences
  kDirectX11 | Direct X 11. Search for all occurrences
  kAllDevices | All : OpenGL and Direct X 11. Search for all occurrences

enum MRasterFormat

Search for all occurrences

Pixel / raster formats.

The following short form notation is used for channel specification:

- R = red channel
- G = green channel
- B = blue channel
- A = alpha channel
- E = exponent channel
- L = luminence channel
- X = channel is not used
- DXT1, DXT2, DXT3, DXT4, and DXT5 are S3 compression formats
- Numbers after the channel gives the bit depth
- Channel order is data storage order.

The following short form notation is used for data format specification:

- UNORM means unsigned values which have been normalized to the 0 to 1 range.
- SNORM means signed values which have been normalized to the -1 to 1 range.
- UINT means unsigned integer values
- SINT means signed integer values
- FLOAT means floating point
- If normalization is not explicitly specified then the values are unnormalized

Enumerator:

  kD24S8 | Depth: 24-bit, Stencil 8-bit. Search for all occurrences
  kD24X8 | Depth: 24-bit. Search for all occurrences
  kD32_FLOAT | Depth 32-bit. Search for all occurrences
  kR24G8 | Red 24-bit, Green 8-bit. Search for all occurrences
  kR24X8 | Red 24-bit. Search for all occurrences
  kDXT1_UNORM | DXT1 : unsigned. Search for all occurrences
  kDXT1_UNORM_SRGB | DXT1 : unsigned, sRGB format. Search for all occurrences
  kDXT2_UNORM | DXT2 : unsigned. Search for all occurrences
  kDXT2_UNORM_SRGB | DXT2 : sRGB format. Search for all occurrences
  kDXT2_UNORM_PREALPHA | DXT2, pre-multiplied alpha. Search for all occurrences
  kDXT3_UNORM | DXT3 : unsigned. Search for all occurrences
  kDXT3_UNORM_SRGB | DXT3 : unsigned, sRGB format. Search for all occurrences
  kDXT3_UNORM_PREALPHA | DXT3, pre-multiplied alpha. Search for all occurrences
  kDXT4_UNORM | DXT4 : unsigned. Search for all occurrences
  kDXT4_SNORM | DXT4 : signed. Search for all occurrences
  kDXT5_UNORM | DXT5 : unsigned. Search for all occurrences
  kDXT5_SNORM | DXT5 : signed. Search for all occurrences
  kR9G9B9E5_FLOAT | HDR format : 9 bits for each of RGB, no alpha, 5 bit shared exponent. Search for all occurrences
  kR1_UNORM | Red: 1-bit. Search for all occurrences
  kA8 | Alpha: 8-bit. Search for all occurrences
  kR8_UNORM | Red: 8-bit. Search for all occurrences
  kR8_SNORM | Red: 8-bit signed. Search for all occurrences
  kR8_UINT | Red: 8-bit unsigned integer. Search for all occurrences
  kR8_SINT | Red: 8-bit signed integer. Search for all occurrences
  kL8 | Luminence: 8-bit. Search for all occurrences
  kR16_FLOAT | Red: 16-bit float. Search for all occurrences
  kR16_UNORM | Red: 16-bit unsigned. Search for all occurrences
  kR16_SNORM | Red: 16-bit signed. Search for all occurrences
  kR16_UINT | Red: 16-bit unsigned integer. Search for all occurrences
  kR16_SINT | Red: 16-bit signed integer. Search for all occurrences
  kL16 | Luminence, 16-bit. Search for all occurrences
  kR8G8_UNORM | Red: 8-bit, Green : 8-bit, unsigned. Search for all occurrences
  kR8G8_SNORM | Red: 8-bit, Green : 8-bit, signed. Search for all occurrences
  kR8G8_UINT | Red: 8-bit, Green : 8-bit, unsigned integer. Search for all occurrences
  kR8G8_SINT | Red: 8-bit, Green : 8-bit, signed integer. Search for all occurrences
  kB5G5R5A1 | RGB : 5-bits each, Alpha : 1-bit. Search for all occurrences
  kB5G6R5 | RGB : 5-bits each, Alpha : 1-bit. Search for all occurrences
  kR32_FLOAT | Red : 32-bit float. Search for all occurrences
  kR32_UINT | Red : 32-bit unsigned integer. Search for all occurrences
  kR32_SINT | Red : 32-bit signed integer. Search for all occurrences
  kR16G16_FLOAT | Red and green : 16-bit float each. Search for all occurrences
  kR16G16_UNORM | Red and green : 16-bit unsigned. Search for all occurrences
  kR16G16_SNORM | Red and green : 16-bit signed. Search for all occurrences
  kR16G16_UINT | Red and green : 16-bit unsigned. Search for all occurrences
  kR16G16_SINT | Red and green : 16-bit signed. Search for all occurrences
  kR8G8B8A8_UNORM | RGBA : 8-bits unsigned each. Search for all occurrences
  kR8G8B8A8_SNORM | RGBA : 8-bits signed each. Search for all occurrences
  kR8G8B8A8_UINT | RGBA : 8-bits unsigned integer each. Search for all occurrences
  kR8G8B8A8_SINT | RGBA : 8-bits signed integer each. Search for all occurrences
  kR10G10B10A2_UNORM | 2 bit alpha, 10 bits for each of RGB Search for all occurrences
  kR10G10B10A2_UINT | 2 bit alpha, 10 bits for each of RGB, unsigned integer Search for all occurrences
  kB8G8R8A8 | BGRA : 8-bits each. Search for all occurrences
  kB8G8R8X8 | BGR : 8-bits each. No alpha Search for all occurrences
  kR8G8B8X8 | RGB : 8-bits each. Search for all occurrences
  kR32G32_FLOAT | RG : 32-bits float each. Search for all occurrences
  kR32G32_UINT | RG : 32-bits unsigned each. Search for all occurrences
  kR32G32_SINT | RG : 32-bits signed each. Search for all occurrences
  kR16G16B16A16_FLOAT | RGBA : 16-bits float each. Search for all occurrences
  kR16G16B16A16_UNORM | RGBA : 16-bits unsigned each. Search for all occurrences
  kR16G16B16A16_SNORM | RGBA : 16-bits signed each. Search for all occurrences
  kR16G16B16A16_UINT | RGBA : 16-bits unsigned integer each. Search for all occurrences
  kR16G16B16A16_SINT | RGBA : 16-bits unsigned integer each. Search for all occurrences
  kR32G32B32_FLOAT | RGB : 32-bits float each. Search for all occurrences
  kR32G32B32_UINT | RGB : 32-bits unsigned integer each. Search for all occurrences
  kR32G32B32_SINT | RGB : 32-bits signed integer each. Search for all occurrences
  kR32G32B32A32_FLOAT | RGBA : 32-bits float each. Search for all occurrences
  kR32G32B32A32_UINT | RGBA : 32-bits unsigned integer each. Search for all occurrences
  kR32G32B32A32_SINT | RGBA : 32-bits signed integer each. Search for all occurrences
  kNumberOfRasterFormats | Not to be used to describe a raster. This is the number of rasters formats Search for all occurrences

## Function Documentation

MHWRender::DrawAPI MHWRender::operator| | ( | MHWRender::DrawAPI | a,
|  | MHWRender::DrawAPI | b
| ) |  | `[inline]`

Type-safe bitwise 'or' operator for GPU device type flags.

Parameters:

  [in] | a | First device flag
  [in] | b | Second device flag

Returns:
  Bitwise 'or' of input flags