当前位置: 首页>>代码示例>>C++>>正文


C++ CoordinateSystem::getForward方法代码示例

本文整理汇总了C++中CoordinateSystem::getForward方法的典型用法代码示例。如果您正苦于以下问题:C++ CoordinateSystem::getForward方法的具体用法?C++ CoordinateSystem::getForward怎么用?C++ CoordinateSystem::getForward使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CoordinateSystem的用法示例。


在下文中一共展示了CoordinateSystem::getForward方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的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);
}
开发者ID:streibeb,项目名称:cs409,代码行数:12,代码来源:Ship.cpp

示例2: playerFireBullet

void World::playerFireBullet()
{
	if (m_playerShip.isAlive() && m_playerShip.isBulletReady())
	{
		CoordinateSystem cs = m_playerShip.getCoordinate();
		m_bullets[m_nextBulletIndex].fire(cs.getPosition(), cs.getForward(), m_playerShip.getId());
		m_playerShip.reloadBullet();
		m_nextBulletIndex++;
		if (m_nextBulletIndex == Const::BULLET_COUNT){
			m_nextBulletIndex = 0;
		}
	}
}
开发者ID:whitelight2134,项目名称:spacewar,代码行数:13,代码来源:World.cpp

示例3: 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();
}
开发者ID:whitelight2134,项目名称:spacewar,代码行数:37,代码来源:World.cpp


注:本文中的CoordinateSystem::getForward方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。