# 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::CTessFace Class Reference

A Landscape Triangle. More...

#include <tessellation.h>

Inheritance diagram for NL3D::CTessFace:

NL3D::CTessNodeList NL3D::CTessFacePListNode List of all members.

Tile Material Infos (uvs...).

enum  TTileUvId { IdUvBase = 0, IdUvLeft, IdUvRight }
uint8 TileId
CTileMaterialTileMaterial
CTileFaceTileFaces [NL3D_MAX_TILE_FACE]

Public Types


Public Methods

 CTessFace ()
 ~CTessFace ()
bool isLeaf () const
bool isRectangular () const
bool hasVertex (CTessVertex *v) const
bool hasEdge (CTessVertex *v0, CTessVertex *v1) const
void changeNeighbor (CTessFace *from, CTessFace *to)
void computeTileMaterial ()
void releaseTileMaterial ()
float computeNearLimit ()
void updateErrorMetric ()
void split (bool propagateSplit=true)
bool merge ()
void refineAll ()
 refine the node, and his sons. Refine all nodes. More...

void updateRefineSplit ()
void updateRefineMerge ()
void computeSplitPoint ()
 compute the SplitPoint. More...

void unbind ()
void forceMerge ()
CTessFace * linkTessFaceWithEdge (const NLMISC::CVector2f &uv0, const NLMISC::CVector2f &uv1, CTessFace *linkTo)
bool updateBindEdge (CTessFace *&edgeFace, bool &splitWanted)
void updateBind ()
void updateBindAndSplit ()
void forceMergeAtTileLevel ()
void averageTesselationVertices ()
void refreshTesselationGeometry ()
void deleteTileUvs ()
void recreateTileUvs ()
void getTesselatedPos (const CUV &uv, bool verifInclusion, CVector &ret)
void appendTessellationLeaves (std::vector< const CTessFace * > &leaves) const

Public Attributes

CTessFarVertexFVBase
CTessFarVertexFVLeft
CTessFarVertexFVRight
geometric tesselation.
CPatchPatch
CTessVertexVBase
CTessVertexVLeft
CTessVertexVRight
CTessFace * FBase
CTessFace * FLeft
CTessFace * FRight
CTessFace * Father
CTessFace * SonLeft
CTessFace * SonRight
CParamCoord PVBase
CParamCoord PVLeft
CParamCoord PVRight
uint8 Level
bool RecursMarkCanMerge
bool RecursMarkForceMerge
Error metric.
sint ErrorMetricDate
float Size
CVector SplitPoint
float ErrorMetric
float MaxDistToSplitPoint

Static Public Attributes

CTessFace MultipleBindFace

Private Methods

void computeTileErrorMetric ()
float computeTileEMForUpdateRefine (float distSplitPoint, float distMinFace, float nearLimit)
bool canMerge (bool testEm)
void splitRectangular (bool propagateSplit)
void doMerge ()
void heritTileMaterial ()
void initTileUvRGBA (sint pass, bool alpha, CParamCoord pointCoord, CParamCoord middleCoord, CUV &uv)
void initTileUvLightmap (CParamCoord pointCoord, CParamCoord middleCoord, CUV &uv)
void initTileUvDLM (CParamCoord pointCoord, CUV &uv)
void updateNearFarVertices ()
void computeTesselatedPos (const CUV &uv, CVector &ret)
UV mgt.
void allocTileUv (TTileUvId id)
void deleteTileUv (TTileUvId id)
void copyTileUv (TTileUvId id, CTessFace *srcFace, TTileUvId srcId)
void heritTileUv (CTessFace *baseFace)
void checkCreateFillTileVB (TTileUvId id)
void checkFillTileVB (TTileUvId id)
void buildTileFaces ()
void deleteTileFaces ()
bool emptyTileFaces ()

Static Private Methods

bool sameTile (const CTessFace *a, const CTessFace *b)

Static Private Attributes

CTessFace CantMergeFace

Detailed Description

A Landscape Triangle.

MemSize: 28*4 octets. => for 100K faces, it takes 11.2 Mo.

Author:
Lionel Berenguier , Nevrax France
Date:
2000

Definition at line 214 of file tessellation.h.


