トップページgamedev
1001コメント378KB

【初心者】スレを立てる前にココで質問を【Part20】

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2009/09/29(火) 07:08:29ID:OO8C9kYO
疑問に思うことがあれば、スレを立てずに、まずはココで質問。
スレッドを立てる前にはローカルルールを読みましょう。
http://pc11.2ch.net/gamedev/

>>980 を踏んだ人は次スレ立てをお願いします。
【アップローダ・避難所・Wiki】
ゲーム製作技術板公式Wiki
http://wiki.game-develop.com/

ゲーム製作技術板公式アップローダ
http://gmdev.xrea.jp/

ゲーム製作技術板予備(機能停止中?)
http://yy13.kakiko.com/gamdev/

アップローダー予備
http://gamdev.hp.infoseek.co.jp/

gamdev.orgが落ちるたびにあげてみるスレ
http://pc11.2ch.net/test/read.cgi/gamedev/1107022166/
0431名前は開発中のものです。2009/12/07(月) 01:52:29ID:C+HhHCB7
四角形の当たり判定を厳密にするには四角形EFGHの角が
四角形ABCDに対して直線、ABとCDの間、BCとDAの間に入るかを
調べる。つまり、角が相手の四角形の中にあるかを調べる。
AB、CDの方程式 aX+bY+c=0、dX+eY+g=0 を求める。(ABCDが正方形・長方形を
含む平行四辺形ならa=d, b=eが成り立ち、別個に求める手間が省ける)
EFGHのX,Y座標を代入して
aX+bY+c<0
dX+eY+g>0
が成り立つかどうかをチェックする。(不等号の向きは式の導出方法によるので
注意)同様にBC,DAの方程式を求め、一つでも全ての不等式が成り立つ角が
ある場合、その四角形は接触している。
次に四角形EFGH内にABCDの角が入っているかをチェックする。
>判定を行う数を減らすには
四角形の回転の中心同士の距離を計り、接触する可能性がない物は上記の
計算をしなければ良い。ピタゴラスの定理を使う。

(A.x-B.x)²+(A.y-B.y)²=r²  rは距離
0432名前は開発中のものです。2009/12/07(月) 02:16:09ID:C+HhHCB7
四角形が長方形(正方形を含む)なら四角形OABCに接触するかを
調べる四角形DEFGの各頂点を座標変換して例えばOを原点とする
座標系に変換すればX座標がO〜Cの間でY座標がO〜Aの間にあるか
を調べた方が早いかな?
■ このスレッドは過去ログ倉庫に格納されています