Вы не указали, нужно ли запускать оба обновления одновременно, поэтому я исхожу из предположения, что один компонент - это единственный, который нужно рисовать.
При использовании DrawableGameComponents
они автоматически синхронизируютсяс вашим Game
объектом, но, если вы храните ссылку на каждый компонент вместо того, чтобы создавать их без сохраненной ссылки, например:
componentOne = new FirstComponenet(this);
Components.Add(componentOne);
componentTwo = new SecondComponent(this);
Components.Add(componentTwo);
// Immediately disable componetTwo
componentTwo.Enabled = false; // Prevents Update from firing
componentTwo.Visible = false; // Prevents Draw from firing (for Drawable components only)
, тогда вы можете позволить XNA управлять циклами Update / Draw какпо нормальному.componentOne
и componentTwo
переменные уровня класса, вы можете управлять, когда каждая из них активна.
Опять же, это основано на предположении, что вам не нужно обновлять одно одновременно с другим..