#include <TargetRendererImpl.h>

Public Types | |
| enum | HighlightType { eNoHighlight, ePlayerHighlight, eOtherHighlight } |
Public Member Functions | |
| TargetRendererImpl (Target *target) | |
| virtual | ~TargetRendererImpl () |
| virtual void | drawParticle (float distance)=0 |
| virtual void | simulate (float frameTime)=0 |
| virtual void | moved () |
| void | setMakeParticle () |
| void | createParticle () |
Static Public Member Functions | |
| static void | setHighlightType (HighlightType type) |
Protected Member Functions | |
| void | drawShield (float shieldHit, float totalTime) |
| void | drawParachute () |
| bool | getVisible () |
| float | getTargetSize () |
| float | getTargetFade (float distance, float size) |
| void | storeTarget2DPos () |
| void | setMovedPatch (TargetVisibilityPatch *newPatch) |
Protected Attributes | |
| bool | tree_ |
| bool | matrixCached_ |
| Matrix16 | cachedMatrix_ |
| Target * | target_ |
| TargetVisibilityPatch * | currentVisibilityPatch_ |
| int | patchEpoc_ |
| bool | particleMade_ |
| double | posX_ |
| double | posY_ |
| double | posZ_ |
Static Protected Attributes | |
| static HighlightType | highlightType_ |
Definition at line 30 of file TargetRendererImpl.h.
Definition at line 45 of file TargetRendererImpl.h.
| TargetRendererImpl::TargetRendererImpl | ( | Target * | target | ) |
Definition at line 46 of file TargetRendererImpl.cpp.
| TargetRendererImpl::~TargetRendererImpl | ( | ) | [virtual] |
| virtual void TargetRendererImpl::drawParticle | ( | float | distance | ) | [pure virtual] |
Implemented in TargetRendererImplTank, and TargetRendererImplTarget.
Referenced by TargetParticleRenderer::renderParticle().
| virtual void TargetRendererImpl::simulate | ( | float | frameTime | ) | [pure virtual] |
Implemented in TargetRendererImplTank, and TargetRendererImplTarget.
Referenced by RenderTargets::Renderer3D::simulate().
| void TargetRendererImpl::moved | ( | ) | [virtual] |
Implements TargetRenderer.
Definition at line 60 of file TargetRendererImpl.cpp.
References Target::getAlive(), Target::getLife(), TargetLife::getTargetPosition(), VisibilityPatchGrid::getTargetVisibilityPatch(), VisibilityPatchGrid::instance(), matrixCached_, setMovedPatch(), and target_.
| void TargetRendererImpl::setMakeParticle | ( | ) | [inline] |
Definition at line 42 of file TargetRendererImpl.h.
References particleMade_.
Referenced by TargetParticleRenderer::recycleParticle().
| static void TargetRendererImpl::setHighlightType | ( | HighlightType | type | ) | [inline, static] |
Definition at line 51 of file TargetRendererImpl.h.
References highlightType_.
Referenced by TutorialDialog::processEvents().
| void TargetRendererImpl::createParticle | ( | ) |
Definition at line 389 of file TargetRendererImpl.cpp.
References TargetShield::getCurrentShield(), TargetState::getFalling(), TargetParticleRenderer::getInstance(), Vector::getNullVector(), ScorchedClient::getParticleEngine(), Target::getPlayerId(), Target::getShield(), Target::getTargetState(), ScorchedClient::instance(), Target::isTarget(), Particle::life_, particleMade_, Particle::renderer_, Particle::setParticle(), target_, tree_, and Particle::userData_.
Referenced by TargetRendererImplTarget::render(), and TargetRendererImplTank::render().
| void TargetRendererImpl::drawShield | ( | float | shieldHit, | |
| float | totalTime | |||
| ) | [protected] |
Definition at line 131 of file TargetRendererImpl.cpp.
References fixed::asFloat(), GLState::BLEND_ON, GLTexture::create(), GLTexture::draw(), Hemisphere::draw(), GLCameraFrustum::drawBilboard(), Accessory::getAction(), ShieldRound::getActualRadius(), Shield::getColor(), TargetShield::getCurrentShield(), S3D::getDataFile(), getFastCos(), getFastSin(), TargetLife::getFloatPosition(), ShieldRound::getGlow(), ShieldRound::getHalfShield(), Target::getLife(), Shield::getRound(), Target::getShield(), Shield::getShieldType(), ShieldSquare::getSize(), GL_COMPILE, GL_FALSE, GL_ONE, GL_ONE_MINUS_SRC_ALPHA, GL_QUAD_STRIP, GL_QUADS, GL_SRC_ALPHA, GL_TRUE, glBegin(), glBlendFunc(), glCallList(), glColor4f(), glDepthMask(), glEnd(), glEndList(), glGenLists(), glNewList(), glPopMatrix(), glPushMatrix(), glRotatef(), glScalef(), glTexCoord2f(), glTranslatef(), glVertex3f(), GLCameraFrustum::instance(), ImageFactory::loadImageHandle(), PI, Shield::ShieldTypeRoundMag, target_, and GLState::TEXTURE_ON.
Referenced by TargetRendererImplTarget::drawParticle(), and TargetRendererImplTank::drawParticle().
| void TargetRendererImpl::drawParachute | ( | ) | [protected] |
Definition at line 345 of file TargetRendererImpl.cpp.
References TargetState::getFalling(), TargetLife::getFloatPosition(), Target::getLife(), TankFalling::getParachute(), Target::getTargetState(), GL_COMPILE, GL_LINES, GL_TRIANGLE_FAN, glBegin(), glCallList(), glColor3f(), glEnd(), glEndList(), glGenLists(), glNewList(), glPopMatrix(), glPushMatrix(), glTranslatef(), glVertex3f(), listNo, target_, and GLState::TEXTURE_OFF.
Referenced by TargetRendererImplTarget::drawParticle(), and TargetRendererImplTank::drawParticle().
| bool TargetRendererImpl::getVisible | ( | ) | [protected] |
Definition at line 123 of file TargetRendererImpl.cpp.
References currentVisibilityPatch_, Target::getAlive(), TargetVisibilityPatch::getVisible(), and target_.
Referenced by TargetRendererImplTarget::drawParticle(), and TargetRendererImplTank::drawParticle().
| float TargetRendererImpl::getTargetSize | ( | ) | [protected] |
Definition at line 435 of file TargetRendererImpl.cpp.
References fixed::asFloat(), TargetLife::getFloatBoundingSize(), Target::getLife(), Target::getShield(), TargetShield::getShieldBoundingSize(), MAX, and target_.
Referenced by TargetRendererImplTarget::render(), and TargetRendererImplTank::render().
| float TargetRendererImpl::getTargetFade | ( | float | distance, | |
| float | size | |||
| ) | [protected] |
Definition at line 444 of file TargetRendererImpl.cpp.
References OptionsDisplay::getDrawCullingDistance(), OptionsDisplay::getDrawFadeStartDistance(), and OptionsDisplay::instance().
Referenced by TargetRendererImplTarget::render(), and TargetRendererImplTank::render().
| void TargetRendererImpl::storeTarget2DPos | ( | ) | [protected] |
Definition at line 459 of file TargetRendererImpl.cpp.
References Vector::dotP(), GLCamera::getCurrentCamera(), GLCamera::getCurrentPos(), TargetLife::getFloatCenterPosition(), GLViewPort::getHeight(), Target::getLife(), GLCamera::getLookAt(), Target::getTargetName(), GLViewPort::getWidth(), GL_MODELVIEW_MATRIX, GL_PROJECTION_MATRIX, GL_VIEWPORT, glGetDoublev(), glGetIntegerv(), posX_, posY_, posZ_, and target_.
Referenced by TargetRendererImplTarget::render(), and TargetRendererImplTank::render().
| void TargetRendererImpl::setMovedPatch | ( | TargetVisibilityPatch * | newPatch | ) | [protected] |
Definition at line 75 of file TargetRendererImpl.cpp.
References TargetVisibilityPatch::addLargeTarget(), TargetVisibilityPatch::addTarget(), TargetVisibilityPatch::addTooltip(), TargetVisibilityPatch::addTree(), currentVisibilityPatch_, VisibilityPatchGrid::getEpocNumber(), TargetLife::getFloatBoundingSize(), Target::getLife(), Target::getTargetName(), VisibilityPatchGrid::instance(), patchEpoc_, TargetVisibilityPatch::removeLargeTarget(), TargetVisibilityPatch::removeTarget(), TargetVisibilityPatch::removeTooltip(), TargetVisibilityPatch::removeTree(), target_, and tree_.
Referenced by moved(), and ~TargetRendererImpl().
TargetRendererImpl::HighlightType TargetRendererImpl::highlightType_ [static, protected] |
Initial value:
Definition at line 55 of file TargetRendererImpl.h.
Referenced by TargetRendererImplTank::render2D(), and setHighlightType().
bool TargetRendererImpl::tree_ [protected] |
Definition at line 56 of file TargetRendererImpl.h.
Referenced by createParticle(), TargetRendererImplTarget::render(), setMovedPatch(), and TargetRendererImplTarget::TargetRendererImplTarget().
bool TargetRendererImpl::matrixCached_ [protected] |
Definition at line 56 of file TargetRendererImpl.h.
Referenced by moved(), and TargetRendererImplTarget::render().
Matrix16 TargetRendererImpl::cachedMatrix_ [protected] |
Definition at line 57 of file TargetRendererImpl.h.
Referenced by TargetRendererImplTarget::render().
Target* TargetRendererImpl::target_ [protected] |
Reimplemented in TargetRendererImplTarget.
Definition at line 58 of file TargetRendererImpl.h.
Referenced by createParticle(), drawParachute(), drawShield(), getTargetSize(), getVisible(), moved(), setMovedPatch(), and storeTarget2DPos().
Definition at line 59 of file TargetRendererImpl.h.
Referenced by getVisible(), and setMovedPatch().
int TargetRendererImpl::patchEpoc_ [protected] |
bool TargetRendererImpl::particleMade_ [protected] |
Definition at line 61 of file TargetRendererImpl.h.
Referenced by createParticle(), and setMakeParticle().
double TargetRendererImpl::posX_ [protected] |
Definition at line 74 of file TargetRendererImpl.h.
Referenced by TargetRendererImplTarget::render2D(), TargetRendererImplTank::render2D(), and storeTarget2DPos().
double TargetRendererImpl::posY_ [protected] |
Definition at line 74 of file TargetRendererImpl.h.
Referenced by TargetRendererImplTarget::render2D(), TargetRendererImplTank::render2D(), and storeTarget2DPos().
double TargetRendererImpl::posZ_ [protected] |
Definition at line 74 of file TargetRendererImpl.h.
Referenced by TargetRendererImplTank::render2D(), and storeTarget2DPos().
1.5.3