まったくのプログラミング素人の筆者がC++/HSPを使用してSTG(シューティングゲーム)を作っていく過程を書くブログでしたが最近は脱線気味。プログラミング以外にも、ゲーム関連の記事、日々の戯言など。
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
プチコンmkIIになってから動作速度が凄く速くなりました。
そしてスプライト機能が強化されていて、当たり判定用の命令(SPHIT)も追加されていたんですよね。
で、このSPHITを使うと処理が凄く速くなるんじゃね?と思って試してみたら、実際に凄く速かったので
これなら弾幕STGも作れるんじゃないかと思って、テスト的にプログラムを作ってみました。
こんな感じ↓
QRコード
ディスプレイの光度を最大にした方が読み込みやすい気がします
1/4
2/4
3/4
4/4
悩んだのがSPHITの使い方。
SPHITを使うためにはSPCOLでグループを指定しないと駄目なんですが、説明書には
0~255(ビット単位でグループ属性を管理)って書いてあります。
で、そのグループ指定には&HF0を使う的な事も書いてあるのですが全然理解出来ませんでした^^;
その事をTwitterでボヤいてたらスマイルブームの中の人がサンプルを作ってくれていて
それを見てやっと理解出来ました^^
https://twitter.com/#!/notohoho/status/180963074600218624/photo/1
当たり判定は2進数で考えるとわかりやすくて例えば自機を11110000、敵を00001111、敵弾を
100000000にすると仮定します。
これを縦に並べてみましょう
11110000 自機
00001111 敵
10000000 敵弾
これを縦で比較してみると1が同じ場所にあるのは自機と敵弾って事になります。
つまり自機と敵弾は同じグループって事になるんです。
この場合だと、自機と敵は当たらないけど敵たまは自機と当たるって感じ。
敵との当たり判定を行いたい場合は00001000とか00000010とかにすればOK。
で、この2進数を16進数に変換してSPCOLに記述すれば上手く動いてくれました^^
11110000ならF0、00001111なら0F、10000000なら80なので&HF0とか&H0Fとか&H80
って事ですね。(&Hってのは16進数って意味です)
気になる動作速度は、敵弾60発程度までなら処理落ちせずに動かせそうな感じなのですが
FPS30ってどうなの?とも思うんですよねぇ。
自分が動かしてみた感じでは、思ったよりは気にならないかなぁとは思うのですが
高速な動きをする物ほど、滑らかに動かなくて気になるような感じもしますし・・・
このまま制作を続けても良いものか悩み中です^^
そしてスプライト機能が強化されていて、当たり判定用の命令(SPHIT)も追加されていたんですよね。
で、このSPHITを使うと処理が凄く速くなるんじゃね?と思って試してみたら、実際に凄く速かったので
これなら弾幕STGも作れるんじゃないかと思って、テスト的にプログラムを作ってみました。
こんな感じ↓
QRコード
ディスプレイの光度を最大にした方が読み込みやすい気がします
1/4
2/4
3/4
4/4
悩んだのがSPHITの使い方。
SPHITを使うためにはSPCOLでグループを指定しないと駄目なんですが、説明書には
0~255(ビット単位でグループ属性を管理)って書いてあります。
で、そのグループ指定には&HF0を使う的な事も書いてあるのですが全然理解出来ませんでした^^;
その事をTwitterでボヤいてたらスマイルブームの中の人がサンプルを作ってくれていて
それを見てやっと理解出来ました^^
https://twitter.com/#!/notohoho/status/180963074600218624/photo/1
当たり判定は2進数で考えるとわかりやすくて例えば自機を11110000、敵を00001111、敵弾を
100000000にすると仮定します。
これを縦に並べてみましょう
11110000 自機
00001111 敵
10000000 敵弾
これを縦で比較してみると1が同じ場所にあるのは自機と敵弾って事になります。
つまり自機と敵弾は同じグループって事になるんです。
この場合だと、自機と敵は当たらないけど敵たまは自機と当たるって感じ。
敵との当たり判定を行いたい場合は00001000とか00000010とかにすればOK。
で、この2進数を16進数に変換してSPCOLに記述すれば上手く動いてくれました^^
11110000ならF0、00001111なら0F、10000000なら80なので&HF0とか&H0Fとか&H80
って事ですね。(&Hってのは16進数って意味です)
気になる動作速度は、敵弾60発程度までなら処理落ちせずに動かせそうな感じなのですが
FPS30ってどうなの?とも思うんですよねぇ。
自分が動かしてみた感じでは、思ったよりは気にならないかなぁとは思うのですが
高速な動きをする物ほど、滑らかに動かなくて気になるような感じもしますし・・・
このまま制作を続けても良いものか悩み中です^^
PR
この記事にコメントする
カレンダー
10 | 2024/11 | 12 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
リンク
カテゴリー
最新記事
(04/04)
(12/26)
(12/25)
(11/17)
(10/11)
プロフィール
HN:
kt.
性別:
男性
自己紹介:
プログラミング経験は昔ファミリーベーシックでちょっとさわったくらい。
好きなSTGは、怒首領蜂大往生、エスプガルーダ(2)等の弾幕STGやら雷電シリーズなんかの非弾幕、バトルガレッガ、グラディウスシリーズ、R-TYPE等、STGなら何でも好きです。
音楽がカッコイイSTGが特に好きで、並木学氏は最高!
好きなSTGは、怒首領蜂大往生、エスプガルーダ(2)等の弾幕STGやら雷電シリーズなんかの非弾幕、バトルガレッガ、グラディウスシリーズ、R-TYPE等、STGなら何でも好きです。
音楽がカッコイイSTGが特に好きで、並木学氏は最高!
ブログ内検索
最古記事