У меня проблема с использованием целей рендеринга, которые, я надеюсь, кто-то может мне объяснить.
Я пытаюсь использовать цель рендеринга для рендеринга некоторых спрайтов, а затем нарисовать указанную цель рендеринга в обычном обратном буфере, на 50% непрозрачном (нулевом) Это прекрасно работает, за исключением случаев, когда я использую цель более одного раза в вызове отрисовки, и в этом случае на экране появится только последняя группа спрайтов.
Вот код псевдо.
// Normal Sprite Drawing.
DrawSomeSprites();
SetRenderTarget(CompositeTarget);
// These go on the render target.
DrawSomeMoreSprites();
SetRenderTarget(null);
// And now I draw onto the back buffer.
DrawSprite(CompositeTarget);
// So now I want to draw another bunch of sprites via my render target using the same approach.
SetRenderTarget(CompositeTarget);
// These are the only sprites that I can see on the screen.
DrawSomeMoreSprites();
SetRenderTarget(null);
DrawSprite(CompositeTarget);
Надеюсь, это имеет смысл. Мне кажется, что каждый раз, когда я меняю цель рендеринга, предыдущая цель рендеринга (ноль) по какой-то причине очищается. Я заканчиваю все свои партии спрайтов перед тем, как менять цели, и я не получаю никаких ошибок, поэтому я не знаю, что здесь делать. Очевидно, что цель состоит в том, чтобы иметь возможность видеть все мои группы спрайтов на экране одновременно. Что мне здесь не хватает ??