Jump to content


Which should I make an attempt to learn?


11 replies to this topic

#1 the_night_ninja

    New Member

  • Members
  • Pip
  • 5 posts

Posted 04 June 2006 - 05:03 AM

DirectX or
OpenGL?

DirectX looks kinda nice because it has everything you need right there for gaming(Directplay,Directsound,Directdraw). But DX is in for a major overhaul with 10, due to some problem with Vista, and I don't really want to learn a language that will become outdated to the next Windows OS.

OpenGL looks good too, because it's supposed to be easier to learn. But then what would I do if I ever wanted to network my game? Would I have to write my own... er.... thingy?

I'm learning C++ right now, and I just wanted suggestions for the future.

Thanks!

#2 bignobody

    Valued Member

  • Members
  • PipPipPip
  • 155 posts

Posted 04 June 2006 - 05:25 AM

To put things simply, attempt to learn as much as you can :lol:

DirectGraphics or OpenGL will both render graphics and give you access to the video hardware. There are also many libraries available that provide alternatives to the rest of DirectX (Input, Sound, Play (networking), etc).

Learn as much as you can and then you'll be able to make informed decisions about which options will best suit your project's needs. You'll also learn which options YOU like better this way ;)

Good luck!
-bignobody
notsoftgames.com - Creator of Shlongg!

#3 the_night_ninja

    New Member

  • Members
  • Pip
  • 5 posts

Posted 04 June 2006 - 05:32 AM

Ok... Well, lets take this thing in a different direction.

Which should I learn first?

#4 bignobody

    Valued Member

  • Members
  • PipPipPip
  • 155 posts

Posted 04 June 2006 - 05:36 AM

In that case, have a look at some DirectX tutorials and some OpenGL tutorials and go with the one that you find easier to understand.

Regards,
-bignobody
notsoftgames.com - Creator of Shlongg!

#5 the_night_ninja

    New Member

  • Members
  • Pip
  • 5 posts

Posted 04 June 2006 - 05:39 AM

Mmkay, I'm going with OpenGL then, because I know more about it.

:yes:

#6 gardon

    Valued Member

  • Members
  • PipPipPip
  • 282 posts

Posted 04 June 2006 - 07:27 PM

I remember this topic! I was in it not too long ago.

Basically I thought there was a right or wrong answer to this question. The fact of the matter is, once I started actually programming and trying to figure things out for myself (rather than flipping through books and tutorials), it doesn't really matter what API you use.

I started with SDL because there was a perfect tutorial online for it. It walked me through everything, and I really got into the fact that I could finally display graphics and make windows. This was when i was in the: I can make a MMORPG stage...

Then I realized I totally sucked at game programming, but was quite good at C++. I put the two traits together, sucked it up, and began learning things for myself. Now SDL is as natural as C++ is for me, and I'm "figuring out" how to make a program/game work, rather than worrying about how to make it.

My point is that once you start programming it doesn't matter. Don't think you can't change your course. People think it's insanely difficult to learn DirectX and/or OpenGL, and they must choose one. The point is, once you really get into it, it won't matter because you're trying to use previous programming to help solve your problems, not help you make your game.

does that make sense?

Basically you have to initialize the api, know what functions to use on how to load/display/create windows, images, ports, etc. so you can use them in your game, and then use it to your advantage. It's like different languages: there are hundreds out there with different ways of saying the same thing.


Oh, and by the way, Directx is better. OpenGL is crossPlatform, yes, but who cares really? 90% of the market is windows anyway, and if you design your game good enough (with classes and such) you won't have to worry about relying on an API to begin with.

Jason

#7 the_night_ninja

    New Member

  • Members
  • Pip
  • 5 posts

Posted 05 June 2006 - 01:30 AM

Thanks for your help!

I'm probably going to mix and match later on, but I think I'm only going to learn OpenGL right now.

I'm only fifteen, so I don't want to have to undertake some huge project right now.

Windows might have 90% of the world's computer's in it's grip, but Apple is just so much better!

:happy:

#8 Spudman

    Member

  • Members
  • PipPip
  • 38 posts

Posted 06 June 2006 - 08:03 AM

Nah.... Direct X has to be the best choice.... OpenGL has lots of problems
with dealing with modern concepts such as MRTs and has to deal with such
stuff by convoluted extensions ( I am reliably informed...). Also since XBox360 is DirectX it makes more sense for developers to stick to DirectX - since we can do without the hassle of porting and translating an OpenGL based system. I'd put my efforts into DirectX....

#9 Goz

    Senior Member

  • Members
  • PipPipPipPip
  • 575 posts

Posted 06 June 2006 - 10:06 AM

Spudman said:

Also since XBox360 is DirectX it makes more sense for developers to stick to DirectX - since we can do without the hassle of porting and translating an OpenGL based system. I'd put my efforts into DirectX....

And PS3 use OpenGL ES and Nintendo Gamecube uses an OpenGL-like system ..

Don't think consoles should come into it because, lets face it, it costs too much for a hobbyist to buy a dev kit anyway :)

#10 Qlone

    New Member

  • Members
  • Pip
  • 7 posts

Posted 06 June 2006 - 10:29 AM

Before you get to really learning OpenGL or DirectX it's neccessary to get a grasp of the concepts behind it. Computer graphics is an entirely separate topic (not related to c++ or whatever) with a lot of matrix math involved. If you don't understand this first, then you can't use opengl nor directx. After you get the basic concepts of computer graphics it will be rather easy to learn directx and opengl, which will become just ools to express your thoughts. It's a bit like learning to program really; once you know the concepts behind programming (oo design, debugging, etc) learning a new programming language is easy, and a language is just a way to express your thoughts to the computer.

#11 Spudman

    Member

  • Members
  • PipPip
  • 38 posts

Posted 06 June 2006 - 10:29 AM

True.... (Plus you need to be a registered development company to get Microsoft Developer Status anyway... ) But there are those of us who just
hate Sony.....

#12 the_night_ninja

    New Member

  • Members
  • Pip
  • 5 posts

Posted 06 June 2006 - 04:34 PM

well, I'm planning on buying a book on the subject after I get into c++.

http://www.gamedev.n...p?productid=336

http://www.gamedev.n...p?productid=386

I'm planning on getting one of the two books.





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users