Member Enumeration Documentation

enum NL3D::CTessFace::TTileUvId
 

Enumeration values:
IdUvBase 
IdUvLeft 
IdUvRight 

Definition at line 245 of file tessellation.h.


Constructor & Destructor Documentation

NL3D::CTessFace::CTessFace  
 

Definition at line 161 of file tessellation.cpp.

References ErrorMetricDate, Father, FBase, FLeft, FRight, Level, NL3D_MAX_TILE_FACE, NL3D_PROFILE_LAND_ADD, Patch, NL3D::ProfNTessFace, RecursMarkCanMerge, RecursMarkForceMerge, SonLeft, SonRight, TileFaces, TileMaterial, VBase, VLeft, and VRight.

Referenced by averageTesselationVertices, changeNeighbor, linkTessFaceWithEdge, sameTile, split, splitRectangular, unbind, updateBindAndSplit, and updateBindEdge.

NL3D::CTessFace::~CTessFace  
 

Definition at line 190 of file tessellation.cpp.

References NL3D_PROFILE_LAND_ADD, and NL3D::ProfNTessFace.


Member Function Documentation

void NL3D::CTessFace::allocTileUv TTileUvId    id [private]
 

Definition at line 367 of file tessellation.cpp.

References id, IdUvBase, IdUvLeft, IdUvRight, NL3D_MAX_TILE_FACE, NL3D_TILE_PASS_RGB0, nlassert, nlstop, Patch, TileFaces, TileMaterial, VBase, VLeft, and VRight.

Referenced by computeTileMaterial.

void NL3D::CTessFace::appendTessellationLeaves std::vector< const CTessFace * > &    leaves const
 

Definition at line 3189 of file tessellation.cpp.

References isLeaf, SonLeft, and SonRight.

void NL3D::CTessFace::averageTesselationVertices  
 

Definition at line 2463 of file tessellation.cpp.

References CantMergeFace, CTessFace, FBase, FLeft, isLeaf, isRectangular, nlassert, Patch, SonLeft, and SonRight.

void NL3D::CTessFace::buildTileFaces   [private]
 

Definition at line 506 of file tessellation.cpp.

References IdUvBase, IdUvLeft, IdUvRight, NL3D_MAX_TILE_FACE, nlassert, Patch, TileFaces, and TileMaterial.

Referenced by computeTileMaterial.

bool NL3D::CTessFace::canMerge bool    testEm [private]
 

Definition at line 1544 of file tessellation.cpp.

References CantMergeFace, ErrorMetric, FBase, FLeft, isLeaf, isRectangular, nlassert, RecursMarkCanMerge, SonLeft, SonRight, and updateErrorMetric.

Referenced by merge, refineAll, and updateRefineMerge.

void NL3D::CTessFace::changeNeighbor CTessFace *    from,
CTessFace *    to
[inline]
 

Definition at line 277 of file tessellation.h.

References CTessFace.

void NL3D::CTessFace::checkCreateFillTileVB TTileUvId    id [private]
 

Definition at line 398 of file tessellation.cpp.

References id, NL3D_MAX_TILE_FACE, NL3D_TILE_PASS_RGB0, nlassert, Patch, and TileFaces.

Referenced by computeTileMaterial.

void NL3D::CTessFace::checkFillTileVB TTileUvId    id [private]
 

Definition at line 419 of file tessellation.cpp.

References id, NL3D_MAX_TILE_FACE, NL3D_TILE_PASS_RGB0, nlassert, Patch, and TileFaces.

float NL3D::CTessFace::computeNearLimit  
 

Definition at line 211 of file tessellation.cpp.

References Level, nlassert, and Patch.

Referenced by computeTileErrorMetric, split, unbind, updateRefineMerge, and updateRefineSplit.

void NL3D::CTessFace::computeSplitPoint  
 

compute the SplitPoint.

VBase / VLeft and VRight must be valid. Also compute MaxDistToSplitPoint.

Definition at line 340 of file tessellation.cpp.

References isRectangular, MaxDistToSplitPoint, SplitPoint, VBase, VLeft, and VRight.

