mirror of https://github.com/bjornbytes/lovr.git
Clear HMD canvas properly;
This commit is contained in:
parent
de0ab5402c
commit
17c81a3502
|
@ -1199,6 +1199,11 @@ void lovrGraphicsPushDisplay(int framebuffer, mat4 projection, int* viewport) {
|
|||
state.displays[state.display].framebuffer = framebuffer;
|
||||
memcpy(state.displays[state.display].projection, projection, 16 * sizeof(float));
|
||||
memcpy(state.displays[state.display].viewport, viewport, 4 * sizeof(int));
|
||||
|
||||
if (state.canvasCount == 0) {
|
||||
lovrGraphicsBindFramebuffer(framebuffer);
|
||||
lovrGraphicsSetViewport(viewport[0], viewport[1], viewport[2], viewport[3]);
|
||||
}
|
||||
}
|
||||
|
||||
void lovrGraphicsPopDisplay() {
|
||||
|
|
|
@ -764,7 +764,7 @@ static void openvrRenderTo(headsetRenderCallback callback, void* userdata) {
|
|||
lovrGraphicsPushDisplay(state.canvas->texture.id, projection, viewport);
|
||||
lovrGraphicsPush();
|
||||
lovrGraphicsMatrixTransform(MATRIX_VIEW, transform);
|
||||
lovrGraphicsClear(true, true, false, (Color) { 0, 0, 0, 0 }, 1., 0);
|
||||
lovrGraphicsClear(true, true, false, lovrGraphicsGetBackgroundColor(), 1., 0);
|
||||
callback(eye, userdata);
|
||||
lovrGraphicsPop();
|
||||
lovrGraphicsPopDisplay();
|
||||
|
|
|
@ -15,7 +15,7 @@ typedef struct {
|
|||
static HeadsetState state;
|
||||
|
||||
static void onRequestAnimationFrame(void* userdata) {
|
||||
lovrGraphicsClear(true, true, true);
|
||||
lovrGraphicsClear(true, true, true, lovrGraphicsGetBackgroundColor(), 1., 0);
|
||||
|
||||
int width = emscripten_vr_get_display_width();
|
||||
int height = emscripten_vr_get_display_height();
|
||||
|
|
Loading…
Reference in New Issue