|
|
@@ -387,7 +387,7 @@ public class LwjglRenderer implements Renderer {
|
|
|
|
|
|
logger.log(Level.INFO, "Caps: {0}", caps);
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
public void invalidateState() {
|
|
|
context.reset();
|
|
|
boundShader = null;
|
|
|
@@ -1145,15 +1145,15 @@ public class LwjglRenderer implements Renderer {
|
|
|
|
|
|
public void copyFrameBuffer(FrameBuffer src, FrameBuffer dst, boolean copyDepth) {
|
|
|
if (GLContext.getCapabilities().GL_EXT_framebuffer_blit) {
|
|
|
- int srcX = 0;
|
|
|
- int srcY = 0;
|
|
|
- int srcW = 0;
|
|
|
- int srcH = 0;
|
|
|
+ int srcX0 = 0;
|
|
|
+ int srcY0 = 0;
|
|
|
+ int srcX1 = 0;
|
|
|
+ int srcY1 = 0;
|
|
|
|
|
|
- int dstX = 0;
|
|
|
- int dstY = 0;
|
|
|
- int dstW = 0;
|
|
|
- int dstH = 0;
|
|
|
+ int dstX0 = 0;
|
|
|
+ int dstY0 = 0;
|
|
|
+ int dstX1 = 0;
|
|
|
+ int dstY1 = 0;
|
|
|
|
|
|
int prevFBO = context.boundFBO;
|
|
|
|
|
|
@@ -1176,32 +1176,32 @@ public class LwjglRenderer implements Renderer {
|
|
|
|
|
|
if (src == null) {
|
|
|
glBindFramebufferEXT(GL_READ_FRAMEBUFFER_EXT, 0);
|
|
|
- srcX = vpX;
|
|
|
- srcY = vpY;
|
|
|
- srcW = vpW;
|
|
|
- srcH = vpH;
|
|
|
+ srcX0 = vpX;
|
|
|
+ srcY0 = vpY;
|
|
|
+ srcX1 = vpX + vpW;
|
|
|
+ srcY1 = vpY + vpH;
|
|
|
} else {
|
|
|
glBindFramebufferEXT(GL_READ_FRAMEBUFFER_EXT, src.getId());
|
|
|
- srcW = src.getWidth();
|
|
|
- srcH = src.getHeight();
|
|
|
+ srcX1 = src.getWidth();
|
|
|
+ srcY1 = src.getHeight();
|
|
|
}
|
|
|
if (dst == null) {
|
|
|
glBindFramebufferEXT(GL_DRAW_FRAMEBUFFER_EXT, 0);
|
|
|
- dstX = vpX;
|
|
|
- dstY = vpY;
|
|
|
- dstW = vpW - 1;
|
|
|
- dstH = vpH - 1;
|
|
|
+ dstX0 = vpX;
|
|
|
+ dstY0 = vpY;
|
|
|
+ dstX1 = vpX + vpW;
|
|
|
+ dstY1 = vpY + vpH;
|
|
|
} else {
|
|
|
glBindFramebufferEXT(GL_DRAW_FRAMEBUFFER_EXT, dst.getId());
|
|
|
- dstW = dst.getWidth() - 1;
|
|
|
- dstH = dst.getHeight() - 1;
|
|
|
+ dstX1 = dst.getWidth();
|
|
|
+ dstY1 = dst.getHeight();
|
|
|
}
|
|
|
int mask = GL_COLOR_BUFFER_BIT;
|
|
|
if (copyDepth) {
|
|
|
mask |= GL_DEPTH_BUFFER_BIT;
|
|
|
}
|
|
|
- glBlitFramebufferEXT(0, 0, srcW, srcH,
|
|
|
- 0, 0, dstW, dstH, mask,
|
|
|
+ glBlitFramebufferEXT(srcX0, srcY0, srcX1, srcY1,
|
|
|
+ dstX0, dstY0, dstX1, dstY1, mask,
|
|
|
GL_NEAREST);
|
|
|
|
|
|
|