ページ 11

龍神録プログラミングの館のレーザーのあたり判定について

Posted: 2015年9月04日(金) 23:28
by 滝(fall)
四角形のあたり判定について考えてみたのですが、ベクトルじゃなくて一次関数的に計算させる方法もあるのではないかと考えました。
理由はいたって単純でベクトルをまだ習っていないというだけ(どちらのほうが高速なのかとても気になるというのもある。
↓参考画像URL
https://drive.google.com/file/d/0B0ap8c ... ZJeU0/view

直線P₀P₁の垂線で点Cを通る直線TCの接点がP₁P₂とP₀P₃の接点との間にあり、TC間の距離がP₁P₂間の距離以下であれば
ベクトルを使わなくても求められる気がしたのですがどうでしょうか。
一次関数を使う方法とベクトルを使う方法のどちらの方が負荷が低いでしょうか。

Re: 龍神録プログラミングの館のレーザーのあたり判定について

Posted: 2015年9月05日(土) 14:47
by yv
こんにちは
ベクトルは傾きだけを考えた一次関数といえるので両者に大きな違いはありません
一般的にはベクトルを使った方が計算の項数は少なく簡単になります.
負荷については違いが感じられるほどの違いはないでしょう

あたり判定を求める方法はいくつも考えることができます
http://dixq.net/forum/viewtopic.php?f=3&t=3225#p27710
また効率的なあたり判定に関する専門書もあります


非効率かもしれない計算式を使うと無駄が気になる気持ちは分かりますが
この程度の負荷は負荷と言わないので気にしないでください
今は効率的だと思われている方法も数年後は変わるかもしれませんし,最適解はありません

Re: 龍神録プログラミングの館のレーザーのあたり判定について

Posted: 2015年9月05日(土) 19:00
by 滝(fall)
ベクトルとは傾きだけの1次関数だったのですか、知りませんでした(習ってない
まぁ負荷と言えるほどのものではないというのは分かってはいるのですが、単純に趣味ですね。