From 0ea5fc66924303d1bf73ba283a383e2aadee02f2 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sat, 11 Aug 2018 20:21:34 +0200 Subject: Initial commit --- .../nel/classNL3D_1_1IMeshVertexProgram.html | 462 +++++++++++++++++++++ 1 file changed, 462 insertions(+) create mode 100644 docs/doxygen/nel/classNL3D_1_1IMeshVertexProgram.html (limited to 'docs/doxygen/nel/classNL3D_1_1IMeshVertexProgram.html') diff --git a/docs/doxygen/nel/classNL3D_1_1IMeshVertexProgram.html b/docs/doxygen/nel/classNL3D_1_1IMeshVertexProgram.html new file mode 100644 index 00000000..d6e0348d --- /dev/null +++ b/docs/doxygen/nel/classNL3D_1_1IMeshVertexProgram.html @@ -0,0 +1,462 @@ + + + + nevrax.org : docs + + + + + + + + + + + + + + +
# Home   # nevrax.com   
+ + + + +
Nevrax
+ + + + + + + + + + +
+ + +
+ Nevrax.org
+ + + + + + + +
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
+
+ + +
+ + +
+Docs + +
+  + + + + + +
Documentation 
+ +
+Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  
+

NL3D::IMeshVertexProgram Class Reference

Interface to a CMeshGeom/CMeshMRMGeom Special VertexProgram Effect. +More... +

+#include <mesh_vertex_program.h> +

+

Inheritance diagram for NL3D::IMeshVertexProgram: +

+ +NLMISC::IStreamable +NLMISC::CRefCount +NLMISC::IClassable +NL3D::CMeshVPPerPixelLight +NL3D::CMeshVPWindTree + +List of all members. + + + + + + + + + + + + + + + +

Public Methods

 IMeshVertexProgram ()
 Constructor. More...

virtual ~IMeshVertexProgram ()
virtual void initInstance (CMeshBaseInstance *mbi)=0
 Called at creation of an instance, to setup some information directly in the CMeshBaseInstance. More...

virtual bool begin (IDriver *drv, CScene *scene, CMeshBaseInstance *mbi, const NLMISC::CMatrix &invertedModelMat, const NLMISC::CVector &viewerPos)=0
 Called to setup constant / activate VertexProgram. More...

virtual void end (IDriver *drv)=0
 Typically disable the VertexProgram, or do some uninit. More...

virtual void setupForMaterial (const CMaterial &mat, IDriver *drv, CScene *scene, CVertexBuffer *vb)=0
 Setup this shader for the given material. More...

virtual void setupForMaterial (const CMaterial &mat, IDriver *drv, CScene *scene, IVertexBufferHard *vb)=0
 The same as setupForMaterial, but with a hard vb. More...

virtual bool needTangentSpace () const
+

Detailed Description

+Interface to a CMeshGeom/CMeshMRMGeom Special VertexProgram Effect. +

+

+Author:
+Lionel Berenguier , Nevrax France
+Date:
+2002
+

+ +

+Definition at line 59 of file mesh_vertex_program.h.


Constructor & Destructor Documentation

+

+ + + + +
+ + + + + + + + + +
NL3D::IMeshVertexProgram::IMeshVertexProgram   [inline]
+
+ + + + + +
+   + + +

+Constructor. +

+ +

+Definition at line 64 of file mesh_vertex_program.h.

+

+ + + + +
+ + + + + + + + + +
virtual NL3D::IMeshVertexProgram::~IMeshVertexProgram   [inline, virtual]
+
+ + + + + +
+   + + +

+ +

+Definition at line 65 of file mesh_vertex_program.h.

+


Member Function Documentation

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual bool NL3D::IMeshVertexProgram::begin IDriver  drv,
CScene  scene,
CMeshBaseInstance  mbi,
const NLMISC::CMatrix  invertedModelMat,
const NLMISC::CVector  viewerPos
[pure virtual]
+
+ + + + + +
+   + + +

+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.

+Parameters:
+ + + + + + +
drv  +driver where to setup VP.
scene  +retrieve some useFull scene info (windPower, time ...)
mbi  +the mesh instance to retrieve some instance setup.
mat  +the matrix to use (may not be the one of mbi)
viewerPos  +position of the viewer in world space.
+
+

+Implemented in NL3D::CMeshVPPerPixelLight.

+

+ + + + +
+ + + + + + + + + + +
virtual void NL3D::IMeshVertexProgram::end IDriver  drv [pure virtual]
+
+ + + + + +
+   + + +

+Typically disable the VertexProgram, or do some uninit. +

+ +

+Implemented in NL3D::CMeshVPPerPixelLight.

+

+ + + + +
+ + + + + + + + + + +
virtual void NL3D::IMeshVertexProgram::initInstance CMeshBaseInstance  mbi [pure virtual]
+
+ + + + + +
+   + + +

+Called at creation of an instance, to setup some information directly in the CMeshBaseInstance. +

+ +

+Implemented in NL3D::CMeshVPPerPixelLight.

+

+ + + + +
+ + + + + + + + + +
virtual bool NL3D::IMeshVertexProgram::needTangentSpace   const [inline, virtual]
+
+ + + + + +
+   + + +

+ +

+Reimplemented in NL3D::CMeshVPPerPixelLight. +

+Definition at line 106 of file mesh_vertex_program.h.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual void NL3D::IMeshVertexProgram::setupForMaterial const CMaterial  mat,
IDriver  drv,
CScene  scene,
IVertexBufferHard  vb
[pure virtual]
+
+ + + + + +
+   + + +

+The same as setupForMaterial, but with a hard vb. +

+ +

+Implemented in NL3D::CMeshVPPerPixelLight.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual void NL3D::IMeshVertexProgram::setupForMaterial const CMaterial  mat,
IDriver  drv,
CScene  scene,
CVertexBuffer  vb
[pure virtual]
+
+ + + + + +
+   + + +

+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.

+


The documentation for this class was generated from the following file: + + + +
                                                                                                                                                                    +
+ + -- cgit v1.2.1