Hi all,
attached is the file gl.pd_lua (tested with 0.41-4) which uses some special lua features to represent a generic opengl function for GEM. GL objects can be created as e.g. [gl Color 1 1 0] or [gl Rect 0 0 400 300]
gr~~~

Attachment: gl.pd_lua
Description: Binary data




Am 25.07.2008 um 21:39 schrieb marius schebella:


Thomas Grill wrote:
Hi Marius,
which version of "luagl" are you referring to?

I have the following here (version 1.01):
*  LuaGL - an OpenGL binding for Lua
*  2003-2004(c) Fabio Guerra, Cleyde Marlyse
*  www.luagl.sourceforge.net

as it's designed by default, lua scripts wouldn't require 'luagl' but rather 'opengl', but this can be changed easily. Then, OpenGL functions reside in a lua library called gl, which means that the are called via gl.Begin etc. I haven't tried from within pdlua, but it seems to basically work in the lua interpreter


I keep getting the same nil error, I think my code has errors, but I am not sure where/which.

require ("opengl")

local basicgl = pd.Class:new():register("basicgl")

function basicgl:initialize(name, atoms)
  self.inlets = 2
  pd.post(tostring(self))
  return true
end

function basicgl:in_1_gem_state(atoms)
        self:render()
end

function basicgl:render()
        gl.Begin(1)
        gl.Vertex(-1, 1, 0)
        gl.Vertex(1, 1, 0)
        gl.Vertex(1, -1, 0)
        gl.Vertex(-1, -1, 0)
        gl.End()
end

error: lua: error in dispatcher:
[string "basicgl"]:16: attempt to index global 'gl' (a nil value)

marius.

gr~~~


Am 19.07.2008 um 20:14 schrieb marius schebella:

hi,
here's the code that I am trying to run:
require 'luagl'

local testgl1 = pd.Class:new():register("testgl1")

function testgl1:initialize(name, atoms)
  self.inlets = 2
  self.max = 1
  pd.post(tostring(self))
  return true
end

function testgl1:in_1(sel, atoms)
  if sel == "gem_state" then
     testgl1:render(self)
  end
end

function testgl1:in_2_float(f)
  self.max = math.abs(f)
  pd.post(self.max)
end

function testgl1:render(myself)
  max = math.max(myself.max, 1)
  glBegin(GL_LINE_LOOP)
  for i=1,max do
      r = math.random()
      g = math.random()
      b = math.random()
      glColor3d(r, g, b)
glVertex2d(math.random(-400,400)/100, math.random(-400,400)/ 100)
  end
  glEnd()
end

here's the console printout:
error: lua: error in dispatcher:
[string "testgl1"]:25: attempt to call global 'glBegin' (a nil value)
I think this code was running in lua0.3..
thanks,
marius.

_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list

Thomas Grill
http://grrrr.org




Thomas Grill
http://grrrr.org


Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list

Reply via email to