#include <vertex_program.h>
Inheritance diagram for NL3D::CVertexProgram:
D3D / OPENGL compatibility notes: ---------------------------------
To make your program compatible with D3D and OPENGL nel drivers, please follow thoses directives to write your vertex programs
-> Thoses programs work without any change under OpenGL. -> Direct3D driver implementation will have to modify the syntax on the fly before the setup like this:
Behaviour of LOG may change depending on implementation: You can only expect to have dest.z = log2(abs(src.w)). LIT may or may not clamp the specular exponent to [-128, 128] (not done when EXT_vertex_shader is used for example ..)
Depending on the implementation, some optimizations can be achieved by masking the unused output values of instructions as LIT, EXPP ..
Nevrax France
Definition at line 92 of file vertex_program.h.
Public Member Functions | |
CVertexProgram (const char *program) | |
Constructor. | |
const std::string & | getProgram () const |
Get the program. | |
const sint & | getRefCount () const |
virtual | ~CVertexProgram () |
Destructor. | |
Data Fields | |
NLMISC::CRefPtr< IVertexProgramDrvInfos > | _DrvInfo |
The driver informations. For the driver implementation only. | |
sint | crefs |
CPtrInfo * | pinfo |
Static Public Attributes | |
CPtrInfo | NullPtrInfo |
Private Attributes | |
std::string | _Program |
The progam. | |
Friends | |
struct | CPtrInfo |
|
Constructor.
Definition at line 53 of file vertex_program.cpp. References _Program, and program.
|
|
Destructor.
Definition at line 60 of file vertex_program.cpp. References _DrvInfo, and NLMISC::CRefPtr< IVertexProgramDrvInfos >::kill().
|
|
Get the program.
Definition at line 103 of file vertex_program.h. References _Program.
00103 { return _Program; }; |
|
Definition at line 70 of file smart_ptr.h. References NLMISC::CRefCount::crefs, and sint.
00071 { 00072 return crefs; 00073 } |
|
Definition at line 67 of file smart_ptr.h. |
|
The driver informations. For the driver implementation only.
Definition at line 111 of file vertex_program.h. Referenced by NL3D::CDriverGL::setupGlArraysForEXTVertexShader(), NL3D::CDriverGL::toggleGlArraysForEXTVertexShader(), and ~CVertexProgram(). |
|
The progam.
Definition at line 107 of file vertex_program.h. Referenced by CVertexProgram(), and getProgram(). |
|
Definition at line 79 of file smart_ptr.h. Referenced by NLMISC::CRefCount::CRefCount(), NLMISC::CRefCount::getRefCount(), and NLMISC::CRefCount::~CRefCount(). |
|
Referenced by NLMISC::CRefCount::CRefCount(). |
|
Definition at line 80 of file smart_ptr.h. Referenced by NLMISC::CRefCount::CRefCount(), and NLMISC::CRefCount::~CRefCount(). |