Classes | Defines | Functions

render.h File Reference

#include "maxheap.h"
#include "sfx.h"
#include "buildver.h"
#include "iTargetedIO.h"
#include "RendType.h"
#include "object.h"

Go to the source code of this file.

Classes

class   DefaultLight
  Describes a default light. More...
class   ViewParams
  Describes the properties of a view that is being rendered. More...
class   RendParams
  This class has a set of data members, and these parameters are passed to the renderer when the renderer is opened. More...
class   FrameRendParams
  This is passed to the renderer on every frame. More...
class   RendParamDlg
  An instance of this class is created by Renderer::CreateParamDlg(). More...
class   RendPickProc
  An instance of this class is passed to IRendParams::SetPickMode(). More...
class   IRendParams
  This is the interface given to a renderer, or atmospheric effect when it needs to display its parameters. More...
class   RenderInstance
  This class is available in release 2.0 and later only. More...
class   RendProgressCallback
  This class is a callback passed in to the renderer. More...
class   Renderer
  This is the base class for any renderer plugin. More...
class   RendContext
  This class is passed into the method ObjLightDesc::Update(). More...
struct   SubRendParams
  This structure contains information on rendering for Mirror and Automatic Cubic materials. More...
class   RenderMapsContext
  An instance of this class is passed into the MtlBase::BuildMaps() method. More...
class   IScanRenderer
  This class provides an interface into the standard 3ds Max scanline renderer. More...
class   IScanRenderer2
class   IRendererRequirements

Defines

#define  FIELD_EVEN   0
#define  FIELD_ODD   1
#define  RENDER_R25SHADOWS   (1L << 2)
  Removes a fix made for R3 that cleaned up the edges of shadows where objects intersect-- DS 8/28/00 This goes in the extraFlags field of RendParams.
#define  RENDER_HIDE_FROZEN   (1L << 3)
  Tell the renderer to hide frozen objects This goes in the extraFlags field of RendParams.
#define  RP_ANTIALIAS_OFF   200
  An index to an external command.
#define  BROWSE_MATSONLY   (1<<0)
  Materials only.
#define  BROWSE_MAPSONLY   (1<<1)
  Maps only.
#define  BROWSE_INCNONE   (1<<2)
  Include 'None' as an option.
#define  BROWSE_INSTANCEONLY   (1<<3)
  Only allow instances, no copy.
#define  BROWSE_TO_MEDIT_SLOT   (1<<4)
  browsing to medit slot
#define  BROWSE_EXISTING_ONLY   (1<<5)
  Browse for existing materials only; no new materials.
#define  INST_HIDE   (1<<0)
  instance is hidden
#define  INST_CLIP   (1<<1)
  clip instance: ray tracers should skip it
#define  INST_BLUR   (1<<2)
  secondary motion blur instance
#define  INST_RCV_SHADOWS   (1<<3)
  instance receives shadows
#define  INST_TM_NEGPARITY   (1<<4)
  mesh is inside-out: need to reverse normals on-the-fly
#define  INST_MTL_BYFACE   (1<<5)
  instance's object supports mtl-by-face interface ( chkmtlapi.h)
#define  RENDPROG_CONTINUE   1
  Continue to Process.
#define  RENDPROG_ABORT   0
  Stop Processing.
#define  FIELD_FIRST   0
#define  FIELD_SECOND   1
#define  FIELD_NONE   -1
#define  RENDMAP_SHOW_NODE   1
#define  DONT_CLIP   1.0E38f
#define  SCANLINE_RENDERER_INTERFACE   Interface_ID(0x342323, 0x551665)
#define  SCANLINE_RENDERER3_INTERFACE   Interface_ID(0x44e40bbc, 0x52bc7cd1)
#define  GetScanRendererInterface(obj)   ((IScanRenderer2*)obj->GetInterface(SCANLINE_RENDERER_INTERFACE))
#define  GetScanRendererInterface3(obj)   ((IScanRenderer3*)obj->GetInterface(SCANLINE_RENDERER3_INTERFACE))
#define  IRENDERERREQUIREMENTS_INTERFACE_ID   Interface_ID(0x27c85c29, 0xfab6ee0)
  Interface ID for the class IRendererRequirements.

Functions

IRendererRequirements GetRendererRequirements (Renderer *renderer)
bool  RendererHasRequirement (Renderer *renderer, IRendererRequirements::Requirement requirement)

Define Documentation

#define FIELD_EVEN   0

Definition at line 21 of file render.h.

#define FIELD_ODD   1

Definition at line 22 of file render.h.

#define RP_ANTIALIAS_OFF   200

An index to an external command.

Can be accepted as the argument to Execute()

Definition at line 388 of file render.h.

#define RENDMAP_SHOW_NODE   1

Definition at line 1490 of file render.h.

#define DONT_CLIP   1.0E38f

Definition at line 1610 of file render.h.

#define GetScanRendererInterface (   obj )    ((IScanRenderer2*)obj->GetInterface(SCANLINE_RENDERER_INTERFACE))

Definition at line 1619 of file render.h.

#define GetScanRendererInterface3 (   obj )    ((IScanRenderer3*)obj->GetInterface(SCANLINE_RENDERER3_INTERFACE))

Definition at line 1620 of file render.h.

#define IRENDERERREQUIREMENTS_INTERFACE_ID   Interface_ID(0x27c85c29, 0xfab6ee0)

Interface ID for the class IRendererRequirements.

Definition at line 1931 of file render.h.


Function Documentation

IRendererRequirements* GetRendererRequirements ( Renderer renderer ) [inline]

Definition at line 1976 of file render.h.

                                                                          {
    return (renderer != NULL) ? static_cast<IRendererRequirements*>(renderer->GetInterface(IRENDERERREQUIREMENTS_INTERFACE_ID)) : NULL;
}
bool RendererHasRequirement ( Renderer renderer,
IRendererRequirements::Requirement  requirement 
) [inline]

Definition at line 1980 of file render.h.

                                                                                                     {
    IRendererRequirements* iRequirements = GetRendererRequirements(renderer);
    return (iRequirements != NULL) ? iRequirements->HasRequirement(requirement) : false;
}