www.pudn.com > coolMEMORY.rar > AS_Camera.cpp
//-----------------------------------------------------------------------------
// File: AS_Camera.cpp
//-----------------------------------------------------------------------------
#include "AS_Engine.h"
// Variables: *****************************************************************
AS_CAMERA *_ASCamera;
///////////////////////////////////////////////////////////////////////////////
// Constructor:
/*AS_CAMERA::AS_CAMERA(void)
{ // begin AS_CAMERA::AS_CAMERA()
memset(this, 0, sizeof(AS_CAMERA));
} // end AS_CAMERA::AS_CAMERA() */
// Set current camera translation:
void AS_CAMERA::SetCameraTranslation(BOOL bOnlyRot)
{ // begin AS_CAMERA::SetCameraTranslation(()
glLoadIdentity();
if(!bOnlyRot)
glTranslatef(0.0f, 0.0f, fZoom);
glRotatef(fRot[X], 1.0f, 0.0f, 0.0f);
glRotatef(fRot[Y]+180.0f, 0.0f, 1.0f, 0.0f);
glRotatef(fRot[Z]+180.0f, 0.0f, 0.0f, 1.0f);
if(!bOnlyRot)
glTranslatef(vPos.fX+vPosTemp.fX-_ASCamera->vShakePos.fX*_ASCamera->fShakePower*5,
vPos.fY+vPosTemp.fY-_ASCamera->vShakePos.fY*_ASCamera->fShakePower*5,
vPos.fZ+vPosTemp.fZ-_ASCamera->vShakePos.fZ*_ASCamera->fShakePower*5);
} // end AS_CAMERA::SetCameraTranslation()
void AS_CAMERA::SetStandartCamera(void)
{ // begin AS_CAMERA::SetStandartCamera()
memset(this, 0, sizeof(AS_CAMERA));
fZoom = -10.0f;
fRot[X] = -10.0f;
// Card dimension dependent camera position:
fZoom = fCardDimensionCamera[cGameConfig.iCardDimension][0];
vPos.fY = fCardDimensionCamera[cGameConfig.iCardDimension][1];
vPos.fX = -(vPlayField[MAX].fX-vPlayField[MIN].fX)/2+2.0f;
} // end AS_CAMERA::SetStandartCamera()
void AS_CAMERA::Check(void)
{ // begin AS_CAMERA::Check()
} // end AS_CAMERA::Check()