ELLO,
Я пытаюсь нарисовать на RenderTarget2D, а затем нарисовать это на экране. Проблема в том, что когда и где метод, в котором я это делаю, называется RenderTarget, назначенным для GraphicsDevice в SpriteBatch, который я использую, это не обязательно является буфером, поэтому вызов SetRenderTarget (null) его не обрезает. К сожалению, GraphicsDevice имеет только метод GetRenderTargets (), который возвращает массив RenderTargetBindings, который, в свою очередь, содержит только текстуры, в отличие от RenderTarget2D-s. Поэтому я не могу сохранить текущий используемый RenderTarget2D как RenderTarget2D перед переключением на новый.
код
public static void drawingMethod(SpriteBatch sb/*, stuff for drawing*/)
{
RenderTarget2D temp = new RenderTarget2D(sb.GraphicsDevice, X, Y);
RenderTarget2D save = ????
sb.GraphicsDevice.SetRenderTarget(temp);
sb.Begin();
//Drawing things here.
sb.End();
sb.GraphicsDevice.SetRenderTarget(save);
sb.Begin();
sb.Draw(temp, new Vector(0, 0), Color.White);
sb.End();
}
Есть идеи?
Ty
zoliking