私が取り組んでいるフラッシュ ゲーム プロジェクトでは、レイキャスティングによってプレイヤーを検出できるカメラを作成したいと考えています。カメラはさまざまな視野角 (例: 45 度または 90 度) を持つことができ、これらの視野角に応じてレイキャスティングが変化する必要があります。レイキャスティングを使用して実際の視野角を作成しても問題はありませんが、何らかの理由でこれらの視野角が配置される角度が間違っています。
これは私が使用するコードです:
for (var i:Number = 0; i < this._viewAngle; i++)
{
var pointX:Number = (this._viewRange) * Math.cos(this._viewAngle + (i * Math.PI / 180));
var pointY:Number = (this._viewRange) * Math.sin(this._viewAngle + (i * Math.PI / 180));
this._rayHolder.graphics.lineTo(pointX, pointY);
this._rayHolder.graphics.moveTo(0, 0);
}
これが結果です:
(90 度)
(45度)
もっと明確に説明する方法がわからないので、私が書いたことが十分に理解できることを願っています。
編集:これに
変更Math.cos(this._viewAngle + (i * Math.PI / 180));
するとMath.cos((this._viewAngle + i) * Math.PI / 180);
:
(90度)
(45度)