From: Brandon J. Van Every
Subject: Common OpenGL bindings
Date: 
Message-ID: <d8iokj$h52$1@eskinews.eskimo.com>
http://www.cliki.net/OpenGL%20Bindings lists several OpenGL bindings for 
different Common Lisp implementations.  The bindings are of various ages 
and health.  It seems like there's no such thing as a common OpenGL 
binding for Common Lisp?  I suppose this is due to underlying 
differences in C FFIs, and because of different authors starting from 
scratch rather than working together?  I am wondering if any of these 
bindings are worth generalizing into a common binding for many Common 
Lisp implementations.  I'm also wondering if anyone cares about that, to 
the point of doing some work for it.

If not, then as usual I'll punt.  I'm also trying to take the pulse of 
OpenGL developers around here, if nothing else.  Beating, or "He's dead 
Jim" ?

-- 
Cheers,                     www.indiegamedesign.com
Brandon Van Every           Seattle, WA

"We live in a world of very bright people building
crappy software with total shit for tools and process."
                                 - Ed McKenzie

From: Luke J Crook
Subject: Re: Common OpenGL bindings
Date: 
Message-ID: <FvKdnStyy_2UhTDfRVn-oQ@giganews.com>
Brandon J. Van Every wrote:
> http://www.cliki.net/OpenGL%20Bindings lists several OpenGL bindings for 
> different Common Lisp implementations.  The bindings are of various ages 
> and health.  It seems like there's no such thing as a common OpenGL 
> binding for Common Lisp?  I suppose this is due to underlying 
> differences in C FFIs, and because of different authors starting from 
> scratch rather than working together?  I am wondering if any of these 
> bindings are worth generalizing into a common binding for many Common 
> Lisp implementations.  I'm also wondering if anyone cares about that, to 
> the point of doing some work for it.
> 

I took me about 10 minutes to create the full OpenGL bindings for Corman 
Lisp. You feed the OpenGL header files into the Corman C header parser 
and bindings come out the other end.

- Luke
From: Brandon J. Van Every
Subject: Re: Common OpenGL bindings
Date: 
Message-ID: <d8j870$k6a$1@eskinews.eskimo.com>
Luke J Crook wrote:
> 
> I took me about 10 minutes to create the full OpenGL bindings for Corman 
> Lisp. You feed the OpenGL header files into the Corman C header parser 
> and bindings come out the other end.

Hm!  Now that's worth investigating.  I wonder if GCL has a comparable 
capability.  Bigloo Scheme doesn't quite.  I tried and it choked on a 
comment delimiter, not a good sign.

-- 
Cheers,                     www.indiegamedesign.com
Brandon Van Every           Seattle, WA

"The pioneer is the one with the arrows in his back."
                           - anonymous entrepreneur
From: Jens Axel Søgaard
Subject: Re: Common OpenGL bindings
Date: 
Message-ID: <42ad46d6$0$297$edfadb0f@dread12.news.tele.dk>
Brandon J. Van Every wrote:

> Hm!  Now that's worth investigating.  I wonder if GCL has a comparable 
> capability.  Bigloo Scheme doesn't quite.  I tried and it choked on a 
> comment delimiter, not a good sign.

Then run the C preprocessor before feeding it to the binding generator.

-- 
Jens Axel Søgaard
From: Brandon J. Van Every
Subject: Re: Common OpenGL bindings
Date: 
Message-ID: <d8jhim$mk4$1@eskinews.eskimo.com>
Jens Axel S�gaard wrote:
> Brandon J. Van Every wrote:
> 
>> Hm!  Now that's worth investigating.  I wonder if GCL has a comparable 
>> capability.  Bigloo Scheme doesn't quite.  I tried and it choked on a 
>> comment delimiter, not a good sign.
> 
> 
> Then run the C preprocessor before feeding it to the binding generator.

I forget whether Bigloo has a way to emit comments of some sort in what 
it ultimately generates?  I am thinking I'd want to generate a human 
readable header file, not just lines of gobbledygoo.  In that vein, 
preserving existing comments might be desireable.