void NL3D::CTessFace::computeTesselatedPos const CUV &    uv,
CVector &    ret
[private]
 

Definition at line 3151 of file tessellation.cpp.

References PVBase, PVLeft, PVRight, VBase, VLeft, and VRight.

Referenced by getTesselatedPos.

float NL3D::CTessFace::computeTileEMForUpdateRefine float    distSplitPoint,
float    distMinFace,
float    nearLimit
[inline, private]
 

Definition at line 307 of file tessellation.cpp.

References Size, and NLMISC::sqr.

Referenced by updateRefineMerge, and updateRefineSplit.

void NL3D::CTessFace::computeTileErrorMetric   [private]
 

Definition at line 229 of file tessellation.cpp.

References computeNearLimit, ErrorMetric, NLMISC::sqr, VBase, VLeft, and VRight.

Referenced by updateErrorMetric.

void NL3D::CTessFace::computeTileMaterial  
 

Definition at line 670 of file tessellation.cpp.

References allocTileUv, buildTileFaces, checkCreateFillTileVB, copyTileUv, FBase, IdUvBase, IdUvLeft, IdUvRight, initTileUvDLM, initTileUvLightmap, initTileUvRGBA, NL3D_MAX_TILE_FACE, NL3D_MAX_TILE_PASS, NL3D_TILE_PASS_ADD, NL3D_TILE_PASS_LIGHTMAP, NL3D_TILE_PASS_RGB0, NL3D_TILE_PASS_RGB1, NL3D_TILE_PASS_RGB2, nlassert, Patch, PVBase, PVLeft, PVRight, TileFaces, TileId, and TileMaterial.

void NL3D::CTessFace::copyTileUv TTileUvId    id,
CTessFace *    srcFace,
TTileUvId    srcId
[private]
 

Definition at line 461 of file tessellation.cpp.

References NL3D_MAX_TILE_FACE, NL3D_TILE_PASS_RGB0, nlassert, and TileFaces.

Referenced by computeTileMaterial.

void NL3D::CTessFace::deleteTileFaces   [private]
 

Definition at line 523 of file tessellation.cpp.

References NL3D_MAX_TILE_FACE, nlassert, Patch, TileFaces, and TileMaterial.

Referenced by releaseTileMaterial.

void NL3D::CTessFace::deleteTileUv TTileUvId    id [private]
 

Definition at line 439 of file tessellation.cpp.

References id, NL3D_MAX_TILE_FACE, NL3D_TILE_PASS_RGB0, nlassert, Patch, TileFaces, and TileMaterial.

Referenced by releaseTileMaterial.

void NL3D::CTessFace::deleteTileUvs  
 

Definition at line 2964 of file tessellation.cpp.

References FBase, IdUvBase, isLeaf, nlassert, Patch, sameTile, SonLeft, and SonRight.

void NL3D::CTessFace::doMerge   [private]
 

Definition at line 1599 of file tessellation.cpp.

References Father, FBase, FLeft, FRight, IdUvBase, isLeaf, isRectangular, nlassert, Patch, sameTile, SonLeft, and SonRight.

Referenced by merge.

bool NL3D::CTessFace::emptyTileFaces   [private]
 

Definition at line 544 of file tessellation.cpp.

References NL3D_MAX_TILE_FACE, and TileFaces.

void NL3D::CTessFace::forceMerge  
 

Definition at line 2407 of file tessellation.cpp.

References CantMergeFace, FBase, FLeft, isLeaf, isRectangular, merge, RecursMarkForceMerge, SonLeft, and SonRight.

Referenced by forceMergeAtTileLevel.

void NL3D::CTessFace::forceMergeAtTileLevel  
 

Definition at line 2443 of file tessellation.cpp.

References CantMergeFace, forceMerge, isLeaf, Level, Patch, SonLeft, and SonRight.

void NL3D::CTessFace::getTesselatedPos const CUV &    uv,
bool    verifInclusion,
CVector &    ret
 

Definition at line 3096 of file tessellation.cpp.

References computeTesselatedPos, isLeaf, isRectangular, PVBase, PVLeft, PVRight, SonLeft, and SonRight.

bool NL3D::CTessFace::hasEdge CTessVertex   v0,
CTessVertex   v1
const [inline]
 

Definition at line 276 of file tessellation.h.

References hasVertex.

bool NL3D::CTessFace::hasVertex CTessVertex   v const [inline]
 

Definition at line 275 of file tessellation.h.

References v.

Referenced by hasEdge.

void NL3D::CTessFace::heritTileMaterial   [private]
 

Definition at line 3048 of file tessellation.cpp.

References FBase, IdUvBase, IdUvLeft, IdUvRight, sameTile, SonLeft, SonRight, TileId, and TileMaterial.

Referenced by recreateTileUvs, and split.

void NL3D::CTessFace::heritTileUv CTessFace *    baseFace [private]
 

Definition at line 485 of file tessellation.cpp.

References IdUvBase, IdUvLeft, IdUvRight, NL3D_MAX_TILE_FACE, NL3D_TILE_PASS_RGB0, nlassert, and TileFaces.

void NL3D::CTessFace::initTileUvDLM CParamCoord    pointCoord,
CUV &    uv
[private]
 

Definition at line 650 of file tessellation.cpp.

References nlassert, and Patch.

Referenced by computeTileMaterial.

void NL3D::CTessFace::initTileUvLightmap CParamCoord    pointCoord,
CParamCoord    middleCoord,
CUV &    uv
[private]
 

Definition at line 631 of file tessellation.cpp.

References Patch, and TileMaterial.

Referenced by computeTileMaterial.

void NL3D::CTessFace::initTileUvRGBA sint    pass,
bool    alpha,
CParamCoord    pointCoord,
CParamCoord    middleCoord,
CUV &    uv
[private]
 

Definition at line 560 of file tessellation.cpp.

References alpha, Patch, TileId, and v.

Referenced by computeTileMaterial.

bool NL3D::CTessFace::isLeaf   const [inline]
 

Definition at line 273 of file tessellation.h.

Referenced by appendTessellationLeaves, averageTesselationVertices, canMerge, deleteTileUvs, doMerge, forceMerge, forceMergeAtTileLevel, getTesselatedPos, linkTessFaceWithEdge, merge, recreateTileUvs, refineAll, refreshTesselationGeometry, split, unbind, updateBind, updateBindAndSplit, updateRefineMerge, and updateRefineSplit.

bool NL3D::CTessFace::isRectangular   const
 

Definition at line 2949 of file tessellation.cpp.

References Level, and Patch.

Referenced by averageTesselationVertices, canMerge, computeSplitPoint, doMerge, forceMerge, getTesselatedPos, split, unbind, and updateBindAndSplit.

CTessFace * NL3D::CTessFace::linkTessFaceWithEdge const NLMISC::CVector2f   uv0,
const NLMISC::CVector2f   uv1,
CTessFace *    linkTo
 

Definition at line 2899 of file tessellation.cpp.

References CTessFace, FBase, FLeft, FRight, isLeaf, NL3D::matchEdge, nlassert, PVBase, PVLeft, PVRight, SonLeft, and SonRight.

bool NL3D::CTessFace::merge  
 

Definition at line 1757 of file tessellation.cpp.

References canMerge, doMerge, isLeaf, NL3D_PROFILE_LAND_ADD, nlassert, and NL3D::ProfNMerges.

Referenced by forceMerge, refineAll, and updateRefineMerge.

void NL3D::CTessFace::recreateTileUvs  
 

Definition at line 3012 of file tessellation.cpp.

References heritTileMaterial, isLeaf, Patch, SonLeft, and SonRight.

void NL3D::CTessFace::refineAll  
 

refine the node, and his sons. Refine all nodes.

Definition at line 1778 of file tessellation.cpp.

References canMerge, ErrorMetric, isLeaf, Level, merge, NL3D_PROFILE_LAND_ADD, Patch, NL3D::ProfNRefineComputeFaces, NL3D::ProfNRefineFaces, NL3D::ProfNRefineLeaves, SonLeft, SonRight, split, and updateErrorMetric.

void NL3D::CTessFace::refreshTesselationGeometry  
 

Definition at line 2514 of file tessellation.cpp.

References isLeaf, Patch, SonLeft, and SonRight.

