Jump to content
  • Advertisement
Sign in to follow this  
deffer

Companies prefer DX over GL - should I switch?

This topic is 4867 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Recently I began to look for a job in my vicinity. And while I noticed several offers requiring Direct3D, virtually none mentioning OpenGL. I have a strong feeling that this is not a coincidence. Now, I was programming with D3D for some time, but about a year ago, I switched to GL (they made me, at my uni, grr). Now I fear that I have forgotten most of the things I knew of DX. And I know I do not have enough time to spend on producing demo apps both in GL and DX. I don't want to change the world, or fight for the best standard. That is not my point. I just want to got a good job, that I could be satisfied with. So should I switch back to DX? Or am I just being paranoid?

Share this post


Link to post
Share on other sites
Advertisement
In my opinion you should make sure you know DX well if you look for a job in the game industry. Whether or not you like GL better is kinda besides the point :) Why? Well there are (currently) three platforms that most major game companies aim at:

1) PS2
2) Xbox
3) PC

The PS2 has it's own low-level API so GL won't help you here and neither will DX. The XBOX uses a super-set of DX8 so obviously that's what you have to know. Given the above I'll postulate that many companies will chose DX for the PC because then at least *some* of the code might be shared with the Xbox rather than having a completely new API to support.

What's going to happen with the next generation consoled (xbox360 and ps3) I do not know excatly but the xbox360 will surely *not* use GL and I don't think the PS3 will either..

- Kasper

Share this post


Link to post
Share on other sites
If you need it to get a job then switch to DirectX now :).

I only code in opengl myself by the way, have only used a little directx.

Share this post


Link to post
Share on other sites
Direct3D seems to have market dominance in the gaming industry, which is no accident. As far as I know, ID Software is one of the only big houses that still uses OpenGL. However, I believe that the Playstation 3 will use their own version OpenGL (called Open GL/ES) which will be a fairly big market. The Xbox 360 and the majority of PC games will of course continue using DirectX, and I'm not sure about the Nintendo Revolution.

If you know 3D graphics programming well, switching over to DirectX should be quick and painless. Learning a new syntax is easy. The important part is the math and everything else involved in 3D graphics which transfers over to any API you use.

Share this post


Link to post
Share on other sites
Thanks, guys.

As funny as it may seem, this is fairly quite a decission for me. So I just need a little support.
If you could just use some more exclamation marks, I would be totally convinced ;)

Share this post


Link to post
Share on other sites
I totally agree with kosmon_x:
Quote:

If you know 3D graphics programming well, switching over to DirectX should be quick and painless. Learning a new syntax is easy. The important part is the math and everything else involved in 3D graphics which transfers over to any API you use.


Knowing the theory is the important and hard part. What api you use to express that knowledge is not that important. So if I had to choose from learning some more theory or basically learning another way of doing the stuff I already know, I would choose to deepen my knowledge.

Regards,
hObbE

Share this post


Link to post
Share on other sites
Quote:
Original post by Kasper Fauerby
What's going to happen with the next generation consoled (xbox360 and ps3) I do not know excatly but the xbox360 will surely *not* use GL and I don't think the PS3 will either..


This story has some quotes from Mark DeLoura, manager of developer relations for SCEA:

Quote:
For starters, said DeLoura, Cell graphics will rely on a variation of the standard OpenGL library already widely used for PC games. Sony and software consortium the Khronos Group are developing Open GL/ES, a dialect of OpenGL optimized for interactive content, DeLoura said.

"OpenGL is huge--it has a lot of we just don't need for games," he said. "We've developed something for games, not running CAD (computer-assisted drafting)."

Cell will also use Cg, a language developed by graphics chip leader Nvidia for creating high-level graphics effects. And programmers will be able to control the eight "synergistic processing elements" that account for the bulk of Cell's horsepower using standard C or C++ tools, instead of the exacting assembly-level programming required with the current PlayStation 2.

Share this post


Link to post
Share on other sites
Hey, I am in the same boat sorta. I am just starting a decent project. I have mainly used OpenGL for a good 5years. I did a little with wrappers back with directx& but nothing in the past 4 years. My project has a lot of code completed via small side projects (most of code will be redone to fit with engine) it is all with respect to OpenGL. I use DInput but that is it for DirectX, should I switch over for this project which I hope will be a really nice piece for a portfolio or can I live with OpenGL. I will be going through everything on this project, I have design docs, developer tools I created (mainly just exporters and model/level viewers), gameplay scripting for possible mods. I can't really do art, but I will worry when I have the engine all set, but I want to go through all the programming and design work with this project. Should it really matter what API?

-THACO

Share this post


Link to post
Share on other sites
Quote:
Original post by THACO
Should it really matter what API?


It is possible to create a game engine where the API doesn't matter. 3D Game Engine Architecture by David H. Eberly shows how the Wild Magic engine works with OpenGL, Direct3D, or a software renderer, and runs on Windows, Mac, and unix-likes (linux, freebsd, etc) - though you can't use D3D on non windows apps.

However, for most people (myself included) it's probably going to be easier to just pick an API and stick with it. The main reason I use OpenGL is because it's portable across different OSes (my main dev machine runs linux).

Share this post


Link to post
Share on other sites
I guess I worded that a little wrong. I ment in terms of getting a job should it matter. I did think about trying to make it work for both at the same time. What I might do for practice is make some smaller Apps like my level viewer and character/animation viewer in D3D that will get me some experience but shouldn't slow me down at the same time. In about an hour I was able to get DirectX to open up my level format and load up the mesh/triangles into using SetStreamSource, SetFVF, and DrawPrimitive. I should probably look into loading my mesh into the mesh class but that will wait until my character animation I think.

-THACO

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!