3ds Max C++ API Reference
IActiveShadeFragment Class Referenceabstract

This class is used to manage ActiveShade in a viewport (called ActiveShadeFragment) A view fragment is a part of the viewport drawing system. More...

#include <IActiveshadeFragment.h>

Public Member Functions

virtual ~IActiveShadeFragment ()
 
virtual bool IsEnabled (void) const =0
 Is ActiveShade enabled ? More...
 
virtual void Enable (bool val)=0
 Enable or disable ActiveShade in this viewport (meaning respectively run or stop ActiveShade in this viewport) More...
 
virtual float GetResolutionMultiplier (void) const =0
 Get the ActiveShade fragment resolution multiplier. More...
 
virtual void SetResolutionMultiplier (float factor)=0
 Set the ActiveShade fragment resolution multiplier. More...
 
virtual void SetActiveShadeRenderer (Renderer *pRenderer)=0
 Set the ActiveShade renderer instance to use for running ActiveShade in this viewport. More...
 
virtual RendererGetActiveShadeRenderer (void) const =0
 Get the ActiveShade renderer instance to use for running ActiveShade in this viewport. More...
 

Detailed Description

This class is used to manage ActiveShade in a viewport (called ActiveShadeFragment) A view fragment is a part of the viewport drawing system.

The view fragments are assembled in a network to form a view graph used by the viewport. The ActiveShade fragment is part of these view fragments and is always present in a 3D viewport. There is only one instance per 3D viewport and it can be enabled, meaning ActiveShade is running in this viewport, or disabled : meaning ActiveShade is not running in this viewport. To get access to a IActiveShadeFragment*, please call MaxSDK::Graphics::IActiveShadeFragment* MaxSDK::Graphics::GetActiveShadeFragmentFromActiveViewport(), see at the end of this file. Link your project using this function with ViewSystem.lib as MaxSDK::Graphics::IActiveShadeFragment* MaxSDK::Graphics::GetActiveShadeFragmentFromActiveViewport() is implemented in ViewSystem.

Constructor & Destructor Documentation

◆ ~IActiveShadeFragment()

virtual ~IActiveShadeFragment ( )
inlinevirtual
29 {};

Member Function Documentation

◆ IsEnabled()

virtual bool IsEnabled ( void  ) const
pure virtual

Is ActiveShade enabled ?

Returns
true if ActiveShade is running in this viewport, false if it is not running.

◆ Enable()

virtual void Enable ( bool  val)
pure virtual

Enable or disable ActiveShade in this viewport (meaning respectively run or stop ActiveShade in this viewport)

Parameters
[in]vala boolean which is true to run ActiveShade in this viewport or false to stop it

◆ GetResolutionMultiplier()

virtual float GetResolutionMultiplier ( void  ) const
pure virtual

Get the ActiveShade fragment resolution multiplier.

A multiplier of 0.5 will give a half resolution ActiveShade rendering used and upscaled in the viewport. So a better time performance but resulting in a lower image quality This multiplier has to be a positive, non-zero float number.

Returns
the value of the multiplier.

◆ SetResolutionMultiplier()

virtual void SetResolutionMultiplier ( float  factor)
pure virtual

Set the ActiveShade fragment resolution multiplier.

A multiplier of 0.5 will give a half resolution ActiveShade rendering used and upscaled in the viewport. So a better time performance but resulting in a lower image quality This multiplier has to be a positive, non-zero float number.

Parameters
[in]factorthe value of the multiplier, if the multipler is negative or 0, we set this value to 1.0f.

◆ SetActiveShadeRenderer()

virtual void SetActiveShadeRenderer ( Renderer pRenderer)
pure virtual

Set the ActiveShade renderer instance to use for running ActiveShade in this viewport.

This has to be an ActiveShade compatible renderer (different from Scanline as it is not supported). If none is set, or the renderer instance set is not compatible with ActiveShade, we will use the ActiveShade renderer from the render settings.

Parameters
[in]pRendereran instance of an ActiveShade compatible renderer.

◆ GetActiveShadeRenderer()

virtual Renderer* GetActiveShadeRenderer ( void  ) const
pure virtual

Get the ActiveShade renderer instance to use for running ActiveShade in this viewport.

This can be an ActiveShade renderer taken from the render settings or an instance you have set using SetActiveShadeRenderer(Renderer* pRenderer).

Returns
an ActiveShade renderer pointer used by this viewport if the ActiveShade fragment is enabled.