Sat, 26 Sep 2009 04:35:19 -0400, Kartik Thakore <thakore.kar...@gmail.com>
wrote:
> 
> On 26-Sep-09, at 4:06 AM, Christian Schmid <csch...@rapidshare.com>  
> wrote:
> 
> > Hi Kartik,
> >
> > Thank you for your reply. I am new to OpenGL programming. I used to
> > write everything in Perl. No matter if its a network stack or a fully
> > blown web-custimizable FTP server. Now I am trying to code blast-away
> > 3d-applications... in Perl. Some people say this is crazy, but I am  
> > sure
> > as soon as I have created an amazing framework, it will work as well  
> > as
> > C-applications do.
> It should!

It does! I wrote a simple 3D engine a few years back and for comparison I
wrote the exact same thing in C++ too. (Twice, both in OpenGL and DirectX) and
what did I learn? Not only did the Perl version produce the exact same
framerate as long as I used display lists properly, the possibilities were
just so much greater with Perl/SDL: Sound and bitmaps were already taken care
of, memory management was obviously not a problem and most important of all:
Whatever logic I wanted to bring in at runtime, could easily be loaded and
executed using eval(). 

I went as far as implementing a console-like GUI interface which let me type
commands, load 3D models, spawn objects, set things in motion etc. In
contrast, I never got as far as implementing a GUI in the C++ versions simply
because the language is so much more work.

So, what killed the Perl version back then? Two things.

1. SDL-Perl was next to impossible to build. NOT ANYMORE!!! :-D
2. No support for shaders or other cool stuff. Hmmm... is it getting there?

Unfortunately, after several years of bit rot I've so far been unable to get
my old code to run properly with the current SDL. Since it's just a hobby
project of mine, competing with wife, kids, house, work etc, things are moving
slow.

What doesn't work? glGetString(). Perhaps it's my lack of experience with XS,
or perhaps the sdl opengl binary is broken, I don't know. This isn't really
critical except for debugging and using extensions. Worse, I remember using
some kind of glu routine to load up a bitmapped font as a texture display
list, I don't remember exactly how it worked, I can only see that it no longer
does, and I haven't the slightest idea why. Not that I've had a lot of time to
look into it... :-|


Anywho... Got some screenshots and an old version here: 
http://floyd.atc.no/Programming/Perl/Offworld/
If anyone is interested in the current source, let me know. 


--
Andreas Lund (fl...@atc.no)
Tel: +47 90077162
#include <disclaimer.h>
"Look at you hacker, panting and sweating as you run through my corridors.
How can you challenge a perfect immortal machine?" -- SHODAN, System Shock

Reply via email to