void NL3D::CTessFace::releaseTileMaterial  
 

Definition at line 830 of file tessellation.cpp.

References deleteTileFaces, deleteTileUv, FBase, IdUvBase, IdUvLeft, IdUvRight, nlassert, Patch, and TileMaterial.

bool NL3D::CTessFace::sameTile const CTessFace *    a,
const CTessFace *    b
[inline, static, private]
 

Definition at line 347 of file tessellation.h.

References CTessFace.

Referenced by deleteTileUvs, doMerge, and heritTileMaterial.

void NL3D::CTessFace::split bool    propagateSplit = true
 

Definition at line 1278 of file tessellation.cpp.

References computeNearLimit, CTessFace, Father, FBase, FLeft, FRight, FVBase, FVLeft, FVRight, heritTileMaterial, IdUvBase, isLeaf, isRectangular, Level, NL3D_PROFILE_LAND_ADD, nlassert, Patch, NL3D::ProfNSplits, PVBase, PVLeft, PVRight, Size, SonLeft, SonRight, splitRectangular, VBase, VLeft, and VRight.

Referenced by refineAll, updateBindAndSplit, and updateRefineSplit.

void NL3D::CTessFace::splitRectangular bool    propagateSplit [private]
 

Definition at line 906 of file tessellation.cpp.

References CTessFace, FBase, IdUvBase, nlassert, and Patch.

Referenced by split.

void NL3D::CTessFace::unbind  
 

Definition at line 2269 of file tessellation.cpp.

References computeNearLimit, CTessFace, FBase, FLeft, FRight, isLeaf, isRectangular, nlassert, Patch, Size, SonLeft, SonRight, VBase, VLeft, and VRight.

void NL3D::CTessFace::updateBind  
 

Definition at line 2855 of file tessellation.cpp.

References FBase, FLeft, FRight, isLeaf, SonLeft, SonRight, updateBindAndSplit, and updateBindEdge.

void NL3D::CTessFace::updateBindAndSplit  
 

Definition at line 2638 of file tessellation.cpp.

References CantMergeFace, CTessFace, FBase, FLeft, FRight, isLeaf, isRectangular, nlassert, Patch, SonLeft, SonRight, split, and updateBindEdge.

Referenced by updateBind.

bool NL3D::CTessFace::updateBindEdge CTessFace *&    edgeFace,
bool &    splitWanted
 

Definition at line 2539 of file tessellation.cpp.

References CTessFace, and nlstop.

Referenced by updateBind, and updateBindAndSplit.

void NL3D::CTessFace::updateErrorMetric  
 

Definition at line 273 of file tessellation.cpp.

References computeTileErrorMetric, ErrorMetric, ErrorMetricDate, Level, MaxDistToSplitPoint, Patch, Size, SplitPoint, and NLMISC::sqr.

Referenced by canMerge, refineAll, updateRefineMerge, and updateRefineSplit.

void NL3D::CTessFace::updateNearFarVertices   [private]
 

Definition at line 868 of file tessellation.cpp.

References FVBase, FVLeft, FVRight, IdUvBase, IdUvLeft, IdUvRight, NL3D_MAX_TILE_FACE, nlassert, Patch, PVBase, PVLeft, PVRight, TileFaces, VBase, VLeft, and VRight.

void NL3D::CTessFace::updateRefineMerge  
 

Definition at line 2103 of file tessellation.cpp.

References canMerge, computeNearLimit, computeTileEMForUpdateRefine, ErrorMetric, isLeaf, Level, merge, min, NL3D_PROFILE_LAND_ADD, NL3D_REFINE_MERGE_THRESHOLD, nlassert, Patch, NL3D::ProfNRefineFaces, NL3D::ProfNRefineInTileTransition, Size, SplitPoint, updateErrorMetric, VBase, VLeft, and VRight.

void NL3D::CTessFace::updateRefineSplit  
 

Definition at line 1895 of file tessellation.cpp.

