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