忍者ブログ
まったくのプログラミング素人の筆者がC++/HSPを使用してSTG(シューティングゲーム)を作っていく過程を書くブログでしたが最近は脱線気味。プログラミング以外にも、ゲーム関連の記事、日々の戯言など。
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

先日作っていたステージ4の開幕部分を実装しました。
9732cd04.jpg
地面が途切れて、谷間を降りていくって感じになっています^^

ステージ4に関しては殆ど完成なのですが、先日購入したメトロイドプライム3が面白くて
ついついプレイしてしまい開発時間が削られています(汗)
メトロイドシリーズは、ファミコン版とスーファミ版しかプレイした事なかったのですが
当時も寝る間を惜しんでプレイしていましたが、今回も睡眠時間が削られそうです^^;
PR

現状ではステージ4の開幕部分は、強引にマグマの背景に繋げていたのですが
どうにも気にいらなかったので、マグマに繋がる部分を作製中です。
e9100a92.jpg
こんな感じで、岩の部分を多重スクロール+左右に移動させていって
降りていっているような感じを演出しています。

コレが出来たらステージ4は殆ど完成で、後は曲を作れば公開出来るかな?って感じなのですが
今日、wiiのメトロイドプライム3を購入してしまったので、開発が遅れてしまいそうな予感です^^;

先日作った2Dでの3D表現スクリプトをステージ4に組み込みました^^

3D部分に繋がる所はシャッターを使って繋げて行こうと思って、そのシャッターに繋がるように
↓こんな感じで背景を追加しました。
s-WS000017.jpg
徐々にパネルの数が増えていって、最終的には下のマグマが見えないようになります。

で、ある程度ロボットの体力が減ってきたら、シャッターを登場させて・・・
c7d5ba5b.jpg

後は、そのまま落ちていくような感じで戦います。
s-WS000019.jpg

と文章で書くとすぐなのですが、作るのはとても大変でした(汗)
キャラの優先順位を考えたり、スプライトの移動&停止処理を考えたりで頭が混乱してくるんですよね・・・
でも頑張って作っただけあって、なかなか良い感じに出来たのではないかと自分では思っています^^
昨日作った2Dでの3D表現スクリプトなのですが、何かが違うような気がするなぁ~とは思って
いたんですが、何が原因かわからなかったのですが、コメント欄で的確なアドバイスを貰いました^^;

私の作っていた方法では背景がどの場所にあっても拡大率は同じだったのですが
そうすると背景の表示スピードが一定にならず、特に背景が手前に来たときに背景のスピードが
遅くなりすぎて、おかしな感じになっていたんです。

で、背景の場所によって拡大率を変更出来るようにスクリプトを変更してみました↓
2Dでの3D表現スクリプトNO2
コレを動かすとこんな感じ↓
12473059.jpg
背景画像にはhamcorossam様のSTG素材を使用させてもらっています。

画像で見るとあんまり変わってないみたいですが、先日と比べるとスピード感が全然違います^^
スクリプトとしては、毎フレーム背景を検索して移動と拡大率を設定しているので
前回よりも処理的には重くなってるはずなのですが、今回は拡大率が大きい時は移動スピードも
大きいので、逆に表示の負担がへったようで、前回よりもFPSが出るようになりました^^

とりあえず3D 表示スクリプトはコレで良いとして、ここにどうやって繋げて行くかを考え中です^^;
ここ最近は先日作りかけた2Dでの3D表現スクリプトを、あーでもない、こーでもないと
作っていました。

今のところ、こんな感じです↓
2Dでの3D表現スクリプト
このスクリプトを動かすとこんな感じ
deb3d44d.jpg
背景画像にはhamcorossam様のSTG素材を使用させてもらっています。

とりあえずwait無しでFPS100~120程度までは出るようになったんですが
これ以上の速度アップは私の技術では出来ませんでした^^;

最初に作製した時は、es_pos命令で1フレームごとに背景を表示&拡大&移動させていたのですが
それだとwait無しで60FPS程度が精一杯だったので、この方法はやめて
背景を生成した瞬間に、es_adirで自動的に移動させるようにして、拡大のみ1フレームごとに
行うように処理を変更しました。

それと、スプライトで背景を表示させるとなると、重ね合わせる順番も重要になってきます。
私は今まで、スプライトの表示順位は変更出来ないと思っていたので、どうすんねん?と
思っていたのですが、実は表示順位は変更出来るんです。
es_set命令の第6パラメータで設定でき、-32768~32767の間で指定出来るので
それを利用して常に、手前の背景が奥の背景より手前に見えるように表示出来ました。

この方法以外にも、アニメーションで表示したり、キャラを分割してみたり、表示回数を減らしてみたり
してみたのですが、やはりFPS120程度以上の速度を出す事が出来ませんでした。
でも、試しに作製中のゲームに組み込んでみたら以外と処理落ちなく動いたので
コレでよいかなぁ~と思っています^^
Twitter
カレンダー
01 2025/02 03
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
最新コメント
[04/20 kt.]
[04/19 うぇむ]
[11/24 kt.]
[11/21 NONAME]
[11/24 kt.]
プロフィール
HN:
kt.
性別:
男性
自己紹介:
プログラミング経験は昔ファミリーベーシックでちょっとさわったくらい。
好きなSTGは、怒首領蜂大往生、エスプガルーダ(2)等の弾幕STGやら雷電シリーズなんかの非弾幕、バトルガレッガ、グラディウスシリーズ、R-TYPE等、STGなら何でも好きです。
音楽がカッコイイSTGが特に好きで、並木学氏は最高!
ブログ内検索
忍者ブログ [PR]