エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
概要 前回 は Entity のリストの中から複数の Entity を同時にミュータブル参照する方法について書きま... 概要 前回 は Entity のリストの中から複数の Entity を同時にミュータブル参照する方法について書きました。今回は ECS でもよく使われる世代型Id (Generational Id) アリーナの利用と最適化について書こうと思います。 ゲームにおいては Entity が他の Entity への参照を保持しておきたいことがあります。例えばシューティングゲームの誘導ミサイルはターゲットの Entity への参照を持っておくことで、ターゲットの位置が移動しても追従することができます。 C や C++ ではポインタで参照することはできますが、対象の Entity が削除されたら、 dangling pointer が発生してしまいます。これを防ぐために std::shared_ptr を使うことはできますが、参照カウントの管理コストが生じます。もっと重大な問題として、循環参照がリーク