プログラミングの作業に何の価値も見出せなくなってしまったd金魚による日記 このページをアンテナに追加 RSSフィード

 iTunes Music Store(Japan) なかのひと あわせて読みたいブログパーツ
|

0001 | 00 |
2004 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2005 | 01 | 02 | 03 | 04 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2006 | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 |
2008 | 01 | 02 | 03 | 05 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 |
2010 | 03 | 04 | 06 | 07 | 09 | 10 | 11 |
2011 | 01 | 02 | 10 |
2012 | 04 |
2013 | 01 | 05 | 06 | 07 | 08 | 10 |
2014 | 02 | 03 | 05 | 09 |
2015 | 04 |
2016 | 09 | 11 | 12 |
はてな一覧
アンテナに追加
私のアンテナ
私のダイアリー
私のアーカイブ
私のアイデア
私のブックマーク
私のグループ
私のキーワード
ニュース系、今まで続いているシリーズモノの読み物
dKingyo Utility Toolkit Projectのリリース情報
やっぱり暗号化は大人の味(笑)
プログラムのパッキング方法を調べよ
ココが厳しいよMinGW
ライブラリアン通信
ゲームプログラミングどうしよう
CRCについて
ビット演算練習
d金魚の今更Ajax
Windows Tips
VC6 Tips
Win32 WTL Tips
Ruby for C++ User
Ruby Tips
今日のRubyで嵌った事
正規表現PIECE
書きかけ
続く・・・

私のダイアリーの人気記事
新しくブックマークされた記事


あまり、役に立たなそうな個人的に調べた情報や妄想に耽った事、今 勉強している事ヒソヒソと公開していたりします。 | 登録してくれている方々 | d金魚にメール | 当サイトは640x480の画面解像度に対応しています。
日記へのリンク、アンリンクはフリーですが、selfタグのついている部分のコンテンツの引用はご遠慮願います。ご協力よろしくお願いします。


 | 

2004-08-23 ゲームプログラミングで使うタスク処理についての考察

以下の文章は今プログラムを組んでいるタスクエンジンに関する説明書に書いているのをそのままコピペしたものです。

[][]タスク処理に関する持論 タスク処理に関する持論を含むブックマーク タスク処理に関する持論のブックマークコメント


タスクマネージャー(タスクの生成、削除を管理するもの)(このソースではDKC_TASK_ENGINE構造体)

タスク(一つの処理)(このソースではDKC_TASK構造体)

タスクマネージャーがタスクを操作する形。

ここで、今までのタスク処理に関して多少不満があった。

と言う事で、これらの解決案としては

  • 一つのタスクマネージャーはタスクを管理できるのは255-256個にする。 \

また、一連のプロセスの流れに対してタスクマネージャーを一個割り当てるようにする。 \

これらのタスクマネージャーを断層構造にして処理をする方が分かりやすいと考える。

また、タスク処理はメモリ使用量を少なく済ませる事が美徳と考える私は

メモリ使用量をかなり少なめにする事にした。

メモリ使用量を少なくするには空き領域情報とかを無くせば良いと思うが、

その情報が無くなるといちいち線形探索である。

ここらへん、どーすれば良いかが良くわからない・・・。

ARRAY_ONEBYONEとか?

 妄想メモ

  • 通称、順序無しリスト(std::vectorのようなもの?)を使おうか?。\

http://www.aya.or.jp/%7Esanami/peace/memorial/code41-50.html#CODE44

  • タスクワークのプールを外部にする事で、コピーのオーバーヘッドを抑える事が出来るのでは?

と、言う事で、考えてみた結果・・・。

決定事項

  • 関数へのポインタが何もしない関数( Return() )の時のタスク領域は使用可能

以上。このような思想の元にタスクエンジンをくみ上げる事にした。

[]タスク処理の資料 タスク処理の資料を含むブックマーク タスク処理の資料のブックマークコメント

タスク処理については以下のページが詳しい

http://homepage3.nifty.com/moha/

http://www.hh.iij4u.or.jp/~peto/Games/games_top.html

また、Windowsプロフェッショナルゲームプログラミング2という本でも説明がしてある。

*1:例えばシューティングで弾を沢山出したい時、弾ひとつをタスクとすると沢山のタスクがタスクマネージャーに登録される。
これにより、主要処理をしているタスクの状態遷移が見にくくなり、デバッグしにくくなる。
なので、この場合はタスクの中にもう一つ、弾用タスクエンジンを使って、または専用の弾の「生成」「消滅」マネージャーを作ってしまうのが良いと思われる。

トラックバック - http://d.hatena.ne.jp/studiokingyo/20040823
 | 
Program | Debug | dKingyo Utility Toolkit | library | D言語 | 御本とか | 備忘録 | テクニック | WayBack | 格言 | 英語 | 他力本願 | news | software |

デースケドガー