lovr/src/api/types/canvas.c

35 lines
869 B
C
Raw Normal View History

2017-12-07 07:50:52 +00:00
#include "api/lovr.h"
#include "graphics/graphics.h"
#include "graphics/canvas.h"
int l_lovrCanvasRenderTo(lua_State* L) {
Canvas* canvas = luax_checktype(L, 1, Canvas);
lovrGraphicsPushView();
lovrCanvasBind(canvas);
lua_settop(L, 2);
lua_call(L, 0, 0);
lovrCanvasResolveMSAA(canvas);
lovrGraphicsPopView();
return 0;
}
2017-12-09 18:52:46 +00:00
int l_lovrCanvasGetFormat(lua_State* L) {
Canvas* canvas = luax_checktype(L, 1, Canvas);
TextureFormat format = lovrCanvasGetFormat(canvas);
luax_pushenum(L, &TextureFormats, format);
return 1;
}
2017-12-08 02:14:24 +00:00
int l_lovrCanvasGetMSAA(lua_State* L) {
Canvas* canvas = luax_checktype(L, 1, Canvas);
lua_pushinteger(L, lovrCanvasGetMSAA(canvas));
return 1;
}
2017-12-07 07:50:52 +00:00
const luaL_Reg lovrCanvas[] = {
2017-12-08 02:14:24 +00:00
{ "renderTo", l_lovrCanvasRenderTo },
2017-12-09 18:52:46 +00:00
{ "getFormat", l_lovrCanvasGetFormat },
2017-12-08 02:14:24 +00:00
{ "getMSAA", l_lovrCanvasGetMSAA },
2017-12-07 07:50:52 +00:00
{ NULL, NULL }
};