По какой-то причине все, что я пробовал, что было онлайн о разрешении независимости, действительно не работает так, как хотелось бы. Большинство решений предлагают способ получить ширину и высоту, а затем использовать класс с ними, но результатом всегда является изображение отсечки (слишком большое изображение) или изображение в верхнем левом углу с меньшей высотой и шириной, чем у экран.Независимость от разрешения XNA
P.S. Игра находится в полноэкранном режиме, но мы попытались окончить, и это тоже не сработало.
У нас уже есть довольно большой проект, значит ли это, что мы должны изменить все розыгрыши. Извините, но я не совсем понимаю, что «так вы можете использовать его в качестве аргумента, например: SpriteBatch.Draw (renderTarget, Viewport.Bounds, Color.White)». Я не уверен, как рисовать все с целью рендеринга. – frostblooded
В начале вашего метода 'Game.Draw()' добавьте 'GraphicsDevice.SetRenderTarget (target)' перед 'GraphicsDevice.Clear()'. Затем выполните все ваши обычные призывы рисования, а затем вызовите 'GraphicsDevice.SetRenderTarget (null)'. «target» - объект типа «RenderTarget2D». На данный момент у вас не должно быть ничего рисунка, кроме фиолетового фона - это означает, что на экран или backbuffer ничего не было нарисовано, а скорее цель, которую вы предоставили! Теперь вы вызываете 'SpriteBatch.Draw()', и когда любая из перегрузок запрашивает объект Texture2D, вы можете предоставить ему «цель». –
Но не нужно ли Texture2D знать, какую текстуру нарисовать? – frostblooded