Hy.
I have some little experience with opengl.
But this is my queston:
why the professional programmers uses directx for create games ?
1)speed?
but vbo is slower than directx?
2)documentation
3)help in vs and in all community book ecc...?
4)integrated shaders vs extensions?
why?
Many reasons, the 2 main ones in my opinion being that OpenGL has been left behind constantly in terms of features and is constantly doing catch up to DX (this wasn't always the case) and the fact that ~97% of the PC game market runs Windows, so portability is really not an issue.
There are lots of reasons, but as with any choice of technology (e.g. Windows vs Linux, Java vs C#...) you're going to have to weigh up the factors important to you and decide based on that.
In addition to Kwizatz's points, the one key advantage D3D seems to have is its ease of use. The programming model (mostly true for v9, definitely true for v10/11) is incredibly clean by comparison - quite simply, its easier to write code against. Secondly, the tools, samples, documentation, support (from MS, IHV's, community..) are generally more plentiful and complete.
For me personally, and obviously I have a bias, being able to cleanly, uniformly and concisely express my graphics application is a huge win. I've done some OpenGL coding and I found it a chaotic and messy experience - I spent as much time fighting the API/technology as I did solving my problem, which is simply not good enough in this day and age.
When there isn't a clear winner on features (yes, D3D has a slight edge but you can argue via extensions), performance and X-Platform isn't a motivator then simple ease of use and speed of development will reign king.
hth
Jack
In addition to Kwizatz's points, the one key advantage D3D seems to have is its ease of use. The programming model (mostly true for v9, definitely true for v10/11) is incredibly clean by comparison - quite simply, its easier to write code against. Secondly, the tools, samples, documentation, support (from MS, IHV's, community..) are generally more plentiful and complete.
For me personally, and obviously I have a bias, being able to cleanly, uniformly and concisely express my graphics application is a huge win. I've done some OpenGL coding and I found it a chaotic and messy experience - I spent as much time fighting the API/technology as I did solving my problem, which is simply not good enough in this day and age.
When there isn't a clear winner on features (yes, D3D has a slight edge but you can argue via extensions), performance and X-Platform isn't a motivator then simple ease of use and speed of development will reign king.
hth
Jack
Quote:I've done some OpenGL coding and I found it a chaotic and messy experience
My experience is quite the opposite as I found directx messy and chaotic. I'm sure that is just because I'm used to opengl. If I started using directx I'm sure I would get used to that too.
I guess it just depends on what you are comfortable in using.
I must agree, our proprietary Graphics Engine at work was built in DX9 and whenever I look at the source code it is a complete mess, however when I look at my own OpenGL code it looks much neater (probably bias).
Also, portability is a key factor, even if you don't think you need it now, you may need in the future, which is the problem we're facing at work where we may want to start shipping our software on Linux machines.
Also, portability is a key factor, even if you don't think you need it now, you may need in the future, which is the problem we're facing at work where we may want to start shipping our software on Linux machines.
Quote:Original post by AndyEsserIf portability is a big factor, then you need to support multiple rendering backends, at which point OpenGL and D3D are just a few out of many.
Also, portability is a key factor, even if you don't think you need it now, you may need in the future, which is the problem we're facing at work where we may want to start shipping our software on Linux machines.
Quote:Original post by swiftcoderQuote:Original post by AndyEsserIf portability is a big factor, then you need to support multiple rendering backends, at which point OpenGL and D3D are just a few out of many.
Also, portability is a key factor, even if you don't think you need it now, you may need in the future, which is the problem we're facing at work where we may want to start shipping our software on Linux machines.
There is no reasn for having a OGL and DirectX both inside of an engine. They both do the same exact thing. and will render the same. the only thing difference is having opengl or directx rendering it. So creating a game for portability means just use opengl, and not need to have both because that basically is just adding more bloat to the engine instead of adding more functionality and a complete waste of time. But thats just my opinion.
Quote:Original post by xZekex
There is no reasn for having a OGL and DirectX both inside of an engine. They both do the same exact thing. and will render the same. the only thing difference is having opengl or directx rendering it. So creating a game for portability means just use opengl, and not need to have both because that basically is just adding more bloat to the engine instead of adding more functionality and a complete waste of time. But thats just my opinion.
Tell that to the guys at Ogre3d [smile].
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement