#include <mesh_vertex_program.h>
Inheritance diagram for NL3D::IMeshVertexProgram:
Nevrax France
Definition at line 59 of file mesh_vertex_program.h.
Public Member Functions | |
virtual bool | begin (IDriver *drv, CScene *scene, CMeshBaseInstance *mbi, const NLMISC::CMatrix &invertedModelMat, const NLMISC::CVector &viewerPos)=0 |
virtual void | end (IDriver *drv)=0 |
virtual std::string | getClassName ()=0 |
virtual float | getMaxVertexMove () |
const sint & | getRefCount () const |
IMeshVertexProgram () | |
Constructor. | |
virtual void | initInstance (CMeshBaseInstance *mbi)=0 |
virtual bool | needTangentSpace () const |
virtual void | serial (IStream &f)=0 |
virtual void | setupForMaterial (const CMaterial &mat, IDriver *drv, CScene *scene, IVertexBufferHard *vb)=0 |
The same as setupForMaterial, but with a hard vb. | |
virtual void | setupForMaterial (const CMaterial &mat, IDriver *drv, CScene *scene, CVertexBuffer *vb)=0 |
virtual | ~IMeshVertexProgram () |
Data Fields | |
sint | crefs |
CPtrInfo * | pinfo |
Static Public Attributes | |
CPtrInfo | NullPtrInfo |
Friends | |
struct | CPtrInfo |
|
Constructor.
Definition at line 64 of file mesh_vertex_program.h.
00064 {} |
|
Definition at line 65 of file mesh_vertex_program.h.
00065 {} |
|
Called to setup constant / activate VertexProgram. (called before activate of the VB). The result tells wether the vertex program will be used in the given context. If this is the case, a call to setupMaterial must be done for each material being rendered with this V.P. After all primitive have been rendered, end() must be called.
Implemented in NL3D::CMeshVPPerPixelLight, and NL3D::CMeshVPWindTree. |
|
Reimplemented in NL3D::CMeshVPWindTree. Definition at line 123 of file mesh_vertex_program.h.
00123 {}; |
|
Reimplemented in NL3D::CMeshVPWindTree. Definition at line 122 of file mesh_vertex_program.h.
00122 {}; |
|
Typically disable the VertexProgram, or do some uninit. Implemented in NL3D::CMeshVPPerPixelLight, and NL3D::CMeshVPWindTree. |
|
Reimplemented in NL3D::CMeshVPWindTree. Definition at line 124 of file mesh_vertex_program.h.
00124 {} |
|
Implemented in NLAIAGENT::CNumericIndex, NLAIC::IPointerGestion, NLAIC::CIdentType, and CAutomataDesc. Referenced by NLMISC::CClassRegistry::checkObject(), and NL3D::GetTextureSize(). |
|
This return the (over-evaluated) max delta the VertexProgram apply to vertex (in world basis) NB: This method call is relevant only after begin() or beginMBRInstance() Reimplemented in NL3D::CMeshVPWindTree. Definition at line 131 of file mesh_vertex_program.h.
00131 {return 0;}
|
|
Definition at line 70 of file smart_ptr.h. References NLMISC::CRefCount::crefs, and sint.
00071 { 00072 return crefs; 00073 } |
|
Called at creation of an instance, to setup some information directly in the CMeshBaseInstance Implemented in NL3D::CMeshVPPerPixelLight, and NL3D::CMeshVPWindTree. |
|
Reimplemented in NL3D::CMeshVPWindTree. Definition at line 121 of file mesh_vertex_program.h.
00121 {return false;} |
|
Reimplemented in NL3D::CMeshVPPerPixelLight. Definition at line 106 of file mesh_vertex_program.h.
00106 { return false; } |
|
|
The same as setupForMaterial, but with a hard vb.
Implemented in NL3D::CMeshVPPerPixelLight, and NL3D::CMeshVPWindTree. |
|
Setup this shader for the given material. This may disable the shader if necessary. This is why the vertex buffer is needed : when disabling the v.p we may need to reactivate it Implemented in NL3D::CMeshVPPerPixelLight, and NL3D::CMeshVPWindTree. |
|
Reimplemented in NL3D::CMeshVPWindTree. Definition at line 120 of file mesh_vertex_program.h.
00120 { return false; } |
|
Definition at line 67 of file smart_ptr.h. |
|
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(). |