From 0ea5fc66924303d1bf73ba283a383e2aadee02f2 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sat, 11 Aug 2018 20:21:34 +0200 Subject: Initial commit --- docs/doxygen/nel/a02902.html | 423 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 423 insertions(+) create mode 100644 docs/doxygen/nel/a02902.html (limited to 'docs/doxygen/nel/a02902.html') diff --git a/docs/doxygen/nel/a02902.html b/docs/doxygen/nel/a02902.html new file mode 100644 index 00000000..b26f65a2 --- /dev/null +++ b/docs/doxygen/nel/a02902.html @@ -0,0 +1,423 @@ + + +NeL: NL3D::CMeshMRMSkinnedGeom::CLod class Reference + + + +
+

NL3D::CMeshMRMSkinnedGeom::CLod Class Reference


Detailed Description

+A LOD of the MRM. +

+ +

+Definition at line 347 of file mesh_mrm_skinned.h. + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

void buildPrimitiveBlock (uint renderPass, const CPrimitiveBlock &block)
 CLod ()
void getRdrPassPrimitiveBlock (uint renderPass, CPrimitiveBlock &block) const
void optimizeTriangleOrder ()
void serial (NLMISC::IStream &f)

Data Fields

std::vector< CMRMWedgeGeomGeomorphs
 List of geomorph, for this LOD.

std::vector< uint32InfluencedVertices [NL3D_MESH_SKINNING_MAX_MATRIX]
std::vector< uint32MatrixInfluences
 Skinning: list of Matrix which influence this Lod. So we know what matrix to compute.

uint32 NWedges
 The number of vertex in The VB this Lod needs.

std::vector< CRdrPassRdrPass
 List of rdr pass, for this LOD.

+


Constructor & Destructor Documentation

+

+ + + + +
+ + + + + + + + + +
NL3D::CMeshMRMSkinnedGeom::CLod::CLod  )  [inline]
+
+ + + + + +
+   + + +

+ +

+Definition at line 366 of file mesh_mrm_skinned.h. +

+

00367                 {
+00368                 }
+
+


Member Function Documentation

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
void NL3D::CMeshMRMSkinnedGeom::CLod::buildPrimitiveBlock uint  renderPass,
const CPrimitiveBlock block
+
+ + + + + +
+   + + +

+ +

+Definition at line 131 of file mesh_mrm_skinned.cpp. +

+References count, NL3D::CPrimitiveBlock::getNumTri(), NL3D::CPrimitiveBlock::getTriPointer(), NL3D::CMeshMRMSkinnedGeom::CRdrPass::PBlock, uint, uint16, and uint32. +

+Referenced by optimizeTriangleOrder(). +

+

00132 {
+00133         CRdrPass &rd = RdrPass[renderPass];
+00134         const uint count = block.getNumTri();
+00135         rd.PBlock.resize (3*count);
+00136         uint i;
+00137         const uint32 *triPtr = block.getTriPointer ();
+00138         for (i=0; i<count; i++)
+00139         {
+00140                 rd.PBlock[i*3+0] = (uint16)(triPtr[3*i+0]);
+00141                 rd.PBlock[i*3+1] = (uint16)(triPtr[3*i+1]);
+00142                 rd.PBlock[i*3+2] = (uint16)(triPtr[3*i+2]);
+00143         }
+00144 }
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
void NL3D::CMeshMRMSkinnedGeom::CLod::getRdrPassPrimitiveBlock uint  renderPass,
CPrimitiveBlock block
const
+
+ + + + + +
+   + + +

+ +

+Definition at line 114 of file mesh_mrm_skinned.cpp. +

+References count, NL3D::CMeshMRMSkinnedGeom::CRdrPass::getNumTriangle(), NL3D::CMeshMRMSkinnedGeom::CRdrPass::PBlock, NL3D::CPrimitiveBlock::setNumLine(), NL3D::CPrimitiveBlock::setNumQuad(), NL3D::CPrimitiveBlock::setNumTri(), NL3D::CPrimitiveBlock::setTri(), and uint. +

+Referenced by optimizeTriangleOrder(), and NL3D::CMeshMRMSkinnedGeom::render(). +

+

00115 {
+00116         const CRdrPass &rd = RdrPass[renderPass];
+00117         block.setNumLine (0);
+00118         block.setNumQuad (0);
+00119         const uint count = rd.getNumTriangle();
+00120         block.setNumTri (count);
+00121 
+00122         uint i;
+00123         for (i=0; i<count; i++)
+00124         {
+00125                 block.setTri (i, rd.PBlock[i*3+0], rd.PBlock[i*3+1], rd.PBlock[i*3+2]);
+00126         }
+00127 }
+
+

