LLDrawPoolAvatar Class Reference

#include <lldrawpoolavatar.h>

Inheritance diagram for LLDrawPoolAvatar:

Inheritance graph
[legend]
Collaboration diagram for LLDrawPoolAvatar:

Collaboration graph
[legend]

List of all members.

Public Types

enum  { SHADER_LEVEL_BUMP = 2, SHADER_LEVEL_CLOTH = 3 }
enum  { VERTEX_DATA_MASK }

Public Member Functions

virtual U32 getVertexDataMask ()
virtual S32 getVertexShaderLevel () const
 LLDrawPoolAvatar ()
LLDrawPoolinstancePool ()
S32 getNumPasses ()
void beginRenderPass (S32 pass)
void endRenderPass (S32 pass)
void prerender ()
void render (S32 pass=0)
void renderForSelect ()
void beginRigid ()
void beginFootShadow ()
void beginSkinned ()
void endRigid ()
void endFootShadow ()
void endSkinned ()
LLViewerImagegetDebugTexture ()
LLColor3 getDebugColor () const
void renderAvatars (LLVOAvatar *single_avatar, S32 pass=-1)

Static Public Member Functions

static LLMatrix4getModelView ()

Protected Attributes

S32 mNumFaces


Detailed Description

Definition at line 39 of file lldrawpoolavatar.h.


Member Enumeration Documentation

anonymous enum

Enumerator:
SHADER_LEVEL_BUMP 
SHADER_LEVEL_CLOTH 

Definition at line 44 of file lldrawpoolavatar.h.

anonymous enum

Enumerator:
VERTEX_DATA_MASK 

Definition at line 50 of file lldrawpoolavatar.h.


Constructor & Destructor Documentation

LLDrawPoolAvatar::LLDrawPoolAvatar (  ) 

Definition at line 90 of file lldrawpoolavatar.cpp.

Referenced by instancePool().

Here is the caller graph for this function:


Member Function Documentation

virtual U32 LLDrawPoolAvatar::getVertexDataMask (  )  [inline, virtual]

Implements LLDrawPool.

Definition at line 59 of file lldrawpoolavatar.h.

References VERTEX_DATA_MASK.

S32 LLDrawPoolAvatar::getVertexShaderLevel (  )  const [virtual]

Reimplemented from LLDrawPool.

Definition at line 107 of file lldrawpoolavatar.cpp.

References sShaderLevel.

LLMatrix4 & LLDrawPoolAvatar::getModelView (  )  [static]

Definition at line 128 of file lldrawpoolavatar.cpp.

References gGLModelView, and LLMatrix4::initRows().

Referenced by LLViewerJointMesh::uploadJointMatrices().

Here is the call graph for this function:

Here is the caller graph for this function:

LLDrawPool * LLDrawPoolAvatar::instancePool (  )  [virtual]

Implements LLDrawPool.

Definition at line 100 of file lldrawpoolavatar.cpp.

References LLDrawPoolAvatar().

Here is the call graph for this function:

S32 LLDrawPoolAvatar::getNumPasses (  )  [virtual]

Reimplemented from LLDrawPool.

Definition at line 144 of file lldrawpoolavatar.cpp.

References LLPipeline::sImpostorRender.

Referenced by renderAvatars().

Here is the caller graph for this function:

void LLDrawPoolAvatar::beginRenderPass ( S32  pass  )  [virtual]

Reimplemented from LLDrawPool.

Definition at line 161 of file lldrawpoolavatar.cpp.

References beginFootShadow(), beginRigid(), beginSkinned(), LLFastTimer::FTM_RENDER_CHARACTERS, LLPipeline::sImpostorRender, and LLVertexBuffer::unbind().

Referenced by renderAvatars().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLDrawPoolAvatar::endRenderPass ( S32  pass  )  [virtual]

Reimplemented from LLDrawPool.

Definition at line 187 of file lldrawpoolavatar.cpp.

References endFootShadow(), endRigid(), endSkinned(), LLFastTimer::FTM_RENDER_CHARACTERS, and LLPipeline::sImpostorRender.

Referenced by renderAvatars().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLDrawPoolAvatar::prerender (  )  [virtual]

Implements LLDrawPool.

Definition at line 113 of file lldrawpoolavatar.cpp.

References LLShaderMgr::getVertexShaderLevel(), LLDrawPool::mVertexShaderLevel, sBufferUsage, LLShaderMgr::SHADER_AVATAR, and sShaderLevel.

Referenced by renderAvatars().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLDrawPoolAvatar::render ( S32  pass = 0  )  [virtual]

Implements LLDrawPool.

Definition at line 149 of file lldrawpoolavatar.cpp.

References LLFastTimer::FTM_RENDER_CHARACTERS, NULL, renderAvatars(), and LLPipeline::sImpostorRender.

Here is the call graph for this function:

void LLDrawPoolAvatar::renderForSelect (  )  [virtual]

