/// <summary> /// カメラとの衝突判定 /// /// 描画コマンド管理クラスから呼び出される。 /// カメラの視錘台との当たり判定をここでプログラミングする /// </summary> /// <note>※補足 /// カメラとオブジェクトの判定をして、対象オブジェクトを半透明化することもできる。 /// m_transparencyを1.0より小さくし、m_priorityのd3Translucentに1の値をセット /// すれば良い。 /// </note> /// <param name="baseCamera"></param> /// <param name="z">Z値を返す</param> /// <returns>衝突している場合はtrueを返す。trueを返すことによって描画される。</returns> internal override bool CameraCollison(MCBaseCamera baseCamera, out float z) { z = 0; if (IsBillbord) { // ビルボードである return(baseCamera.CollisionSphere(BVSphere, out z)); } else { // スプライトである } return(true); }
/// <summary> /// カメラとの衝突判定 /// 描画コマンド管理クラスから呼び出される。 /// カメラの視錘台との当たり判定をここでプログラミングする /// @note ※補足 /// カメラとオブジェクトの判定をして、対象オブジェクトを半透明化することもできる。 /// m_transparencyを1.0より小さくし、m_priorityのd3Translucentに1の値をセット /// すれば良い。 /// </summary> /// <param name="baseCamera"></param> /// <param name="z">Z値を返す</param> /// <returns>衝突している場合はtrueを返す。trueを返すことによって描画される。</returns> internal override bool CameraCollison(MCBaseCamera baseCamera, out float z) { z = 0; if (IsBillbord) { // ビルボードである(使用できない return(true); } else { // スプライトである } return(true); }
/// <summary> /// カメラをセットする /// </summary> /// <param name="camera"></param> protected void SetCurrentBaseCamera(MCBaseCamera camera) { m_currentBaseCamera = camera; }
/// <summary> /// カメラとの衝突判定 /// /// 描画コマンド管理クラスから呼び出される。 /// カメラの視錘台との当たり判定をここでプログラミングする /// </summary> /// <note>※補足 /// カメラとオブジェクトの判定をして、対象オブジェクトを半透明化することもできる。 /// m_transparencyを1.0より小さくし、m_priorityのd3Translucentに1の値をセット /// すれば良い。 /// </note> /// <param name="baseCamera"></param> /// <param name="z">Z値を返す</param> /// <returns>衝突している場合はtrueを返す。trueを返すことによって描画される。</returns> internal abstract bool CameraCollison(MCBaseCamera baseCamera, out float z);