made startFrame() callable from lua, filled in Engine::setCamera()
git-svn-id: svn://anubis/anaglym/trunk@40 99a6e188-d820-4881-8870-2d33a10e2619
This commit is contained in:
parent
a1c8736488
commit
7bc249599f
1
ag.cc
1
ag.cc
@ -26,6 +26,7 @@ namespace ag
|
|||||||
{ "videoStart", videoStart },
|
{ "videoStart", videoStart },
|
||||||
{ "videoStop", videoStop },
|
{ "videoStop", videoStop },
|
||||||
{ "sleep", sleep },
|
{ "sleep", sleep },
|
||||||
|
{ "startFrame", startFrame },
|
||||||
{ "endFrame", endFrame },
|
{ "endFrame", endFrame },
|
||||||
{ "setCamera", setCamera },
|
{ "setCamera", setCamera },
|
||||||
{ NULL, NULL }
|
{ NULL, NULL }
|
||||||
|
31
anaglym.cc
31
anaglym.cc
@ -180,6 +180,7 @@ Engine::Object * Engine::getObject(int id)
|
|||||||
|
|
||||||
int Engine::startFrame(lua_State * L)
|
int Engine::startFrame(lua_State * L)
|
||||||
{
|
{
|
||||||
|
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||||
glMatrixMode(GL_MODELVIEW);
|
glMatrixMode(GL_MODELVIEW);
|
||||||
glLoadIdentity();
|
glLoadIdentity();
|
||||||
gluLookAt(m_eye[0], m_eye[1], m_eye[2],
|
gluLookAt(m_eye[0], m_eye[1], m_eye[2],
|
||||||
@ -197,6 +198,36 @@ int Engine::endFrame(lua_State * L)
|
|||||||
int Engine::setCamera(lua_State * L)
|
int Engine::setCamera(lua_State * L)
|
||||||
{
|
{
|
||||||
int argc = lua_gettop(L);
|
int argc = lua_gettop(L);
|
||||||
|
|
||||||
|
vector<double> args;
|
||||||
|
for (int i = 1; i <= argc; i++)
|
||||||
|
{
|
||||||
|
int type = lua_type(L, i);
|
||||||
|
if (type == LUA_TNUMBER || type == LUA_TSTRING)
|
||||||
|
args.push_back(lua_tonumber(L, i));
|
||||||
|
else
|
||||||
|
args.push_back(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (argc >= 3)
|
||||||
|
{
|
||||||
|
m_eye[0] = args[0];
|
||||||
|
m_eye[1] = args[1];
|
||||||
|
m_eye[2] = args[2];
|
||||||
|
}
|
||||||
|
if (argc >= 6)
|
||||||
|
{
|
||||||
|
m_center[0] = args[3];
|
||||||
|
m_center[1] = args[4];
|
||||||
|
m_center[2] = args[5];
|
||||||
|
}
|
||||||
|
if (argc >= 9)
|
||||||
|
{
|
||||||
|
m_up[0] = args[6];
|
||||||
|
m_up[1] = args[7];
|
||||||
|
m_up[2] = args[8];
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user