Graphics 在二维图形中,什么是';渲染到目标然后再渲染到屏幕的性能开销是多少?

Graphics 在二维图形中,什么是';渲染到目标然后再渲染到屏幕的性能开销是多少?,graphics,2d,culling,Graphics,2d,Culling,我在做一个分屏游戏。当我渲染每个拆分屏幕时,屏幕边界外有一些重叠 屏幕将是10x10瓷砖大小。如果向右移动半个平铺,假设splitscreen视图居中,屏幕上显示的左边缘和右边缘现在是半个平铺 但是,我不可能渲染半个平铺,因此将渲染整个平铺。我必须渲染一个额外的平铺(我实际上渲染了12个以使其更容易),这样当你移动时,边缘就不会有黑色的间隙 如果splitscreen是屏幕的全尺寸,则此重叠不是问题。但是,如果并排渲染两个splitscreens,则最后绘制的一个将与另一个重叠,前提是有任何位超

我在做一个分屏游戏。当我渲染每个拆分屏幕时,屏幕边界外有一些重叠

屏幕将是10x10瓷砖大小。如果向右移动半个平铺,假设splitscreen视图居中,屏幕上显示的左边缘和右边缘现在是半个平铺

但是,我不可能渲染半个平铺,因此将渲染整个平铺。我必须渲染一个额外的平铺(我实际上渲染了12个以使其更容易),这样当你移动时,边缘就不会有黑色的间隙

如果splitscreen是屏幕的全尺寸,则此重叠不是问题。但是,如果并排渲染两个splitscreens,则最后绘制的一个将与另一个重叠,前提是有任何位超出了线的范围,例如可见半块的另一半

我认为解决方案是将每个分割屏幕渲染为纹理,并将纹理绘制到屏幕上,裁剪出重叠边界的部分

我想不出为什么会有太多的性能开销,因为这将是一个纹理在屏幕上的渲染,没有效果变换。但我想知道我是否弄错了,这是否会使比赛速度大大放慢


是否有更好的解决方案,或者这个解决方案可以吗?

一般来说,这应该可以忽略不计。我使用过的所有图形硬件都会渲染到视频内存中的交替缓冲区中。通常,将渲染目标设置为内存中的任意纹理同样容易。然后,唯一的开销是将纹理复制到渲染缓冲区的操作。不是零时间,但肯定很少。如果您比我聪明得多,您可以将标准渲染缓冲区的片段视为纹理,并避免复制然而,我当然不擅长未指定、任意或虚构的图形系统,因此我想如果没有更多信息,我不应该如此专横;)