References computeNearLimit, computeTileEMForUpdateRefine, ErrorMetric, isLeaf, Level, min, NL3D_PROFILE_LAND_ADD, NL3D_TESS_USE_QUADRANT_THRESHOLD, nlassert, Patch, NL3D::ProfNRefineFaces, NL3D::ProfNRefineInTileTransition, NL3D::ProfNRefineWithLowDistance, Size, split, SplitPoint, NL3D::CTessFacePListNode::unlinkInPList, updateErrorMetric, VBase, VLeft, and VRight.


Member Data Documentation

CTessFace NL3D::CTessFace::CantMergeFace [static, private]
 

Definition at line 156 of file tessellation.cpp.

Referenced by averageTesselationVertices, canMerge, forceMerge, forceMergeAtTileLevel, and updateBindAndSplit.

float NL3D::CTessFace::ErrorMetric
 

Definition at line 257 of file tessellation.h.

Referenced by canMerge, computeTileErrorMetric, refineAll, updateErrorMetric, updateRefineMerge, and updateRefineSplit.

sint NL3D::CTessFace::ErrorMetricDate
 

Definition at line 254 of file tessellation.h.

Referenced by CTessFace, and updateErrorMetric.

CTessFace* NL3D::CTessFace::Father
 

Definition at line 224 of file tessellation.h.

Referenced by CTessFace, doMerge, and split.

CTessFace* NL3D::CTessFace::FBase
 

Definition at line 223 of file tessellation.h.

Referenced by averageTesselationVertices, canMerge, computeTileMaterial, CTessFace, deleteTileUvs, doMerge, forceMerge, heritTileMaterial, linkTessFaceWithEdge, releaseTileMaterial, split, splitRectangular, unbind, updateBind, and updateBindAndSplit.

CTessFace * NL3D::CTessFace::FLeft
 

Definition at line 223 of file tessellation.h.

Referenced by averageTesselationVertices, canMerge, CTessFace, doMerge, forceMerge, linkTessFaceWithEdge, split, unbind, updateBind, and updateBindAndSplit.

CTessFace * NL3D::CTessFace::FRight
 

Definition at line 223 of file tessellation.h.

Referenced by CTessFace, doMerge, linkTessFaceWithEdge, split, unbind, updateBind, and updateBindAndSplit.

CTessFarVertex* NL3D::CTessFace::FVBase
 

Definition at line 263 of file tessellation.h.

Referenced by split, and updateNearFarVertices.

CTessFarVertex * NL3D::CTessFace::FVLeft
 

Definition at line 263 of file tessellation.h.

Referenced by split, and updateNearFarVertices.

CTessFarVertex * NL3D::CTessFace::FVRight
 

Definition at line 263 of file tessellation.h.

Referenced by split, and updateNearFarVertices.

uint8 NL3D::CTessFace::Level
 

Definition at line 228 of file tessellation.h.

Referenced by computeNearLimit, CTessFace, forceMergeAtTileLevel, isRectangular, refineAll, split, updateErrorMetric, updateRefineMerge, and updateRefineSplit.

float NL3D::CTessFace::MaxDistToSplitPoint
 

Definition at line 258 of file tessellation.h.

Referenced by computeSplitPoint, and updateErrorMetric.

CTessFace NL3D::CTessFace::MultipleBindFace [static]
 

Definition at line 157 of file tessellation.cpp.

CPatch* NL3D::CTessFace::Patch
 

Definition at line 221 of file tessellation.h.

Referenced by allocTileUv, averageTesselationVertices, buildTileFaces, checkCreateFillTileVB, checkFillTileVB, computeNearLimit, computeTileMaterial, CTessFace, deleteTileFaces, deleteTileUv, deleteTileUvs, doMerge, forceMergeAtTileLevel, initTileUvDLM, initTileUvLightmap, initTileUvRGBA, isRectangular, recreateTileUvs, refineAll, refreshTesselationGeometry, releaseTileMaterial, split, splitRectangular, unbind, updateBindAndSplit, updateErrorMetric, updateNearFarVertices, updateRefineMerge, and updateRefineSplit.

CParamCoord NL3D::CTessFace::PVBase
 

Definition at line 226 of file tessellation.h.

Referenced by computeTesselatedPos, computeTileMaterial, getTesselatedPos, linkTessFaceWithEdge, split, and updateNearFarVertices.

