mirror of https://github.com/bjornbytes/lovr.git
Remove eye argument from lovr.draw;
This commit is contained in:
parent
b266d0316c
commit
5feb47c5b7
|
@ -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) {
|
||||
|
|
|
@ -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();
|
||||
}
|
||||
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue