나는 작은 탁구 게임을 만들기 위해 IUP로 의견을 얻으려고 노력해 왔습니다. 나는 약간의 입력을 시도하고 싶었고 IUPGL 예제와 함께 제공되는 코드 중 일부를 시도했지만 입력이 전혀 작동하지 않는 것 같습니다. 여기가 지금까지의 약자로 코드입니다 :루아에서 IUP로 입력 받기
require "iuplua"
require "iupluagl"
require "luagl"
paddle = {x = -0.9, y = 0.2}
function drawPaddle(x, y)
gl.Begin(gl.QUADS)
gl.Color(0.0, 0.5, 0.0)
gl.Vertex(x, y)
gl.Vertex(x + 0.1, y)
gl.Vertex(x + 0.1, y - 0.4)
gl.Vertex(x, y - 0.4)
end
canvas = iup.glcanvas{buffer = "DOUBLE", rastersize = "300x300"}
function canvas:action(x, y)
iup.GLMakeCurrent(self)
gl.ClearColor(0.0, 0.0, 0.0, 0.0)
gl.Clear(gl.COLOR_BUFFER_BIT)
gl.Clear(gl.DEPTH_BUFFER_BIT)
gl.MatrixMode(gl.PROJECTION)
gl.Viewport(0, 0, 300, 300)
gl.LoadIdentity()
drawPaddle(paddle.x, paddle.y)
gl.End()
iup.GLSwapBuffers(self)
end
window = iup.dialog{canvas, title = "Soon to be Pong"}
function canvas:k_any(c)
if c == iup.K_q then
return iup.CLOSE
elseif c == iup.K_w then
paddle.y = paddle.y + 0.02
return iup.CONTINUE
else
return iup.DEFAULT
end
end
window:show()
iup.MainLoop()
그것은 키를 누를 때 canvas:k_any()
가 호출되는 것을 나의 이해하지만 그것도 종료 명령에 응답하지 않는 것. 어떤 아이디어?
당신은 아마 http://lists.luaforge.net/cgi-bin/mailman/listinfo/iup-mail 또는 루아 메일 링리스트 HTTP에 IUP 메일 링리스트에이 질문을한다 .conectiva.com.br/mailman/listinfo/lua IUP 작성자는 책을 읽고 있으며 대개 매우 유용하며 반응이 좋습니다. –
여러 프로젝트에서 IUP를 사용하지만 아직 IUPGL을 사용하지 않았습니다.비록 내가 CD 대신 하나의 프로젝트에 구현해야만했던 오디오 레벨 미터 컨트롤을 위해 CD를 사용해야 만했을 것입니다 ... 저는 C 언어에서 직접 IUP를 사용할 때보다 키 콜백이 루아 바인딩에서 더 이상하다고 알고 있습니다 따라서 소스 코드를 살펴볼 수있는 곳이 될 것입니다. 나는 IUP 목록을 시도 할 추천서를 두 번째 것이다. 저자는 일반적으로 빠르게 반응하며, 고급 사용자에게도 많은 도움을 제공 할 것입니다. – RBerteig