//============================================================================== //捕獲判定ボックスの生成 //============================================================================== //[input] // pCam:カメラクラス //============================================================================== void CPlayer::CreateShootBox( CCamera *pCam, CSceneManager *pSceneMgr ) { Math::Matrix matTemp; Math::Matrix matWorld; /*初期化*/ matTemp.Identity(); matWorld.Identity(); //matWorld = pCam->GetCamera()->WorldToView(); //GetModelActor( 0 )->Collision_Check( //matWorld = pCam->GetCamera()->WorldToView(); ///*X軸回転*/ matTemp.RotationX( toI( pCam->GetRotate().x ) ); // matWorld *= matTemp; // ///*Y軸回転*/ matTemp.RotationY( toI( m_Rot.x - DEG_TO_ANGLE( 180 ) ) ); matWorld *= matTemp; /*移動*/ matTemp.Translation( m_vPos.x, m_vPos.y, m_vPos.z ); matWorld *= matTemp; //Math::Vector3D vPt1 = pSceneMgr->GetSceneMgr()->TransformFromScreen( Math::Vector3D( 0, 0, 0 ) ); //Math::Vector3D vPt2 = pSceneMgr->GetSceneMgr()->TransformFromScreen( Math::Vector3D( SCREEN_WIDTH, SCREEN_HEIGHT, 2.0f ) ); /*ボックスの生成*/ //m_ShootChkBox. // m_ShootChkBox.CreateBox( vPt1, vPt2, matWorld ); }
//============================================================================== //捕獲判定ボックスの生成 //============================================================================== void CPlayer::CreateCapBox() { Math::Matrix matTemp; Math::Matrix matWorld; /*初期化*/ matTemp.Identity(); matWorld.Identity(); /*回転*/ matTemp.RotationY( toI( m_Rot.x - DEG_TO_ANGLE( 180 ) ) ); matWorld *= matTemp; /*移動*/ matTemp.Translation( m_vPos.x, m_vPos.y, m_vPos.z ); matWorld *= matTemp; /*ボックスの生成*/ m_CapChkBox.CreateBox( Math::Vector3D( -2, 0, 0 ), Math::Vector3D( 2, 5, 30 ), matWorld ); }