Path: chuka.playstation.co.uk!news1.scei.co.jp!usenet From: minoru@isl.intec.co.jp (Minoru Matsumoto) Newsgroups: playstation.ny.program.labo Subject: Re: =?ISO-2022-JP?B?GyRCPFAkYT4yJEokSSRORXYkPyRqSD1EaiRLJEQbKEI=?= Date: 19 Jan 1998 14:15:42 GMT Organization: INTEC System Laboratory Inc. Ltd. Lines: 24 Message-ID: <34c35e46pa770@base.minoru.isl.intec.co.jp> References: <34C242B5.41ED@outback.co.jp> NNTP-Posting-Host: 202.226.28.130 Mime-Version: 1.0 Content-Type: Text/Plain; charset=ISO-2022-JP X-Newsreader: WinVN 0.99.7J PL01 (x86 32bit) cqz03222 の松本 実です。 In article <34C242B5.41ED@outback.co.jp>, suzuki@outback.co.jp says... >みなさんは45度以上の斜め床などの >当たり判定はどのようにしていますか? >僕は横幅分の高さデータを1バイトずつ持っていますが・・・。 >何かもっといい方法は無いですかねぇ・・・? 確かに、ゲームの解説本でも、45 度以上の場合をみないですねえ。 幅 16 ドットの場合、2バイト表現ではどうでしょう? 判定点までの距離と、そこでの高さを aaaa_bbbb という形で表わす、 というものですが。 45 度以上の傾斜がある場合は左端、右端の少なくとも一方は高さ 部分が 0000 または 1111 のパターンになるので、判定点以前 (あるいは以後)の部分は別のブロックで判定します。 例えば、0010_0000 1100_1111 とあれば、左端をドット 0 と数えると、 ドット 2 は高さ 0、右端は 0 でない値なので、ドット 0 - ドット 1 はこの下のブロックで当たり判定をします。ドット 13 - 15 も同様です。 ---