+ + + + +
+ + + + + + + + + +
void NL3D::CMeshMRMSkinnedGeom::CLod::optimizeTriangleOrder  ) 
+
+ + + + + +
+   + + +

+ +

+Definition at line 93 of file mesh_mrm_skinned.cpp. +

+References buildPrimitiveBlock(), getRdrPassPrimitiveBlock(), NL3D::CStripifier::optimizeTriangles(), and uint. +

+

00094 {
+00095         CStripifier             stripifier;
+00096 
+00097         // for all rdrpass
+00098         for(uint  rp=0; rp<RdrPass.size(); rp++ )
+00099         {
+00100                 // stripify list of triangles of this pass.
+00101                 CRdrPass        &pass= RdrPass[rp];
+00102 
+00103                 CPrimitiveBlock block;
+00104                 getRdrPassPrimitiveBlock(rp, block);
+00105 
+00106                 stripifier.optimizeTriangles(block, block);
+00107 
+00108                 buildPrimitiveBlock(rp, block);
+00109         }
+00110 }
+
+

+ + + + +
+ + + + + + + + + + +
void NL3D::CMeshMRMSkinnedGeom::CLod::serial NLMISC::IStream f  ) 
+
+ + + + + +
+   + + +

+

+


Field Documentation

+

+ + + + +
+ + +
std::vector<CMRMWedgeGeom> NL3D::CMeshMRMSkinnedGeom::CLod::Geomorphs +
+
+ + + + + +
+   + + +

+List of geomorph, for this LOD. +

+ +

+Definition at line 353 of file mesh_mrm_skinned.h. +

+Referenced by NL3D::CMRMBuilder::buildMeshBuildMrm(), NL3D::CMeshMRMSkinnedGeom::render(), and NL3D::CMeshMRMSkinnedGeom::updateRawSkinNormal().

+

+ + + + +
+ + +
std::vector<uint32> NL3D::CMeshMRMSkinnedGeom::CLod::InfluencedVertices[NL3D_MESH_SKINNING_MAX_MATRIX] +
+
+ + + + + +
+   + + +

+Skinning: list of influenced vertices to compute, for this lod only. There is 4 array, 0th is for vertices which have only one matrix. 1st if for vertices which have only 2 matrix .... +

+Definition at line 360 of file mesh_mrm_skinned.h. +

+Referenced by NL3D::CMRMBuilder::buildMeshBuildMrm(), and NL3D::CMeshMRMSkinnedGeom::updateRawSkinNormal().

+

+ + + + +
+ + +
std::vector<uint32> NL3D::CMeshMRMSkinnedGeom::CLod::MatrixInfluences +
+
+ + + + + +
+   + + +

+Skinning: list of Matrix which influence this Lod. So we know what matrix to compute. +

+ +

+Definition at line 362 of file mesh_mrm_skinned.h. +

+Referenced by NL3D::CMeshMRMSkinnedGeom::applyArrayShadowSkin(), and NL3D::CMRMBuilder::buildMeshBuildMrm().

+

+ + + + +
+ + +
uint32 NL3D::CMeshMRMSkinnedGeom::CLod::NWedges +
+
+ + + + + +
+   + + +

+The number of vertex in The VB this Lod needs. +

+ +

+Definition at line 351 of file mesh_mrm_skinned.h. +

+Referenced by NL3D::CMRMBuilder::buildMeshBuildMrm(), and NL3D::CMeshMRMSkinnedGeom::renderSkinGroupGeom().

+

+ + + + +
+ + +
std::vector<CRdrPass> NL3D::CMeshMRMSkinnedGeom::CLod::RdrPass +
+
+ + + + + +
+   + + +

+List of rdr pass, for this LOD. +

+ +

+Definition at line 355 of file mesh_mrm_skinned.h. +

+Referenced by NL3D::CMeshMRMSkinnedGeom::build(), NL3D::CMRMBuilder::buildMeshBuildMrm(), NL3D::CMeshMRMSkinnedGeom::profileSceneRender(), NL3D::CMeshMRMSkinnedGeom::render(), NL3D::CMeshMRMSkinnedGeom::renderSkinGroupGeom(), NL3D::CMeshMRMSkinnedGeom::renderSkinGroupPrimitives(), NL3D::CMeshMRMSkinnedGeom::renderSkinGroupSpecularRdrPass(), and NL3D::CMeshMRMSkinnedGeom::updateRawSkinNormal().

+


The documentation for this class was generated from the following files: +
Generated on Tue Mar 16 06:54:30 2004 for NeL by + +doxygen +1.3.6
+ + -- cgit v1.2.1