Skip to main content
GameDev.net gamedev.net
🔒 Locked

How did you learn..

Started by Neoecs Jul 12, 2005 at 5:04 AM 10 replies 1.7k views
Original Post
Neoecs
Neoecs
How did you learn OpenGL/DirectX? What did you know before you started learning? WinApi? C++? What guides did you use? Did you use any additional librarys like GLUT? Please tell, detailed, how you learned. Thanks.
jbadams
jbadams
I learned OpenGL mostly using NeHe's tutorials along with reading The Red Book and The Blue Book and experimenting with things.

Beforehand I knew C++ reasonably well (but not great, I'd recommend knowing it better than I did first) and had previously learned DirectDraw and some Direct3D as well as GDI using Visual Basic 6 (learning mostly from DirectX4VB and Lucky's VB Gaming Tutorials). I use(d) GLUT with OpenGL. Still havn't really worked beyond very basics with DirectX in C++.

I'd recommend getting familiar with the language writing console programs first, then perhaps looking into a simpler library such as SDL or Allegro and doing some 2d work before you move onto your 3d API of choice.
- Jason Astle-Adams
AcePilot
AcePilot
I learnt C first. Then I learnt DirectX using C with the book "Beginning Game
Progamming" by Jonathan S. Harbor (and its possible, C++ just makes it easier), and then I eventually learnt some C++ features like classes, namespaces, and templates to clean up my code a bit. After that I taught myself OpenGL using
msdn and nehe. OpenGL became my api of choice eventually.
Neoecs
Neoecs
Ok. This shouldn't be too hard. I know C++ and Allegro. Would you recommend drawing 2D using OpenGL?

Thanks for the answeres.
evolutional
evolutional
I started out with BASIC on the ZX Spectrum, before moving onto AMOS BASIC on the Amiga, then Blitz BASIC on the Amiga. From there, I learnt enough C to get me into AmigaOS coding and writing GUI driven apps, at the same time I dabbled with some M68K assembler too.

After that I picked up a copy of a Borland C++ compiler from a Magazine cover and played around with Win32 API on the PC. I picked my flatmate's C++ lecture notes up and started learning C++ from there, using the online MSDN as a reference for the Win32 API I coded a very basic text adventure (which used W32 GUI buttons for navigation and inventory management), it even featured a (horrible) declarative scripting language which didn't work properly :D

Then I found GDNet and started learning DirectX, but I found it confusing despite making several clueless posts on the DirectX forum. After that, I found NeHe and stuck with OpenGL... I made several mistakes by trying to design engines and all that sort of technical stuff; instead of working on a game I was tweaking around with DLL files for different renderering systems, that was before I even knew much about rendering anyway so it was a disaster. Then came the other engine design stuff, endlessly playing with code, trying to find the ultimate solution to a problem that only exists in one's head - the "generic engine". Suffice to say I've given all that up now and realised that I'll never get anywhere without a real goal.

So my learning experience was a good one, but it took me a lot of wasted time and failures before I realised that what BASIC languages hide you from is endless code tweaking that gets you nowhere. Start with a goal in mind and work towards it, keeping only that goal in mind at every step.
Staffan E
Staffan E
I started out with DDraw some years back when DX7 was new. I had done a lot of Visual Basic programming and some C before that and had begun phasing over to C++. I read some articles on DDraw (here on GDNet actually) and put together some simple demo apps from them. Most of or all the things I have learned on DirectX since then came from in-depth study of the DXSDK documentation (which I can recommend a lot) and from asking around for the solutions I couldn't come up with myself. I've never done a tutorial (not recently anyway), just the docs and experimentation. Works great for me, but you should find a technique that suits you.

Good luck.
Hack my projects! Oh Yeah! Use an SVN client to check them out.BlockStacker
Jnz86
Jnz86
I learned in this order:
Turbo Pascal,Delphi,Visual Basic,C++,OpenGL
most OpenGL stuff from http://nehe.gamedev.net, and after i understood the basics, from other sites (one of them is www.gamedev.net :))

programwizard
programwizard
The only thing I knew before I started with DirectX was C, a miniscule amount of Cpp, and a miniscule amout of Win32 API. You'll find a lot of DX information in the included Docs, but the true resource for anything and everything Microsoft is the MSDN. There you will find not only extensive documentation and walkthroughs on every current MS developer product, you can also find the latest product news, downloadable goodies, and all this other neato stuff.
------------------------------Support the Blue Skies in Games Campaign!A blog... of sorts.As a general rule, if you don't have a general rule in your signature, you aren't as awesome as someone who does. General rules roxor teh big one one ones.
zlatko_bre_1985
zlatko_bre_1985
Before i started to learn DirectX i had some (almost nothing) knowledge in Delphi.Then i decide d that i want to make a games in DirectX (i decided DirectX because /*Laugh at me for eternity */ I Love Microsoft).As every documentation was in either C#,C++ or VB i took the c + + cos its low level Programing language(compared to c#,VB).Then i took book SAMS - Teach Yourself C++ in 21 Days read it (and doing all examples) in 2 days without sleep.
Thats how i learned c++ (and i need a LOT MORE TO LEARN).After that it was look at DirectX SDK look at book...And i made some 3d game in about 2 weeks (working from waking until i fell asleep by the comp)LOL : 2nd time this week.And thats my story.

EDIT:And i dont use any libraries cos i want to learn how it works under hood;
(or maybe i want to make my own???):)
Serbia,Zrenjanin
benryves
benryves
The only DirectX work I've done has been in (don't laugh) VB6. I have never looked into OpenGL. VB6 was the only PC-friendly language I knew then (before that, BBC BASIC and 6502 ASM, Quick Basic, Logo [wink] and Z80 ASM). I'm more interested in the lower-level end of things, so haven't touched too much on hardware-accelerated side of things and any graphics work I do at the moment is software-based. Finally got around to BSP last night, and have the world's worst BSP tree builder to show for it (takes ~10 seconds for 30 linedefs, ~3 minutes for 50 [grin]).
[Website] [+++ Divide By Cucumber Error. Please Reinstall Universe And Reboot +++]
Krisc
Krisc
The way I have learned DirectX is through my mistakes. Honestly, I have messed up enough and read enough error messages and consequently debugged enough Dx apps that I know what I am doing now. That and I read a lot, all the time. Advanced stuff, simple stuff, anything and everything.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.