3ds Max C++ API Reference
Loading...
Searching...
No Matches
RTMax.h File Reference
#include <d3d9.h>
#include <d3dx9.h>
#include "export.h"
#include "maxheap.h"
#include "stdmat.h"
#include "iFnPub.h"

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

Macros

#define SAFE_DELETE(p)
 Some useful memory management macros.
#define SAFE_DELETE_ARRAY(p)
#define SAFE_RELEASE(p)
#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

IParserLoaderGetParserLoader ()

Macro Definition Documentation

◆ SAFE_DELETE

#define SAFE_DELETE ( p)
Value:
{ if (p) { delete (p); (p)=NULL; } }
#define NULL
Definition autoptr.h:18

Some useful memory management macros.

◆ SAFE_DELETE_ARRAY

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

◆ SAFE_RELEASE

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

◆ SUMMER_SDK

#define SUMMER_SDK

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

◆ PARSER_LOADER_INTERFACE

#define PARSER_LOADER_INTERFACE   Interface_ID(0x7fbe42d6, 0x3e7f412b)

◆ EFFECT_FILE_INTERFACE

#define EFFECT_FILE_INTERFACE   Interface_ID(0xc3d2425, 0x637366bc)

Enumeration Type Documentation

◆ MaxSemantics

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 
38{
96};
@ kSemanticSpecularMap
Definition RTMax.h:65
@ kSemanticProjectionI
Definition RTMax.h:47
@ kSemanticWorldViewIT
Definition RTMax.h:53
@ kSemanticNormalMap
Definition RTMax.h:62
@ kSemanticRecipLocalBBSize
Definition RTMax.h:74
@ kSemanticDiffuseMap
Definition RTMax.h:64
@ kSemanticEmissive
Definition RTMax.h:85
@ kSemanticView
Definition RTMax.h:43
@ kSemanticGlobalTime
Definition RTMax.h:69
@ kSemanticWorldViewT
Definition RTMax.h:56
@ kSemanticPosition
Definition RTMax.h:41
@ kSemanticViewI
Definition RTMax.h:49
@ kSemanticLocalBBMin
Definition RTMax.h:71
@ kSemanticSpecularLevel
Definition RTMax.h:82
@ kSemanticReflectionMap
Definition RTMax.h:86
@ kSemanticLightFallOff
Definition RTMax.h:87
@ kSemanticWorldViewI
Definition RTMax.h:51
@ kSemanticDirection
Definition RTMax.h:40
@ kSemanticBumpMap
Definition RTMax.h:63
@ kSemanticViewT
Definition RTMax.h:58
@ kSemanticLocalBBSize
Definition RTMax.h:73
@ kSemanticWorldViewProj
Definition RTMax.h:52
@ kSemanticViewportDimensions
Definition RTMax.h:77
@ kSemanticProjection
Definition RTMax.h:46
@ kSemanticWorldIT
Definition RTMax.h:55
@ kSemanticBitmapOverride
Definition RTMax.h:75
@ kSemanticColorOverride
Definition RTMax.h:76
@ kSemanticDiffuse
Definition RTMax.h:79
@ kSemanticShadowData
Definition RTMax.h:95
@ kSemanticGlossLevel
Definition RTMax.h:83
@ kSemanticWorldCamPos
Definition RTMax.h:60
@ kSemanticPerspective
Definition RTMax.h:44
@ kSemanticOpacity
Definition RTMax.h:84
@ kSemanticWorldView
Definition RTMax.h:45
@ kSemanticATan
Definition RTMax.h:78
@ kSemanticDirectionView
Definition RTMax.h:94
@ kSemanticOpacityMap
Definition RTMax.h:66
@ kSemanticViewIT
Definition RTMax.h:54
@ kSemanticLocalBBMax
Definition RTMax.h:72
@ kSemanticPositionLocal
Definition RTMax.h:90
@ kSemanticLightMap
Definition RTMax.h:67
@ kSemanticLightColor
Definition RTMax.h:61
@ kSemanticLightHotSpot
Definition RTMax.h:88
@ kSemanticUnknown
Definition RTMax.h:39
@ kSemanticDirectionLocal
Definition RTMax.h:89
@ kSemanticWorldI
Definition RTMax.h:50
@ kSemanticLightAttenuation
See ILightingData::GetAttenuation for details.
Definition RTMax.h:92
@ kSemanticGlobalBkgrd
Definition RTMax.h:70
@ kSemanticProjectionT
Definition RTMax.h:59
@ kSemanticWorldT
Definition RTMax.h:57
@ kSemanticProjectionIT
Definition RTMax.h:48
@ kSemanticSpecular
Definition RTMax.h:81
@ kSemanticPositionView
Definition RTMax.h:93
@ kSemanticWorld
Definition RTMax.h:42
@ kSemanticDisplacementMap
Definition RTMax.h:68
@ kSemanticAmbient
Definition RTMax.h:80

Function Documentation

◆ GetParserLoader()

IParserLoader * GetParserLoader ( )
inline
#define PARSER_LOADER_INTERFACE
Definition RTMax.h:502
A core interface used to store parser DLLs found in the system.
Definition RTMax.h:538
CoreExport Interface * GetCOREInterface()