Sign in to follow this  
one mind

Why learn dx or opengl?

Recommended Posts

Hi, I have been programming with opengl for about a year now for non game stuff like modellers ect I would now like to make a game and have been hunting around for a game engine. It seems to me, when you use a engine it takes care of graphics api stuff so why bother learning graphics api's? Would it be possible for someone to make a game without knowing dx or gl? With the use of a good engine Thanks for any comments :)

Share this post


Link to post
Share on other sites
I spent some time learning DirectX, however, eventually I decided to look for another solution that was cross platform, and which I did not have to spend alot of time learning. So I switched to OGRE, which I would recommend you taking a look at. You can still use OpenGL or DirectX with OGRE, but goes against its rendering abstraction.

edit - OGRE is just a graphics engine, not a complete game engine.

www.ogre3d.org

Share this post


Link to post
Share on other sites
opengl and direct3d is like linux and windows.

opengl you have to do alot of functions yourself, or download extra libraries, but direct3d comes with alot of its own helper functions eg d3dx.

The main reason to choose opengl over direct3d is, that people do not always have the latest version of directx, unlike opengl where everyones always got it. And cross platformness, but most of the time I guess you are going to write windows code with the opengl anyway...

edit:

btw opengl is quite small to use, even if you download other libraries. directx is bloody huge!

Share this post


Link to post
Share on other sites
Quote:
Original post by johnnyBravo
opengl and direct3d is like linux and windows.

opengl you have to do alot of functions yourself, or download extra libraries, but direct3d comes with alot of its own helper functions eg d3dx.


The DirectX SDK is huge compared to eventual add-ons you need to download for OpenGL. To simply use OpenGL, you need nothing at all, besides maybe some good graphics drivers, and the header files that come with all major compiler suites.

Quote:
The main reason to choose opengl over direct3d is, that people do not always have the latest version of directx, unlike opengl where everyones always got it. And cross platformness, but most of the time I guess you are going to write windows code with the opengl anyway...


The DirectX part is not quite right IMHO: wheither people have got the newest version or not, they probably will get it, to play their new games and such.

Cross-platformness is probably the best reason to choose for OpenGL - and no, you won't have to write any platform specific code. SDL can take care of that.

-- on-topic

You could indeed learn to use an engine instead of the raw graphics library, but it really depends on what you like to do. If you like to write your own graphics engine, or you like to program the quite low-level graphics API (low-level is compared to an engine ofcourse), go with OpenGL or Direct3D. Elsewise, grab an engine somewhere and play with it.

Share this post


Link to post
Share on other sites
Quote:
Original post by Sijmen

Quote:
The main reason to choose opengl over direct3d is, that people do not always have the latest version of directx, unlike opengl where everyones always got it. And cross platformness, but most of the time I guess you are going to write windows code with the opengl anyway...


The DirectX part is not quite right IMHO: wheither people have got the newest version or not, they probably will get it, to play their new games and such.



Oh what I meant by that is, sometimes I write a program with direct3d9, and I want to show some people, but so many times I've couldn't because the computers are all installed by image and don't come with directx9 installed.

So usually if I'm creating something small i'd write it in opengl, unfortunetly my opengl knowledge is quite poor, and I just use it like a windows api :)

Share this post


Link to post
Share on other sites
Yes it is possible. But if you want to be a game programmer, graphics of course, you must know DirectX and/or OpenGL.

And they also give you the background for chosing one or another engine and even extend the engine to your own needs. The engine will not have everything you need always...

Share this post


Link to post
Share on other sites
Quote:
Original post by johnnyBravounfortunetly my opengl knowledge is quite poor, and I just use it like a windows api :)


What does "use it like a windows api" mean?

Share this post


Link to post
Share on other sites
Quote:
Original post by petewood
Quote:
Original post by johnnyBravounfortunetly my opengl knowledge is quite poor, and I just use it like a windows api :)


What does "use it like a windows api" mean?


set pixel type calls :)

Although I sometimes do 3d stuff

Share this post


Link to post
Share on other sites
Quote:
Original post by johnnyBravo
Quote:
Original post by petewood
Quote:
Original post by johnnyBravounfortunetly my opengl knowledge is quite poor, and I just use it like a windows api :)


What does "use it like a windows api" mean?


set pixel type calls :)

Although I sometimes do 3d stuff

I see.

Share this post


Link to post
Share on other sites
Thanks everyone
Like i said, i already use opengl but now i want to make a game.
It is just not feasible to write my own engine. It would be fun but a waste of time where releasing my game is concerned.
To write an up to date engine and keep it up to date, create art and all game logic ect would take me 100 years :)
After searching for indie game engines its a choice between TrueVision, Qube, Gamestudio and Cipher...dont like torque

I'm sure my knowledge of opengl will come in handy but it doesn't look like i'll need it for awhile.

Thanks again :)

Share this post


Link to post
Share on other sites
Quote:
Original post by one mind
It is just not feasible to write my own engine.


lol engines arnt these special pieces of code only programmed by geniuses, you can start on one, and build it as you game develops.

I find it way better to make your own code then learn someone elses

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

Sign in to follow this