ぶっちゃけRubyはなにがどうなってるのかまったく知らないのでアドバイスはできんが
C++ならファクトリー関数をクラスに持たせてやることでカプセル化が強固になる。

クラス内での生成はしたくないということだが、必要なときに必要なものだけ生成するようにしないと
全部のリソースオンメモリなゲームになる。STG程度ならまあいまのPCなら余裕ではあるが。