はじめて質問させていただきます。ジュンヤと申します。
龍神プログラミングの館のプロジェクトをダウンロードさせていただき勉強してます。
タイトル画面を作って、そこからステージ画面に移行するときに、
func_state = 99;
このように指定するだけだと、すぐに画面がパッと変わってしまうんですけど、
ゆっくり画面を変更する方法はないでしょうか?
よろしくお願いします。
ステージ切り替え処理について
Re:ステージ切り替え処理について
どれくらい複雑になるかを問わなければどうやっても出来ない仕様はそう無いと思いますよ。
まず、仕様を明確にしましょう。
フェードアウト、フェードインによる画面の切り替わりならすぐ出来るでしょう。
切り替わりのあるタイミングでは、両方の場面が同時に描画されており、ブレンドする形で切り替わりエフェクトを作るなら制御部を一部改造する必要がありそうです。
まず、仕様を明確にしましょう。
フェードアウト、フェードインによる画面の切り替わりならすぐ出来るでしょう。
切り替わりのあるタイミングでは、両方の場面が同時に描画されており、ブレンドする形で切り替わりエフェクトを作るなら制御部を一部改造する必要がありそうです。
Re:ステージ切り替え処理について
さっそく返信ありがとうございます。
タイトル画面で、フェードアウトさせてから、ステージ画面に移行し、
その後フェードインさせるというやりかたでうまくいきました。
切り替わるタイミングに、両方同じ画面にしておくのがポイントだったんですね。
そこでブレンドする形で切り替わりエフェクトというのもやってみたいのですが、
それも似たような方法で、できるのでしょうか?
タイトル画面で、フェードアウトさせてから、ステージ画面に移行し、
その後フェードインさせるというやりかたでうまくいきました。
切り替わるタイミングに、両方同じ画面にしておくのがポイントだったんですね。
そこでブレンドする形で切り替わりエフェクトというのもやってみたいのですが、
それも似たような方法で、できるのでしょうか?
Re:ステージ切り替え処理について
> ブレンドする形で切り替わりエフェクト
次の画面にする前に、現在の画像をメモリに読み込み、
キャプチャ画像、次画面の順に描写します。
あとは、その二つを徐々にブレンドすれば簡単にできそうです。
次の画面にする前に、現在の画像をメモリに読み込み、
キャプチャ画像、次画面の順に描写します。
あとは、その二つを徐々にブレンドすれば簡単にできそうです。
Re:ステージ切り替え処理について
画面をキャプチャした後に、画面を切り替えてから、
キャプチャ画像、次の画面を描画するということでしょうか?
画面を切り替えるタイミングがいまいちイメージできないです。
キャプチャ画像、次の画面を描画するということでしょうか?
画面を切り替えるタイミングがいまいちイメージできないです。
Re:ステージ切り替え処理について
とりあえず、やっつけで書いてみました。
大本は、ゲームプログラミングの館25bです。
プログラムでは画像char.pngとback.jpgが必要です。
char.pngはゲームプログラミングのchar.pngを、
back.jpgはなんでもいいので一枚画像を用意して下さい。(推奨640*480 ブレンド感が味わえるからw)
自分は、キャプチャーと書きましたが、
ジュンヤさんの描写の構造が分からなかったので、そう書きました。
キャプチャーすれば、撮った画像と次のステージでブレンドできます。
前画面の個々の描写はいらない(前画面のキャプチャーは必要ですが)ので、
前画面を制御する関数に入る必要はなく、管理に便利かと思ったのでそう書きました。
自分が今回書いたプログラムはキャプチャーせず、前画面の描写の次に次画面を描写しています。
単純なのでみたらわかるかと思います。
大本は、ゲームプログラミングの館25bです。
プログラムでは画像char.pngとback.jpgが必要です。
char.pngはゲームプログラミングのchar.pngを、
back.jpgはなんでもいいので一枚画像を用意して下さい。(推奨640*480 ブレンド感が味わえるからw)
自分は、キャプチャーと書きましたが、
ジュンヤさんの描写の構造が分からなかったので、そう書きました。
キャプチャーすれば、撮った画像と次のステージでブレンドできます。
前画面の個々の描写はいらない(前画面のキャプチャーは必要ですが)ので、
前画面を制御する関数に入る必要はなく、管理に便利かと思ったのでそう書きました。
自分が今回書いたプログラムはキャプチャーせず、前画面の描写の次に次画面を描写しています。
単純なのでみたらわかるかと思います。
Re:ステージ切り替え処理について
サンプルのプログラムを参考にさせていただいたおかげで、
ブレンドから、ステージ切り替えまでの一連の流れが
理解することができ、自分の思ったとおりの切り替えができました^^
必ずキャプチャーしなければいけないわけではなかったんですね。
丁寧なアドバイスに加え、サンプルまで作っていただき
ありがとうございました。
ブレンドから、ステージ切り替えまでの一連の流れが
理解することができ、自分の思ったとおりの切り替えができました^^
必ずキャプチャーしなければいけないわけではなかったんですね。
丁寧なアドバイスに加え、サンプルまで作っていただき
ありがとうございました。
Re:ステージ切り替え処理について
キャプチャすると、どちらかの画面が止まってしまうと思いますので、
もし両方の画面を動かしたいなら
「両方の関数を呼ぶ時間」を設けて、その時間は両方の関数を呼んではどうでしょう。
画面1から画面2に変わる際、ブレンド時間が1秒だとすると、
画面1は1秒かけてフェードアウト、
画面2は1秒かけてフェードイン、
これを重ねて描画するとスムーズに切り替わりが出来そうです。
制御は若干ややこしくなりそうですが
もし両方の画面を動かしたいなら
「両方の関数を呼ぶ時間」を設けて、その時間は両方の関数を呼んではどうでしょう。
画面1から画面2に変わる際、ブレンド時間が1秒だとすると、
画面1は1秒かけてフェードアウト、
画面2は1秒かけてフェードイン、
これを重ねて描画するとスムーズに切り替わりが出来そうです。
制御は若干ややこしくなりそうですが