はじめに タスクとは「Windowsはマルチタスクだ」という時のタスクに同義ですが、プログラム的にはオブジェクトに近いです。シューティングゲームを作る場合は「自機」「敵」「敵出現制御」「得点管理」「タイトル画面」など、ゲームを構成する全ての要素をタスクとします。 タスクシステムとは、これら複数のタスクを管理する仕組みであり、現在でもプロの現場で用いられています。長所は次の通りです。 ジャンルを問わず様々なゲームに適用できる 並列処理をうまい具合に実現できる ゲームの流れを自然な形で表現できる 大規模なゲームも開発できる タスクごとに独立しているため、複数人で開発できる 一方の短所は、タスクシステムの歴史が古いことに起因する、高すぎる自由度です。さまざまな実装方法があり、またオブジェクト指向が一般的ではなかった時代の手法なためか、スパゲティプログラムや、データの隠蔽化が不十分なプログラムとな
![本格的なシューティングゲームを実現するタスクシステム](https://cdn-ak-scissors.b.st-hatena.com/image/square/e5acf576112513fe08698398874275615f2c3afe/height=288;version=1;width=512/https%3A%2F%2Fcodezine.jp%2Fstatic%2Fimages%2Farticle%2F297%2F297_arena.png)