ゲームにおけるデータ構造・クラス設計・パターン2at GAMEDEVゲームにおけるデータ構造・クラス設計・パターン2 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト510:名前は開発中のものです。 09/03/22 03:32:29 O7e3N6nq 描画するにはデバイスに対して様々なパラメータを設定しなけりゃならんわけだが >>501だとそこをどう処理するのかがよく分からない。 各オブジェクトには描画スクリプトみたいのを作らせておいて、draw()がそれを解釈して描画とか? そうじゃないなら、結局デバイスをやりとりしなきゃならなくなるような。 511:501 09/03/23 00:38:25 /nVLLFvd >>510 確かに。描画スクリプトかー、どうしよう。 ポリゴンの描画順番の最適化とかやり始めたら必要になりそうな気もするけど 今の自分のプログラムでは大げさすぎるかなぁ。今のところ2D的にしか使ってないし。 あとデバイスってサウンドとか入力装置とかもあるけど、それらもおんなじ感じで取り扱いたいし。 デバイスにアクセスする処理が関数1個の中に「ひとまとまりで」収まってればOKとするなら 下のように書いて済ませられるかな? void dev_state1(void) { lpD3DDEV->BeginScene(); lpD3DDEV->set_parameter(...); lpD3DDEV->draw(draw_landform(), ...); lpD3DDEV->set_parameter(...); lpD3DDEV->draw(draw_menu(), ...); lpD3DDEV->EndScene(); } ひとまとまりってのは1フレーム分のデバイスアクセス処理全部。 描画内容を大きく変えたい時はdev_state2()とかをまた別に作っておいて、 ゲームのステートに応じてどれを実行するか切り替える。 なんか描画スクリプトの方が夢があるな。 外部GUIツールで描画内容を設計して 吐き出した描画スクリプトをゲームで解釈して表示とかおもしろそう。 でも描画システムの根幹過ぎて汎用的に作るのめんどくさそう。。。 うーん、とりあえず簡単に済ませたいからdev_state1()みたいにベタ書きで どこまでいけるかやってみるかな。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch