DrawContext Class Reference
 
 
 
DrawContext Class Reference

This reference page is linked to from the following overview topics: Nitrous Graphics SDK Extensions, About RenderItem.


#include <DrawContext.h>

Inheritance diagram for DrawContext:
MaxHeapOperators

Class Description

The pipeline context contains the complete state of a single item being drawn all system supplied variables are contained here, as is the current virtual device.

Public Member Functions

virtual const Matrix44 GetWorldMatrix ()=0
  Get current world matrix Note: If you want change the world matrix, you must first copy it to another instance, then apply the world matrix via SetWorldMatrix().
virtual void  SetWorldMatrix (const Matrix44 &matrix)=0
  Set current world matrix Note: If you want change the world matrix, you must first copy it to another instance, then apply the world matrix via SetWorldMatrix().
virtual void  SetWorldMatrix (const Matrix3 &matrix)=0
  Set current world matrix /param matrix new world matrix.
virtual const Matrix44 GetViewMatrix ()=0
  Get current view matrix Note: If you want change the view matrix, you must first copy it to another instance, then apply the view matrix via SetViewMatrix().
virtual void  SetViewMatrix (const Matrix44 &matrix)=0
  Set current world matrix Note: If you want change the world matrix, you must first copy it to another instance, then apply the world matrix via SetWorldMatrix().
virtual const Matrix44 GetProjectionMatrix ()=0
  Get current projection matrix Note: If you want change the projection matrix, you must first copy it to another instance, then apply the projection matrix via SetProjectionatrix().
virtual void  SetProjectionMatrix (const Matrix44 &matrix)=0
  Set current projection matrix Note: If you want change the projection matrix, you must first copy it to another instance, then apply the projection matrix via SetProjectionatrix().
virtual IVirtualDevice GetVirtualDevice ()=0
  Get virtual device Note: Don't store the virtual device on client side.
virtual INode GetCurrentNode ()=0
  Get current INode object /return INode object.
virtual const ViewExp GetViewExp () const =0
  Get current ViewExp Note: Legacy GraphicsWindow object also available in the ViewExp.
virtual const
MaxSDK::Graphics::BaseMaterialHandle
GetMaterial () const =0
  Get current material handle /return current material handle Note: the handle might be invalid.
virtual int  GetFrameStamp ()=0
  Get current frame stamp return current frame stamp.
virtual TimeValue  GetTime () const =0
  Get current animation time return current animation time.
virtual bool  GetAlphaTestEnabled () const =0
  Get the alpha test enabled flag.
virtual void  SetAlphaTestEnabled (bool value)=0
  Set the alpha test enabled flag.
virtual CompareFunction  GetAlphaTestFunction ()=0
  Gets the alpha test comparison function.
virtual void  SetAlphaTestFunction (CompareFunction value)=0
  Sets the alpha test comparison function.
virtual float  GetAlphaTestReference () const =0
  Gets the alpha test reference value.
virtual void  SetAlphaTestReference (float value)=0
  Sets the alpha test reference value.
virtual const
MaxSDK::Graphics::IViewportViewSetting
GetViewportSettings () const =0
  Gets viewport settings /return viewport settings.

Protected Member Functions

virtual  ~DrawContext ()

Constructor & Destructor Documentation

virtual ~DrawContext ( ) [inline, protected, virtual]
{}

Member Function Documentation

virtual const Matrix44& GetWorldMatrix ( ) [pure virtual]

Get current world matrix Note: If you want change the world matrix, you must first copy it to another instance, then apply the world matrix via SetWorldMatrix().

/return current world matrix.

virtual void SetWorldMatrix ( const Matrix44 matrix ) [pure virtual]

Set current world matrix Note: If you want change the world matrix, you must first copy it to another instance, then apply the world matrix via SetWorldMatrix().

/param matrix new world matrix.

virtual void SetWorldMatrix ( const Matrix3 matrix ) [pure virtual]

Set current world matrix /param matrix new world matrix.

virtual const Matrix44& GetViewMatrix ( ) [pure virtual]

Get current view matrix Note: If you want change the view matrix, you must first copy it to another instance, then apply the view matrix via SetViewMatrix().

/return current view matrix.

virtual void SetViewMatrix ( const Matrix44 matrix ) [pure virtual]

Set current world matrix Note: If you want change the world matrix, you must first copy it to another instance, then apply the world matrix via SetWorldMatrix().

/param matrix new world matrix.

virtual const Matrix44& GetProjectionMatrix ( ) [pure virtual]

Get current projection matrix Note: If you want change the projection matrix, you must first copy it to another instance, then apply the projection matrix via SetProjectionatrix().

/return current projection matrix.

virtual void SetProjectionMatrix ( const Matrix44 matrix ) [pure virtual]

Set current projection matrix Note: If you want change the projection matrix, you must first copy it to another instance, then apply the projection matrix via SetProjectionatrix().

/param matrix new projection matrix.

virtual IVirtualDevice& GetVirtualDevice ( ) [pure virtual]

Get virtual device Note: Don't store the virtual device on client side.

You should always use the virtual device in the pipeline context. Because in DX11 multi-thread environment, the device may different in each call. /return virtual device.

virtual INode* GetCurrentNode ( ) [pure virtual]

Get current INode object /return INode object.

virtual const ViewExp* GetViewExp ( ) const [pure virtual]

Get current ViewExp Note: Legacy GraphicsWindow object also available in the ViewExp.

But we recommend to use new VirtualDevice object to do rendering task. /return ViewExp object

virtual const MaxSDK::Graphics::BaseMaterialHandle& GetMaterial ( ) const [pure virtual]

Get current material handle /return current material handle Note: the handle might be invalid.

Which means current item don't have material.

virtual int GetFrameStamp ( ) [pure virtual]

Get current frame stamp return current frame stamp.

virtual TimeValue GetTime ( ) const [pure virtual]

Get current animation time return current animation time.

virtual bool GetAlphaTestEnabled ( ) const [pure virtual]

Get the alpha test enabled flag.

The default value is false (disabled). /return current alpha test flag. True means enabled, false means disabled.

virtual void SetAlphaTestEnabled ( bool  value ) [pure virtual]

Set the alpha test enabled flag.

The default value is false (disabled). /param value new alpha test flag. True means enabled, false means disabled.

virtual CompareFunction GetAlphaTestFunction ( ) [pure virtual]

Gets the alpha test comparison function.

The default value is CompareFunctionAlways. /return current alpha test comparison function.

virtual void SetAlphaTestFunction ( CompareFunction  value ) [pure virtual]

Sets the alpha test comparison function.

The default value is CompareFunctionAlways. /param value the new alpha test comparison function.

virtual float GetAlphaTestReference ( ) const [pure virtual]

Gets the alpha test reference value.

The default value is 0.0f. /return alpha test reference value.

virtual void SetAlphaTestReference ( float  value ) [pure virtual]

Sets the alpha test reference value.

The value must be in the range [0.0, 1.0]. /param value new alpha test reference value

virtual const MaxSDK::Graphics::IViewportViewSetting* GetViewportSettings ( ) const [pure virtual]

Gets viewport settings /return viewport settings.