本文整理汇总了C++中CoordinateSystem::getUp方法的典型用法代码示例。如果您正苦于以下问题:C++ CoordinateSystem::getUp方法的具体用法?C++ CoordinateSystem::getUp怎么用?C++ CoordinateSystem::getUp使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CoordinateSystem
的用法示例。
在下文中一共展示了CoordinateSystem::getUp方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: setupCamera
void Ship :: setupCamera () const
{
CoordinateSystem camera = getCameraCoordinateSystem();
const Vector3& camera_position = camera.getPosition();
const Vector3& camera_up = camera.getUp();
Vector3 look_at = camera_position + camera.getForward();
gluLookAt(camera_position.x, camera_position.y, camera_position.z,
look_at.x, look_at.y, look_at.z,
camera_up.x, camera_up.y, camera_up.z);
}
示例2: update
void World::update()
{
handleKeyPress();
m_playerShip.update(*this);
int i = 0;
// bullet
for (; i < Const::BULLET_COUNT; i++)
{
m_bullets[i].update(*this);
}
int abc = 0;
// enemy ships
Vector3 playerPosition = m_playerShip.getPosition();
for (i = 0; i < Const::ENEMY_SHIP_AMOUNT;i++){
if (m_ships[i].isAlive()){
double distance = m_ships[i].getPosition().getDistanceSquared(playerPosition);
if (distance < Const::NEAR_TO_PLAYER){
m_ships[i].runAi(*this);
m_ships[i].update(*this);
abc++;
}
}
}
CoordinateSystem cs = m_playerShip.getCoordinate();
Vector3 position = cs.getPosition();
Vector3 up = cs.getUp();
m_camera.setUp(cs.getUp());
Vector3 forward = cs.getForward();
m_camera.setForward(forward);
position += 20 * up;
position -= 100 * forward;
m_camera.setPosition(position);
checkCollision();
}