Classes | Defines | Enumerations | Functions

RTMax.h File Reference

#include <d3dx9.h>
#include "export.h"
#include "maxheap.h"
#include "stdmat.h"
#include "DeprecatedRealtimeMaterialTexturemapShaderAPI.h"
#include "iFnPub.h"

Go to the source code of this file.

Classes

class   IEffectManager
  The Effect Manager is responsible for displaying effect parameters. In 3ds Max this is implemented by the DirectX 9 Material. More...
class   IEffectParser
  Implemented by Effect Parser. More...
class   ILightingData
  Access Lighting data from 3ds Max lights. More...
class   IShadowLightData
  Access shadow data from 3ds Max lights. More...
class   ILightManager
  A basic light container. More...
class   IParameterManager
  A data management class for accessing data required for displaying real time effects. More...
class   EffectDescriptor
  A mini Max class descriptor. This is purely to instantiate multiple objects, and query the Parser ID for the DLL. More...
class   IParserLoader
  A core interface used to store parser DLLs found in the system. More...
class   IRenderMesh
  Maintains a Dx version of the current mesh in the cache. It will render either the 3ds Max mesh or a screen aligned quad. More...
class   IRenderMeshCache
  This class maintains a list of the meshes and RenderMeshes used per instance. It acts as a factory class. More...
class   IEffectFile
  Implemented by a plugin, typically a material, to provide access to the underlying shader code. More...
class   IValidateNodeCallback
  A simple class that a developer must implement if they want to use Scene traversal. More...
class   IDxSceneTransformManager
  An interface to allow access to scene transforms. More...
class   IDxSceneManager
  A system to manage the current state of the Dx Scene and render passes. More...
struct   DxGeneralFunctions

Defines

#define  SAFE_DELETE(p)   { if (p) { delete (p); (p)=NULL; } }
  Some useful memory management macros.
#define  SAFE_DELETE_ARRAY(p)   { if (p) { delete[] (p); (p)=NULL; } }
#define  SAFE_RELEASE(p)   { if (p) { (p)->Release(); (p)=NULL; } }
#define  SUMMER_SDK
  Switch to compile between Dx9.0b and Dx9.0c.
#define  PARSER_LOADER_INTERFACE   Interface_ID(0x7fbe42d6, 0x3e7f412b)
#define  EFFECT_FILE_INTERFACE   Interface_ID(0xc3d2425, 0x637366bc)

Enumerations

enum   MaxSemantics {
  kSemanticUnknown, kSemanticDirection, kSemanticPosition, kSemanticWorld,
  kSemanticView, kSemanticPerspective, kSemanticWorldView, kSemanticProjection,
  kSemanticProjectionI, kSemanticProjectionIT, kSemanticViewI, kSemanticWorldI,
  kSemanticWorldViewI, kSemanticWorldViewProj, kSemanticWorldViewIT, kSemanticViewIT,
  kSemanticWorldIT, kSemanticWorldViewT, kSemanticWorldT, kSemanticViewT,
  kSemanticProjectionT, kSemanticWorldCamPos, kSemanticLightColor, kSemanticNormalMap,
  kSemanticBumpMap, kSemanticDiffuseMap, kSemanticSpecularMap, kSemanticOpacityMap,
  kSemanticLightMap, kSemanticDisplacementMap, kSemanticGlobalTime, kSemanticGlobalBkgrd,
  kSemanticLocalBBMin, kSemanticLocalBBMax, kSemanticLocalBBSize, kSemanticRecipLocalBBSize,
  kSemanticBitmapOverride, kSemanticColorOverride, kSemanticViewportDimensions, kSemanticATan,
  kSemanticDiffuse, kSemanticAmbient, kSemanticSpecular, kSemanticSpecularLevel,
  kSemanticGlossLevel, kSemanticOpacity, kSemanticEmissive, kSemanticReflectionMap,
  kSemanticLightFallOff, kSemanticLightHotSpot, kSemanticDirectionLocal, kSemanticPositionLocal,
  kSemanticLightAttenuation, kSemanticPositionView, kSemanticDirectionView, kSemanticShadowData
}

Functions

IParserLoader GetParserLoader ()

Define Documentation

#define SAFE_DELETE (   p )    { if (p) { delete (p); (p)=NULL; } }

Some useful memory management macros.

Definition at line 23 of file RTMax.h.

#define SAFE_DELETE_ARRAY (   p )    { if (p) { delete[] (p); (p)=NULL; } }

Definition at line 24 of file RTMax.h.

#define SAFE_RELEASE (   p )    { if (p) { (p)->Release(); (p)=NULL; } }

Definition at line 25 of file RTMax.h.

#define SUMMER_SDK

Switch to compile between Dx9.0b and Dx9.0c.

Definition at line 28 of file RTMax.h.

#define PARSER_LOADER_INTERFACE   Interface_ID(0x7fbe42d6, 0x3e7f412b)

Definition at line 501 of file RTMax.h.

#define EFFECT_FILE_INTERFACE   Interface_ID(0xc3d2425, 0x637366bc)

Definition at line 742 of file RTMax.h.


Enumeration Type Documentation

Enumerator:
kSemanticUnknown 
kSemanticDirection 
kSemanticPosition 
kSemanticWorld 
kSemanticView 
kSemanticPerspective 
kSemanticWorldView 
kSemanticProjection 
kSemanticProjectionI 
kSemanticProjectionIT 
kSemanticViewI 
kSemanticWorldI 
kSemanticWorldViewI 
kSemanticWorldViewProj 
kSemanticWorldViewIT 
kSemanticViewIT 
kSemanticWorldIT 
kSemanticWorldViewT 
kSemanticWorldT 
kSemanticViewT 
kSemanticProjectionT 
kSemanticWorldCamPos 
kSemanticLightColor 
kSemanticNormalMap 
kSemanticBumpMap 
kSemanticDiffuseMap 
kSemanticSpecularMap 
kSemanticOpacityMap 
kSemanticLightMap 
kSemanticDisplacementMap 
kSemanticGlobalTime 
kSemanticGlobalBkgrd 
kSemanticLocalBBMin 
kSemanticLocalBBMax 
kSemanticLocalBBSize 
kSemanticRecipLocalBBSize 
kSemanticBitmapOverride 
kSemanticColorOverride 
kSemanticViewportDimensions 
kSemanticATan 
kSemanticDiffuse 
kSemanticAmbient 
kSemanticSpecular 
kSemanticSpecularLevel 
kSemanticGlossLevel 
kSemanticOpacity 
kSemanticEmissive 
kSemanticReflectionMap 
kSemanticLightFallOff 
kSemanticLightHotSpot 
kSemanticDirectionLocal 
kSemanticPositionLocal 
kSemanticLightAttenuation 

See ILightingData::GetAttenuation for details.

kSemanticPositionView 
kSemanticDirectionView 
kSemanticShadowData 

Definition at line 37 of file RTMax.h.


Function Documentation

IParserLoader* GetParserLoader ( ) [inline]