Więc zacząłem mój obecny projekt, a pierwszą rzeczą, którą zrobiłem, było uruchomienie go i dało mi powyższy wyjątek. Wczoraj w nocy wszystko było w porządku. To wszystko jest kodem w moim losowaniu. spriteBatch.Begin nie pojawia się nigdzie indziej w projekcie. Usunięcie Begin tutaj powoduje, że spriteBatch.Draw rzuca wyjątek, umieszczając spriteBatch.End tuż przed rozpoczęciem również zgłasza wyjątek. Nie rozumiem, co jest nie tak i jak to naprawić.SpriteBatch: "Begin nie może zostać wywołany ponownie, dopóki nie zostanie wywołany End."
GraphicsDevice.Clear(Color.CornflowerBlue);
spriteBatch.Begin();
spriteBatch.Draw(background, Vector2.Zero, Color.White);
player.Draw(spriteBatch);
level1.Draw(spriteBatch);
spriteBatch.End();
base.Draw(gameTime);
Czy możesz podać metody losowania dla gracza i poziomu 1? Ponieważ problem może wynikać z tych metod. –
2 Możliwości: 1 | albo w player.draw lub level1.drawisz wywołanie spritebatch.begin() 2 | Funkcja spirteBatch.End() nie zostaje wywołana, ponieważ jej nie osiągasz. – Svexo