タスクシステム総合スレ part6at GAMEDEVタスクシステム総合スレ part6 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト112:並列さん ◆dPfetnROQg 09/04/06 03:41:43 yXbkibtb >>109 >>B. 動的にオブジェクトを移動させvector<T>に入れる >の意味が謎。型なんて生まれてから死ぬまで変わらないんだから動的に管理する意味なんてないだろ。 確かに上の(俺の)日本語、わかりにくいな。それはすまんかった。 生成時にいったんvector<T>に入れてオブジェクトが死ぬまで アドレスの変更などが発生しないのがA。 それに対して、描画フレーム毎に、オブジェクトを移動させ compactionを行なうという意味がB。 113:並列さん ◆dPfetnROQg 09/04/06 03:45:41 yXbkibtb >>109 >>プライオリティが変わるごとにstd::vectorに対してそんなことしたら > プライオリティーなんて滅多に変わらないだろうし、現実問題として、 > それで問題ないだろう。 あんたの実装、vector<T*>ではなく、vector<T>だよな? オブジェクトが死ぬごとにremoveが発生してそこ以降のオブジェクト全部 コピーすることになるんだが、これ、いつ後始末するつもりだ? また死んだオブジェクト(タスク)はどうやって判定するつもりだ? オブジェクトひとつずつにデリートマークがあって、foreachのときに デリートマークをチェックしながらiterationを行なうのか? それともどこかで死んだオブジェクトを詰める(removeする)作業をするのか? そのときにそこ以降のオブジェクトのアドレスが書き換わるから、 それを参照しているポインタ全部書き換えなきゃならんのだが。 本当にそんな実装が速いと思うのか? 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch