シューティングゲーム製作技術総合 13機目at GAMEDEVシューティングゲーム製作技術総合 13機目 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト24:名前は開発中のものです。 07/03/07 18:41:13 j7Va7ezB >>23 PS2はあまりやらなかったから知らんが、GC/PSPあたりではスレッド自体は良く使うんだけど 別に並列動作してるわけじゃないし、CPUの負荷が高いから並列化とかは無かった。皆無だな。 空き時間をポーリングでつぶさないで他のスレッドにCPUを渡す、って感じ。 ショボイ使い方な気がするんだけどね。 ps3と360はマルチコアだからそれぞれのコアに並列化できる処理を割り振るってのはやっているハズ。 うちは次世代はWiiだけなので細かい事情は知らないけど、前述二機種なら効率はともかく どこも並列化に取り組んでると思う。 25:名前は開発中のものです。 07/03/07 20:34:09 O9Z+PTfp 「ラスボスをボム前提にするか否か」 26:名前は開発中のものです。 07/03/07 20:35:58 BgXgSYq3 否。 27:名前は開発中のものです。 07/03/07 21:43:02 DvFrCz1t >>24 >空き時間をポーリングでつぶさないで他のスレッドにCPUを渡す、って感じ。 そうなんだ。制御系だとハードウェア割り込み(タイマ割り込み)が使えたりするから これをトリガーにして定期的にフラグチェックとか色々できたりするんだけどね。この場合 ポーリング(スリープ&フラグチェックのループ)のためのスレッド生成も不要だったりする。 コンシューマって結構違うんだね。 ちなみにミドルウェアを使う場合はハードウェア割り込みは隠蔽されちゃうんだけど アプリ側でコールバック関数(フラグチェック関数)を登録するような形で同様の サービスを受けられる場合が多いよ。 あと、ポーリング(スリープ&フラグチェックのループ)の待ちぼうけの時間が惜しいから スレッドを分けてるんだよね。それも結局は「1フレームで処理を終わらせるため」の 最適化目的だと思うんだ。PCの場合もDirectXの中に糞重いメソッドがあって待ちぼうけ 食らったりするけど、気長に待ってても処理時間は余裕で余ったりする。それと DirectX使う場合はdllが別スレッドで走ってるので、待ちぼうけ食らいそうな描画メソッドとかは ドライバ内部のコマンドキューに突っ込んですぐに処理を返してくれたりする。 アプリ側コードがしょぼいシングルスレッドでも、DirectXが何とかしてくれてる。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch