Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 02 Oct 2008
Offline Last Active Jul 13 2014 11:18 AM

#5027782 Anyone here a self-taught graphics programmer?

Posted by on 01 February 2013 - 02:40 AM

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.

#4991334 Can i become a professional gamedeveloper learning at home?

Posted by on 17 October 2012 - 10:45 PM

It's funny because I'm in the same boat. It's not even about trying to get into the game industry, but the programming industry in general. I'm still having trouble getting back into college, but I have the skills that put me on a level playing field with those with a Bachelor's, at least. It's unfortunate that those skills cannot be demonstrated to get to that interview, gaming or non gaming. So all I can do right now is keep studying and keeping making programs until one of them gets noticed.

#4975878 Help me compile a list of simple games to program

Posted by on 02 September 2012 - 05:53 PM

Make a Seizure Inducer game where the player has to do arithmetic as fast as he can while random colours flash on the screen.

lol that's hilarious.