タスクシステム総合スレ part2at GAMEDEVタスクシステム総合スレ part2 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト32:名前は開発中のものです。 07/12/08 15:37:53 dpKOt0nT >>30 シーンの切り替えでクロスフェード等を使う場合はどうするの? かならずフェードアウト/イン(もしくは一瞬)? ドラクエみたいに、フィールドの上で戦闘やショップの処理、 ステータス表示なんかを行いたい場合とかもどうするのか気になる。 33:名前は開発中のものです。 07/12/09 05:57:18 fYOmZnNF >>32 クロスフェードというのは音楽のなんかみたいだがよくわからない。 ドラクエはショップを例にすると、 店の処理をポップアップ子ウィンドウを出して行う。 ドラクエの黒塗りのウィンドウがホントのウィンドウになる感じ。 店に入る時に、所持金、商品、所持アイテムなどのデータは受け取るが、 店には関係ない、主人公がどこにいるか、NPCがどこにいるかなどは、 まったく関係ない(コードに触れない)状態になっている。 もちろんデータは取って置いてあって、 店ループを抜けフィールドループに戻ると触れるようになる。 親ウィンドウメッセージが来たなら、店シーンに入る時に 保存しておいたメモリビットマップを使っての再描画、 閉じる(プログラム終了)、デフォ処理のみ行う。 子ウィンドウメッセージが来たなら、 キー、マウスによるカーソルの移動、決定、キャンセル、 WM_TIMERによるカーソルの点滅、 再描画、閉じる(店シーンの終了)、デフォ処理などを行う。 シーン切替えの説明にはなっていない気がするが、大本の違いは if(g_scene == SceneField) ** else if(g_scene == SceneShop) ** のチェックを、よくあるやり方の場合、1ループ毎に行っていると思うが、 シーンを切り替える場合は、一度チェックしたら **の所で別のゲームループまたはコールバックに入ってしまうので、 そのシーンから抜けるまでシーンのチェックは行わない。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch