В настоящее время я пытаюсь добавить логику Screens в мою игру с космическими захватчиками на основе XNA.
Моя проблема:
Каждый экран управляет своими собственными игровыми компонентами (SpaceShip, EnemyMatrix и т. Д.) С помощьюсправка экземпляра CompositeDrawableComponent, используемого в качестве GameComponentsManager.
Каждый игровой компонент содержит в себе дополнительные игровые компоненты (т. Е. SpaceShip, держащий Bullet) и, таким образом, содержит собственный экземпляр GameComponentsManager.
Каждый GameComponentsManager содержит SpriteBatch для всех своих компонентов, т.е. PlayScreen использует уникальный SpriteBatch для своих космических кораблей, а каждый космический корабль использует уникальный SpriteBatch для своих пуль.
В результате космический кораблькомпоненты просто рисуются за компонентами экрана (в моем случае, фоном) и остаются невидимыми для пользователя.
Как я могу решить эту проблему?