Anyways, when I asked about cigloo on the Bigloo list, people didn't 
give me a lot of confidence that cigloo was going to do the OpenGL 
binding job.  I suppose I could be more persistent and ignore what 
people say.

-- 
Cheers,                     www.indiegamedesign.com
Brandon Van Every           Seattle, WA

"The pioneer is the one with the arrows in his back."
                           - anonymous entrepreneur
From: Frank Buss
Subject: Re: Common OpenGL bindings
Date: 
Message-ID: <1qpzpxy365aer$.g47eno57pld4.dlg@40tude.net>
Brandon J. Van Every wrote:

> http://www.cliki.net/OpenGL%20Bindings lists several OpenGL bindings for 
> different Common Lisp implementations.  The bindings are of various ages 
> and health.  It seems like there's no such thing as a common OpenGL 
> binding for Common Lisp?

yes, you are right, because the Common Lisp standard doesn't specify it.

> I suppose this is due to underlying 
> differences in C FFIs, and because of different authors starting from 
> scratch rather than working together?  I am wondering if any of these 
> bindings are worth generalizing into a common binding for many Common 
> Lisp implementations.  

there are working OpenGL implementations for Windows, Linux and OpenGL,
with CLisp, CMUCL, SBCL, Lispworks etc. For example for Linux it is no
problem with with CMUCL and CL-SDL:

http://www.frank-buss.de/tmp/cl-sdl-opengl.png

and for Windows for example with Lispworks and ah2cl:

http://hocwp.free.fr/ah2cl/
http://www.frank-buss.de/tmp/game-of-life.jpg

So setting up some OpenGL/CL environment is possible. Would be nice to have
only one perfect OpenGL binding for every Common Lisp implementation, but a
perfect world is left as an exercise for the reader :-)

> I'm also wondering if anyone cares about that, to 
> the point of doing some work for it.

perhaps I'll do it, but only as a fall-out of my own game developing. This
is how Open Source works: Someone writes something useful, because it is
needed for a project and other people can use it and enhance it for their
projects.

But calling some OpenGL functions is the easiest part of writing a game.
The game itself, the graphics etc. are the hard part. And this will be
difficult for you, because looks like you don't know how to program in
Lisp, so you have to learn Lisp first or you have to pay someone to do the
work for you, but please stop trolling.

-- 
Frank Bu�, ··@frank-buss.de
http://www.frank-buss.de, http://www.it4-systems.de
From: Brandon J. Van Every
Subject: Re: Common OpenGL bindings
Date: 
Message-ID: <d91eij$je6$1@eskinews.eskimo.com>
Frank Buss wrote:
> 
> But calling some OpenGL functions is the easiest part of writing a game.
> The game itself, the graphics etc. are the hard part. And this will be
> difficult for you, because looks like you don't know how to program in
> Lisp, so you have to learn Lisp first or you have to pay someone to do the
> work for you, 

You made sense up to this point...

> but please stop trolling.

...and now you are just being obnoxious.  Since when are beginner 
questions off-topic in comp.lang.lisp?

-- 
Cheers,                     www.indiegamedesign.com
Brandon Van Every           Seattle, WA

"Trollhunter" - (n.) A person who habitually accuses
people of being Trolls.
From: David Steuber
Subject: Re: Common OpenGL bindings
Date: 
Message-ID: <87k6kwsiqe.fsf@david-steuber.com>
"Brandon J. Van Every" <·····················@mycompanyname.com> writes:

> If not, then as usual I'll punt.  I'm also trying to take the pulse of
> OpenGL developers around here, if nothing else.  Beating, or "He's
> dead Jim" ?

I used a program called ffigen (based on gcc 3.4) to generate a file
which I then processed into Lisp code using UFFI.  The bindings are
for Apple's OpenGL + AGL on Panther.  I haven't released my code but
it is available for viewing on the internet.  At some point I do plan
to get back to it and polish it into a more useable form.

All I've actually done with OpenGL in Lisp is draw a pyramid.  It's
about as close to "Hello, World" for OpenGL as you can get.  But it
does work and the application bundle will run on Panther and Tiger.  I
created it using OpenMCL.

-- 
(when (or hope despair)
  (error "Deal with life as it is."))