狠狠撸

狠狠撸Share a Scribd company logo
当たり判定
第1回
先ほど遊んでみてどうでした?
皆さんがイメージしている通りにプログラムは動いていましたか?
試しにこのバグを修正してみましょう。
Windows の人は Visual Studio で
Mac の人は Safari か Chrome で
Library.js の utility.hitTest ブレークポイントを置いてみましょう。
行のちょっと左側をクリックしてみてください。
マークは付きました?
それでは、 F5 でプログラムを実行してみましょう。
止まりました?
このかっこで括られた部分を関数と言います。
まだ何も書かれてないですね。
”これの中身を “実装 して修正してみましょう。
ここでブレークタイム。
そもそも当たってるってどういうことでしょうか?
この2つの四角はあたってる?
じゃあこの场合は?
今のやり取りを数学的に説明できるものを書く。
それがプログラミングというものになります。
実はプログラミングって数学チックなのです。
では数学的に色々考えていましょう。
ちなみにすぐに出来る人もいると思いますが
あまり気にしないようにしましょう。
最初はできないです。
俺もできなかったです。
登场人物は4つ
こいつ
こいつ
こいつ
こいつ
おさらい。
これは当たってるわけです。
これは当たってないわけです。
もういっちょ。
当たってるわけです。
当たってないです。
登场人物达の様子はいかが?
なんとなくわかりました?
とりあえずプログラムを书いてみましょう!
utility.hitTest(lhs, rhs)
{
lhs.x
lhs.y
lhs.x + lhs.wide
lhs.y + lhs.height
}
登場人物達はプログラムでは
こうやって登場してもらいます。
x, y は座標のこと。
wide は 幅
height は 高さ のこと
…つまり
(lhs.x, lhs.y)
(lhs.x + lhs.wide,
lhs.y + lhs.height)(lhs.x, lhs.y + lhs.y + lhs.height)
(lhs.x + lhs.wide, lhs.y)
こういうこ
と!
そろそろ头が痛い?
中身は実は简単
ここ、 x
ここの幅 wide
じゃあここ
は?
いけそうです?
では顽张ってプログラミングしてみましょう!
if ( 何か条件 ) {
正しかった場合こ
こ
} else {
そうでないときこ
こ
}
(true) && (true) => true
(true) || (false) => true
(false) || (false) => false
true : 正しい
false : 正しくない
憶えておくといいこと!
最后に!
弾速をめっちゃ早くすると!?
何が起きたのでしょう?
今まで
スタート 次 その次
ここで Hit !!!
今
スタート 次
そう、速すぎるのです!
速すぎて次の瞬間には遠くにいるのです!!!
どうするの?
今後の課題とします!
と言っても宿題ではないです。
結構難易度高いですよ!
他に。
当たってる?
当たってる?
これらも今后の课题とします!
これにて今日の講義終了です。
お疲れ様でした!
今日の宿題!
今日のあたり判定を実装したものを
SVN でコミットしてください!

More Related Content

1回目衝突判定