lovr/src/api/types/model.c

32 lines
800 B
C
Raw Normal View History

2017-03-11 11:08:07 +00:00
#include "api/lovr.h"
#include "graphics/model.h"
2016-10-31 20:54:32 +00:00
int l_lovrModelDraw(lua_State* L) {
2016-11-19 08:57:18 +00:00
Model* model = luax_checktype(L, 1, Model);
float transform[16];
luax_readtransform(L, 2, transform, 1);
lovrModelDraw(model, transform);
2016-10-31 20:54:32 +00:00
return 0;
}
2016-11-08 22:51:58 +00:00
int l_lovrModelGetTexture(lua_State* L) {
2016-11-19 08:57:18 +00:00
Model* model = luax_checktype(L, 1, Model);
Texture* texture = lovrModelGetTexture(model);
luax_pushtype(L, Texture, texture);
2016-11-08 22:51:58 +00:00
return 1;
}
int l_lovrModelSetTexture(lua_State* L) {
2016-11-19 08:57:18 +00:00
Model* model = luax_checktype(L, 1, Model);
Texture* texture = luax_checktype(L, 2, Texture);
2016-11-08 22:51:58 +00:00
lovrModelSetTexture(model, texture);
return 0;
}
2017-03-11 11:08:07 +00:00
const luaL_Reg lovrModel[] = {
{ "draw", l_lovrModelDraw },
{ "getTexture", l_lovrModelGetTexture },
{ "setTexture", l_lovrModelSetTexture },
{ NULL, NULL }
};