CParamCoord NL3D::CTessFace::PVLeft
 

Definition at line 226 of file tessellation.h.

Referenced by computeTesselatedPos, computeTileMaterial, getTesselatedPos, linkTessFaceWithEdge, split, and updateNearFarVertices.

CParamCoord NL3D::CTessFace::PVRight
 

Definition at line 226 of file tessellation.h.

Referenced by computeTesselatedPos, computeTileMaterial, getTesselatedPos, linkTessFaceWithEdge, split, and updateNearFarVertices.

bool NL3D::CTessFace::RecursMarkCanMerge
 

Definition at line 230 of file tessellation.h.

Referenced by canMerge, and CTessFace.

bool NL3D::CTessFace::RecursMarkForceMerge
 

Definition at line 231 of file tessellation.h.

Referenced by CTessFace, and forceMerge.

float NL3D::CTessFace::Size
 

Definition at line 255 of file tessellation.h.

Referenced by computeTileEMForUpdateRefine, split, unbind, updateErrorMetric, updateRefineMerge, and updateRefineSplit.

CTessFace * NL3D::CTessFace::SonLeft
 

Definition at line 224 of file tessellation.h.

Referenced by appendTessellationLeaves, averageTesselationVertices, canMerge, CTessFace, deleteTileUvs, doMerge, forceMerge, forceMergeAtTileLevel, getTesselatedPos, heritTileMaterial, linkTessFaceWithEdge, recreateTileUvs, refineAll, refreshTesselationGeometry, split, unbind, updateBind, and updateBindAndSplit.

CTessFace * NL3D::CTessFace::SonRight
 

Definition at line 224 of file tessellation.h.

Referenced by appendTessellationLeaves, averageTesselationVertices, canMerge, CTessFace, deleteTileUvs, doMerge, forceMerge, forceMergeAtTileLevel, getTesselatedPos, heritTileMaterial, linkTessFaceWithEdge, recreateTileUvs, refineAll, refreshTesselationGeometry, split, unbind, updateBind, and updateBindAndSplit.

CVector NL3D::CTessFace::SplitPoint
 

Definition at line 256 of file tessellation.h.

Referenced by computeSplitPoint, updateErrorMetric, updateRefineMerge, and updateRefineSplit.

CTileFace* NL3D::CTessFace::TileFaces[NL3D_MAX_TILE_FACE]
 

Definition at line 242 of file tessellation.h.

Referenced by allocTileUv, buildTileFaces, checkCreateFillTileVB, checkFillTileVB, computeTileMaterial, copyTileUv, CTessFace, deleteTileFaces, deleteTileUv, emptyTileFaces, heritTileUv, and updateNearFarVertices.

uint8 NL3D::CTessFace::TileId
 

Definition at line 238 of file tessellation.h.

Referenced by computeTileMaterial, heritTileMaterial, and initTileUvRGBA.

CTileMaterial* NL3D::CTessFace::TileMaterial
 

Definition at line 240 of file tessellation.h.

Referenced by allocTileUv, buildTileFaces, computeTileMaterial, CTessFace, deleteTileFaces, deleteTileUv, heritTileMaterial, initTileUvLightmap, and releaseTileMaterial.

CTessVertex* NL3D::CTessFace::VBase
 

Definition at line 222 of file tessellation.h.

Referenced by allocTileUv, computeSplitPoint, computeTesselatedPos, computeTileErrorMetric, CTessFace, split, unbind, updateNearFarVertices, updateRefineMerge, and updateRefineSplit.

CTessVertex * NL3D::CTessFace::VLeft
 

Definition at line 222 of file tessellation.h.

Referenced by allocTileUv, computeSplitPoint, computeTesselatedPos, computeTileErrorMetric, CTessFace, split, unbind, updateNearFarVertices, updateRefineMerge, and updateRefineSplit.

CTessVertex * NL3D::CTessFace::VRight
 

Definition at line 222 of file tessellation.h.

Referenced by allocTileUv, computeSplitPoint, computeTesselatedPos, computeTileErrorMetric, CTessFace, split, unbind, updateNearFarVertices, updateRefineMerge, and updateRefineSplit.


The documentation for this class was generated from the following files: