• Advertisement

Anyone here a self-taught graphics programmer?

Recommended Posts

Advertisement

i truly started graphics programming at 15 or 16, when i was doing homebrew for the psp, and learned the gu, thus began my journey on learning how to program a graphical game(although it was still pretty heavy fixed pipeline, so i knew nothing of shaders).  than i used xna with the 360 for a bit, learned a bit about shaders, but it didn't click for awhile on what i was truly doing.  then i decided to work with openGL and learned shaders far more in-depth.  i don't feel anywhere near finished, i've seen tons of people producing far better than I.  but i have learned plenty enough that i can get something up and running in openGL fairly quickly.

Share this post


Link to post
Share on other sites

My first hardware accelerated application was a MS Word document!  No kidding!  Before I get to that, let me tell the story of learning to use opengl in basic, assembly and then C, and yes in that order.  In early high school I played around a lot with qbasic and was writing simple wireframe 3d mazes with horrible performance.  I didn't have a C compiler, so I started playing around with debug.com, and started writing little assemly language routines to speed up certain slow things in basic.  Debug sucks, it can't even do labels, you have to specify the exact jump address. You literally have to write JMP 0x322 and hope you put some code at 0x322.  So I wrote a qbasic program that reads in assembly source with labels, strips them out, runs it through debug with dummy addresses (JMP 0x1234 or whatever).  It looks at the redirected output of debug to see what address the assembler said it was using for each line, figured out the labels, and then reassembled it a second time.  It was so cruddy.  While I was doing this, I also got involved in a high school robotics program called Botball, where you programed lego robots in a language called Interactive C.

 

Back to graphics.  I wanted to try using GL, but like I said, I didn't have any compilers.  MS Word 2000 had a built in version of VB, called VBA.  It turns out VBA can load and run functions from DLLs (scary), so I wrote a word VBA macro that loaded system32.dll, and called the function to get the application's window handle.  I played around with GDI, and got to draw dots and lines onto the word document window using only the win32 api.  So then I loaded opengl32.dll.  After crashing word several times, I managed to get a textured quad on the screen, put there by the video card!   I then shortly discovered that the Windows DDK for Window 98 came with a FREE COPY of MASM.  So I started writing programs in the psychotic mix of dll's written in MASM that were loaded into MS Word's Visual Basic.  A teacher at high school saw what I was doing, and gave me a copy of Borland C++.  I was able to apply what I learned about writing PC programs in MASM and Basic to what I learned in Botball's 'Interactive C' and from there everything took off.  After I finished highschool, I did EECS at UC Berkeley, and now I do software for a living.

 

I'm so glad visual studio has free editions.  I would have free loved visual studio as a kid.  Ubuntu would have also rocked.  Kids today can access this stuff so easily now.

That's the difference between you and me: I learned programming to let me make video games so I can put my ideas in an interactive media. You learned it simply for the joy of discovery and making software work. As a byproduct, I've learned that, too, but I don't know if I will ever get into as deep passionate as programmers like yourself. It's just funny that I'm learning the same stuff that others in the game industry take paths in learning, anyway, so I suppose I may be as passionate as people like yourself. I sometimes think I'm just a man using programming as a tool to get something done, and I believe that to be the case as it's a means to an end.

Share this post


Link to post
Share on other sites

just a hobby?

Thought I have a degree in CS and got in touch with OGL there, I really do only learn the basics of graphics programming at university. Never got the chance to learn it as teen (amiga wasn't the 3d work horse), but later on loved graphics programming and learn it by internet research and reading lot of articles.

 

I do it as a living for tri-Ace, where I work on this engine, primarily on graphics and optimizations.

blink.png Really great work !
 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Advertisement