Remove eye argument from lovr.draw;

This commit is contained in:
bjorn 2018-03-10 23:42:33 -08:00
parent b266d0316c
commit 5feb47c5b7
6 changed files with 10 additions and 12 deletions

View File

@ -16,12 +16,11 @@ typedef struct {
static HeadsetRenderData headsetRenderData;
static void renderHelper(HeadsetEye eye, void* userdata) {
static void renderHelper(void* userdata) {
HeadsetRenderData* renderData = userdata;
lua_State* L = renderData->L;
lua_rawgeti(L, LUA_REGISTRYINDEX, renderData->ref);
luax_pushenum(L, &HeadsetEyes, eye);
lua_call(L, 1, 0);
lua_call(L, 0, 0);
}
int l_lovrHeadsetInit(lua_State* L) {

View File

@ -305,7 +305,7 @@ static ModelData* fakeControllerNewModelData(Controller* controller) {
return NULL;
}
static void fakeRenderTo(headsetRenderCallback callback, void* userdata) {
static void fakeRenderTo(void (*callback)(void*), void* userdata) {
if (!state.mirrored) {
return;
}
@ -326,7 +326,7 @@ static void fakeRenderTo(headsetRenderCallback callback, void* userdata) {
lovrGraphicsPushLayer(layer);
lovrGraphicsClear(true, true, true, lovrGraphicsGetBackgroundColor(), 1., 0);
callback(EYE_LEFT, userdata);
callback(userdata);
lovrGraphicsPopLayer();
}

View File

@ -201,7 +201,7 @@ ModelData* lovrHeadsetControllerNewModelData(Controller* controller) {
}
}
void lovrHeadsetRenderTo(headsetRenderCallback callback, void* userdata) {
void lovrHeadsetRenderTo(void (*callback)(void*), void* userdata) {
if (headset) {
headset->renderTo(callback, userdata);
}

View File

@ -62,7 +62,6 @@ typedef struct {
} Controller;
typedef vec_t(Controller*) vec_controller_t;
typedef void (*headsetRenderCallback)(HeadsetEye eye, void* userdata);
typedef struct {
HeadsetDriver driverType;
@ -91,7 +90,7 @@ typedef struct {
bool (*controllerIsTouched)(Controller* controller, ControllerButton button);
void (*controllerVibrate)(Controller* controller, float duration, float power);
ModelData* (*controllerNewModelData)(Controller* controller);
void (*renderTo)(headsetRenderCallback callback, void* userdata);
void (*renderTo)(void (*callback)(void*), void* userdata);
void (*update)(float dt);
} HeadsetInterface;
@ -126,5 +125,5 @@ bool lovrHeadsetControllerIsDown(Controller* controller, ControllerButton button
bool lovrHeadsetControllerIsTouched(Controller* controller, ControllerButton button);
void lovrHeadsetControllerVibrate(Controller* controller, float duration, float power);
ModelData* lovrHeadsetControllerNewModelData(Controller* controller);
void lovrHeadsetRenderTo(headsetRenderCallback callback, void* userdata);
void lovrHeadsetRenderTo(void (*callback)(void*), void* userdata);
void lovrHeadsetUpdate(float dt);

View File

@ -670,7 +670,7 @@ static ModelData* openvrControllerNewModelData(Controller* controller) {
return modelData;
}
static void openvrRenderTo(headsetRenderCallback callback, void* userdata) {
static void openvrRenderTo(void (*callback)(void*), void* userdata) {
ensureCanvas();
state.isRendering = true;
state.compositor->WaitGetPoses(state.renderPoses, 16, NULL, 0);
@ -705,7 +705,7 @@ static void openvrRenderTo(headsetRenderCallback callback, void* userdata) {
// Render
lovrGraphicsPushLayer(layer);
lovrGraphicsClear(true, true, false, lovrGraphicsGetBackgroundColor(), 1., 0);
callback(EYE_LEFT, userdata);
callback(userdata);
lovrGraphicsPopLayer();
// OpenVR changes the OpenGL texture binding, so we reset it after rendering

View File

@ -245,7 +245,7 @@ static ModelData* webvrControllerNewModelData(Controller* controller) {
return NULL;
}
static void webvrRenderTo(headsetRenderCallback callback, void* userdata) {
static void webvrRenderTo(void (*callback)(void*), void* userdata) {
state.renderCallback = callback;
emscripten_vr_set_render_callback(onRequestAnimationFrame, userdata);
}