/*	int divnum = 1;		// 方向を向く分割数
	int ret = 0;
	ret = E3DCameraDirRight( 
		MotionTestConsts::MOUSE_LOOK_DEGREE_HORIZONTAL * mouse->lX , divnum);
	if( ret ) {
		_ASSERT( 0 );
		return ret;
	}
	
	ret = E3DCameraDirDown( 
		MotionTestConsts::MOUSE_LOOK_DEGREE_HORIZONTAL * mouse->lY , divnum);
	if( ret ) {
		_ASSERT( 0 );
		return ret;
	}*/


/**
  *	プレイヤーへカメラの方向を向ける
  * カメラポジションは自由
  *	@param div			分割数。これをdiv回呼ぶとプレイヤーへの向きになる
  */
int moveCameraAtPlayer(int div);


/** 常にプレイヤーの方向を徐々に向くカメラの位置、方向設定
  * カメラの位置は固定
  *
  */
int StaticData::moveCameraAtPlayer(int div) {
	E3DObjectMoveInformation* move = this->player.get_Move();

	D3DXVECTOR3 vCameraPosition(
		move->m_vPosition.x + 1.f * this->get_CameraDistance(),
		move->m_vPosition.y + 1.f * this->get_CameraDistance(),
		// 地面固定の場合
		//MotionTestConsts::GROUND_HEIGHT + this->get_CameraHeight(),
		move->m_vPosition.z + 1.f * this->get_CameraDistance());
	this->set_CameraPosition( vCameraPosition );

	int ret = E3DSetCameraPos( this->get_CameraPosition() );
	if( ret ){
		_ASSERT( 0 );
		return 1;
	}

	// カメラ方向
	D3DXVECTOR3 vCameraDirection ( 
		move->m_vPosition - vCameraPosition);

	int nCameraDivision = 3;

	ret = E3DCameraLookAt( vCameraDirection , 3, div );
	if( ret ) {
		_ASSERT( 0 );
		return 1;
	}
	return 0;
}

	int get_ShotBehindCameraPosition( int nPlayerSigID, D3DXVECTOR3* vCameraPosition );

int BasicStaticData::get_ShotBehindCameraPosition( int nPlayerSigID, D3DXVECTOR3* vCameraPosition ) {
	int ret = 0;

	// プレイヤーの位置
	/*D3DXVECTOR3 vPlayerPosition;
	ret = E3DGetPos( nPlayerSigID, &vPlayerPosition );
	if( ret ) {
		_ASSERT( 0 );
		return ret;
	}*/

	// プレイヤーの向いている方向
	D3DXVECTOR3 vDirection;
	ret = E3DGetCharaDir( nPlayerSigID, 0,0, &vDirection );
	if( ret ) {
		_ASSERT( 0 );
		return ret;
	}

	vDirection *= -1;

	// 回転マトリクス
	D3DXMATRIX matrix;
	D3DXMatrixIdentity(&matrix);

	// Y軸に左回転
	D3DXMatrixRotationY( &matrix, D3DXToRadian( -20 ) );

	// X軸に左回転
	D3DXMatrixRotationX( &matrix, D3DXToRadian( 30 ) );

	// かける
	D3DXVec3TransformCoord( &vDirection, &vDirection, &matrix );

	// 距離
	D3DXVec3Scale( vCameraPosition, &vDirection, CAMERA_SHOT_BEHIND_MODE_TARGET_DISTANCE );


	return 0;
}


	/*DirectX::DCameraManager* get_AtTarget();
	DirectX::DCameraManager* get_ShotBehind();
	DirectX::DCameraManager* get_Sniper();*/
