どうやらキャラクタのエンティティ管理と描画まわりの設計に失敗しているらしい。MVCモデルよろしく、複数のViewを想定し、エンティティクラスがその描画クラスに依存しない設計にしてあるが、これがどうやら間違いだったようだ。大抵のソフトはデータを操作することを目的とするのに対して、ゲームのキャラクタというのは特定の描画をすることそのものが主目的としてある。全く目的が逆なのだ。また、ネットからのパケットに基づくエンティティと、ユーザーが操作するエンティティと同じように描画することもあり、一対多の関係はエンティティの方が多となっている。だから相互依存をなくしてどちらか一方からの依存をとるということなら描画クラスからエンティティへの依存を取り除くべきだった。

今更リファクタリング…できるかな。