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 ()
LLDrawPool * instancePool ()
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 ()
LLViewerImage * getDebugTexture ()
LLColor3 getDebugColor () const
void renderAvatars (LLVOAvatar *single_avatar, S32 pass=-1)

Static Public Member Functions

static LLMatrix4 & getModelView ()

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