void LLDrawPoolAvatar::beginRigid (  ) 

Definition at line 226 of file lldrawpoolavatar.cpp.

References LLGLSLShader::bind(), LLPipeline::canUseVertexShaders(), gObjectSimpleProgram, gObjectSimpleWaterProgram, gPipeline, NULL, and LLPipeline::sUnderWaterRender.

Referenced by beginRenderPass().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLDrawPoolAvatar::beginFootShadow (  ) 

Definition at line 210 of file lldrawpoolavatar.cpp.

References LLPipeline::enableLightsFullbright(), gPipeline, llclamp(), LLVOAvatar::sNumVisibleAvatars, LLPipeline::sReflectionRender, and LLVOAvatar::sRenderDistance.

Referenced by beginRenderPass().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLDrawPoolAvatar::beginSkinned (  ) 

void LLDrawPoolAvatar::endRigid (  ) 

Definition at line 250 of file lldrawpoolavatar.cpp.

References LLDrawPool::mVertexShaderLevel, NULL, sShaderLevel, and LLGLSLShader::unbind().

Referenced by endRenderPass().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLDrawPoolAvatar::endFootShadow (  ) 

Definition at line 221 of file lldrawpoolavatar.cpp.

References LLPipeline::enableLightsDynamic(), and gPipeline.

Referenced by endRenderPass().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLDrawPoolAvatar::endSkinned (  ) 

LLViewerImage * LLDrawPoolAvatar::getDebugTexture (  )  [virtual]

Reimplemented from LLDrawPool.

Definition at line 658 of file lldrawpoolavatar.cpp.

References LLFace::getDrawable(), LLViewerObject::getTEImage(), LLDrawable::getVObj(), LLFacePool::mReferences, and NULL.

Here is the call graph for this function:

LLColor3 LLDrawPoolAvatar::getDebugColor (  )  const

Definition at line 676 of file lldrawpoolavatar.cpp.

void LLDrawPoolAvatar::renderAvatars ( LLVOAvatar single_avatar,
S32  pass = -1 
)

Definition at line 350 of file lldrawpoolavatar.cpp.

References LLShaderMgr::AVATAR_GRAVITY, LLShaderMgr::AVATAR_MATRIX, AVATAR_RENDER_PASS_SINGLE, LLShaderMgr::AVATAR_SINWAVE, LLShaderMgr::AVATAR_WIND, LLGLImmediate::begin(), beginRenderPass(), CLOTHING_GRAVITY_EFFECT, LLGLImmediate::color4f(), LLPipeline::enableLightsAvatarEdit(), LLGLImmediate::end(), endRenderPass(), gAvatarMatrixParam, LLPointer< Type >::get(), LLFace::getDrawable(), LLSingleton< LLViewerCamera >::getInstance(), LLCoordFrame::getMatrixToLocal(), getNumPasses(), LLViewerObject::getPositionAgent(), LLDrawable::getVObj(), LLJoint::getWorldPosition(), gGL, gPipeline, gRenderAvatar, LLPipeline::hasRenderDebugFeatureMask(), i, LLViewerObject::isDead(), LLVOAvatar::isFullyLoaded(), LLVOAvatar::isImpostor(), LLPointer< Type >::isNull(), LLVertexBuffer::LINES, LLViewerObject::mDrawable, LLFacePool::mDrawFace, LLVOAvatar::mIsSelf, LLVOAvatar::mPelvisp, LLVOAvatar::mRipplePhase, LLVOAvatar::mRoot, LLVOAvatar::mSpecialRenderMode, LLGLSLShader::mUniform, LLVector4::mV, LLVOAvatar::mWindVec, noise1(), OGL_TO_CFR_ROTATION, prerender(), LLPipeline::RENDER_DEBUG_FEATURE_FOOT_SHADOWS, LLVOAvatar::renderCollisionVolumes(), LLVOAvatar::renderFootShadows(), LLVOAvatar::renderImpostor(), LLVOAvatar::renderRigid(), LLVOAvatar::renderSkinned(), S32, LLAgent::sDebugDisplayTarget, LLFacePool::LLOverrideFaceColor::setColor(), LLVector4::setVec(), SHADER_LEVEL_CLOTH, LLVOAvatar::sNumVisibleAvatars, LLPipeline::sReflectionRender, sShaderLevel, LLVOAvatar::sShowCollisionVolumes, LLPipeline::sUnderWaterRender, LLGLImmediate::vertex3fv(), LLGLSLShader::vertexAttrib4fv(), and VW.

Referenced by LLVisualParamHint::render(), LLImagePreviewAvatar::render(), LLPreviewAnimation::render(), and render().

Here is the call graph for this function:

Here is the caller graph for this function:


Member Data Documentation

Definition at line 42 of file lldrawpoolavatar.h.


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

Generated on Fri May 16 08:44:02 2008 for SecondLife by  doxygen 1.5.5