访问LuaJava中的常量

时间:2013-06-14 16:18:27

标签: java android opengl-es lua

我正在将LuaJava改编为我的Android应用程序,并希望脚本能够运行OpenGL函数。我使用pushJavaObject在一个函数中将GL上下文推送到Lua,它可以工作。但是我不能在GL10类中使用任何常量,如COLOR_BUFFER_BIT。有没有办法访问这些?我是否必须复制所有常量?

这有效

function onUpdate(gl)
    GL_COLOR_BUFFER_BIT = 16384
    gl:glClearColor(1, 1, 0, 1)
    gl:glClear(GL_COLOR_BUFFER_BIT)
end

这失败

function onUpdate(gl)        
    gl:glClearColor(1, 1, 0, 1)
    gl:glClear(gl:GL_COLOR_BUFFER_BIT)
end

Java方

l.getGlobal("onUpdate");
l.pushJavaObject(gl);
l.pcall(1, 1, 0);

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

gl:glClear(gl.GL_COLOR_BUFFER_BIT)

在第二个gl

之后注意点

此链接描述了.:

之间的区别