Opengl Vs D3d

AmbassadorAmbassador Join Date: 2003-02-24 Member: 13942Members
<div class="IPBDescription">Any noticable differences?</div> Well I started wondering which would be better for gaming OpenGL or D3D? I don't really have any knowledge of each so I'll leave it up to yall to help explain it. Are there any noticeable performance differences or visual differences?

Thx for the input.

Comments

  • DOOManiacDOOManiac Worst. Critic. Ever. Join Date: 2002-04-17 Member: 462Members, NS1 Playtester
    Personally, I prefer OpenGL. To me it just looks better and 'feels' more natural than Direct3D does. Its also multi-platform, not Windows only, so that's a big plus.

    I hear DirectX is a little easier to code, but I haven't worked with either other than a very simple openGL shader for half-life 1 done from a tutorial...
  • RedfordRedford Monorailcatfjord Join Date: 2002-04-28 Member: 528Members, NS1 Playtester
    edited October 2004
    Using D3D with some video cards can cause massive FPS drops and missing textures, it is significantly more buggy (For the half-life engine, at least). Use OpenGL first, and if there is an issue with that, THEN try D3D.
  • MavericMaveric Join Date: 2002-08-07 Member: 1101Members
    <!--QuoteBegin-Redford+Oct 5 2004, 11:12 PM--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Redford @ Oct 5 2004, 11:12 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> Using D3D with some video cards can cause massive FPS drops and missing textures, it is significantly more buggy (For the half-life engine, at least). Use OpenGL first, and if there is an issue with that, THEN try D3D. <!--QuoteEnd--> </td></tr></table><div class='postcolor'> <!--QuoteEEnd-->
    And if you have a issue with both it's time to upgrade and update your drivers/directX versions. <!--emo&:p--><img src='http://www.unknownworlds.com/forums/html//emoticons/tounge.gif' border='0' style='vertical-align:middle' alt='tounge.gif' /><!--endemo-->
  • ThaldarinThaldarin Alonzi&#33; Join Date: 2003-07-15 Member: 18173Members, Constellation
    OpenGL has some unique extra feature or ability over D3D I think. Can't remember what it is off the top of my head, although generally speaking OpenGL has better performance with better image quality.
  • CommunistWithAGunCommunistWithAGun Local Propaganda Guy Join Date: 2003-04-30 Member: 15953Members
    Direct X is more vast than just 3D redering, in fact its an integral part of the WindowsOS.

    However a down side is it IS proprietary. Much like Cisco routers will ONLY operate with a cisco os.
  • [WHO]Them[WHO]Them You can call me Dave Join Date: 2002-12-11 Member: 10593Members, Constellation
    edited October 2004
    Direct3D is not "buggy." Whoever did the direct3d portion of HL1's renderer just didn't get it working right. It's not like there's 1-to-1 function interchangability.

    Overall, I would agree that at least for older games that opengl looked better than D3D. But now the line is faded as far as quality. D3D does have the advantage of being updated with new functionality much more often (I just got done writing a normal based bump mapping vertex+pixel shader combo in HLSL, and it friggin rules). But doesn't support linux/mac. But, of course, *most* games don't support linux/mac because of other crossplatform nightmares.
  • taboofirestaboofires Join Date: 2002-11-24 Member: 9853Members
    I would say that D3D is <i>currently</i> more powerful (it caught up and passed, OGL has been lazy lately but that seems to be changing), but unless you're hiring a team of artists you'd be just as well off using OGL. And for that matter, anything you can do in one can be done with the other, it's just a matter of how much math you have to do yourself (which will probably be slower than the built-in standards anyway).

    So pick whatever one that you or your partners know the most of. Not much sense in learning a whole lot of new things if you don't have to.

    It's pretty easy to port most openGL code if you use GLUT, but otherwise the windowing and input support can get really annoying.

    And you can use openGL for the graphics, and DX for the sound or whatever if you want.
  • Jim_has_SkillzJim_has_Skillz Join Date: 2003-01-19 Member: 12475Members, Constellation
    The big difference is that OpenGL is better.
  • DOOManiacDOOManiac Worst. Critic. Ever. Join Date: 2002-04-17 Member: 462Members, NS1 Playtester
    <!--QuoteBegin-Redford+Oct 6 2004, 12:12 AM--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Redford @ Oct 6 2004, 12:12 AM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> Using D3D with some video cards can cause massive FPS drops and missing textures, it is significantly more buggy (For the half-life engine, at least). Use OpenGL first, and if there is an issue with that, THEN try D3D. <!--QuoteEnd--> </td></tr></table><div class='postcolor'> <!--QuoteEEnd-->
    That's just HL's implementation, which btw was what, DX5?

    D3D is a lot faster and more stable now, but even then that was more of HL's implementation of it than the API itself.


    Jim summed it up rather nicely though. :P
  • CplDavisCplDavis I hunt the arctic Snonos Join Date: 2003-01-09 Member: 12097Members
    Open GL al the way

    if you want to notice the difference go play a map with water and lighting effecs in it.


    Go look at water in any map/mod

    The Oil Rig map is a good example in counter strike.


    Look at the pool of water in the swimming area in direct 3d then change to Open GL and look at it then.
  • TheWizardTheWizard Join Date: 2002-12-11 Member: 10553Members, Constellation
    In current implementations of modern games, you will likely see better graphics with a d3d implementation. IIRC a new version of openGL has been released and now takes advantage of several features that previously it was only common to see implemented in D3D.


    From a gaming perspective:

    Try both. Performance will vary between games. Pick the one that suits the game you are currently playing.

    From a programming perspective:

    It is your choice really. D3D has the advantage of having a corporation behind it that supports its advancement and thus will have a solid knowledge base. D3D is arguably easier to program. If you do not want to support non Windows environments then D3D is an option.

    OpenGL is... open. There is a large community behind it that is very active. Possibly a bit harder to code for but much more versatile. If you want cross platform portability then OpenGL is your only choice.
  • moultanomoultano Creator of ns_shiva. Join Date: 2002-12-14 Member: 10806Members, NS1 Playtester, Contributor, Constellation, NS2 Playtester, Squad Five Blue, Reinforced - Shadow, WC 2013 - Gold, NS2 Community Developer, Pistachionauts
    edited October 2004
    <a href='http://rmitz.org/carmack.on.opengl.html' target='_blank'>John Carmack speaks on Direct3D vs. OpenGL</a>
  • Soylent_greenSoylent_green Join Date: 2002-12-20 Member: 11220Members, Reinforced - Shadow
    edited October 2004
    <!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> </td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> Open GL al the way

    if you want to notice the difference go play a map with water and lighting effecs in it.


    Go look at water in any map/mod

    The Oil Rig map is a good example in counter strike.


    Look at the pool of water in the swimming area in direct 3d then change to Open GL and look at it then.
    <!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->

    Look, half-life's implementation of D3D is ****, what has this got to do with openGL vs D3D?

    Have you played enclave? It had an experimental openGL mode, it ran at <1 fps with the eye candy off and the resolution cranked down while D3D ran über smooth with everything on. You can do a crap implementation of anything.

    edit: moultano I stop reading right here : "So here it is, my current position as of december '96...". D3D was close to garbage in the first few years, everyone knows this.
  • moultanomoultano Creator of ns_shiva. Join Date: 2002-12-14 Member: 10806Members, NS1 Playtester, Contributor, Constellation, NS2 Playtester, Squad Five Blue, Reinforced - Shadow, WC 2013 - Gold, NS2 Community Developer, Pistachionauts
    <!--QuoteBegin-Soylent green+Oct 6 2004, 01:54 PM--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Soylent green @ Oct 6 2004, 01:54 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> edit: moultano I stop reading right here : "So here it is, my current position as of december '96...". D3D was close to garbage in the first few years, everyone knows this. <!--QuoteEnd--> </td></tr></table><div class='postcolor'> <!--QuoteEEnd-->
    He still refuses to code for it, so I don't think his opinion has changed much.
  • SurgeSurge asda4a3sklflkgh Join Date: 2002-07-14 Member: 944Members
    I prefer Direct3d...
  • RueRue Join Date: 2002-10-21 Member: 1564Members
    I really don't think you an make assumptions on what one is better by looking at games made on each platform.

    I belive that the real test is what games are comming out in. HL2 is D3D and Doom 3 is OpenGL

    That does not mean that if HL2 was OpenGL it would look any different.

    Exept that some of the platforms have certain features the other one dosent.

    Anyways I'm off to download the Hl2 cache so I can play Cs:S tomorrow <!--emo&;)--><img src='http://www.unknownworlds.com/forums/html//emoticons/wink-fix.gif' border='0' style='vertical-align:middle' alt='wink-fix.gif' /><!--endemo-->
  • PerditionPerdition Join Date: 2004-07-02 Member: 29692Members
    D3D on HL for me has the tendancy to freeze randomly. Thus, I am forced to use Open GL, but I prefer D3D.
  • Crono5Crono5 Join Date: 2003-07-22 Member: 18357Members
    edited October 2004
    OpenGL is the standard - It's what's been used for a while, it's tried, and true.

    All id Software games including and after Quake use OpenGL as the rendering library.

    As far as coding goes, it's somewhat simple, but the method by which new features are added (hardware extensions) can get sort of messy. They plan on fixing this in the upcoming version of OpenGL

    DirectX is Microsoft's baby, and in addition to doing rendering, like OpenGL does, it also can handle audio, networking, input, and such. I'm not sure how it does as far as coding is concerned - I tried it once, and seemed pretty straight-forward, though somewhat confusing. It would seem that the method by which new features are implemented is much more robust than OpenGL's, and since it's Microsoft only, new features can be added quickly and easily, with no board to consult.

    As far as performance goes, there's no noticeable gain based on rendering system alone - It all seems dependant on your card.

    UnrealEngine 2 uses DirectX, as does 3, and I think 1 does, as well.

    I'm drawn to OpenGL more than DirectX because it's
    - Cross-platform compatable
    - Used for more than strictly games (DirectX is games only)
    - id Software uses it, and id Software rules.
    - It's not Microsoft
    - I said so

    At least, that's what I know - I could be 100% wrong on each and every single point I made, and if I am, please point it out, I would like to learn as much about this stuff as I can.

    EDIT: [WHO]Them, please school me <!--emo&;)--><img src='http://www.unknownworlds.com/forums/html//emoticons/wink-fix.gif' border='0' style='vertical-align:middle' alt='wink-fix.gif' /><!--endemo-->
  • taboofirestaboofires Join Date: 2002-11-24 Member: 9853Members
    You could use D3D for things other than games, but people rarely do. Animation houses and graphics researchers pretty much all use openGL.
  • SkulkBaitSkulkBait Join Date: 2003-02-11 Member: 13423Members
    edited October 2004
    <!--QuoteBegin-moultano+Oct 6 2004, 03:22 PM--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (moultano @ Oct 6 2004, 03:22 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> <!--QuoteBegin-Soylent green+Oct 6 2004, 01:54 PM--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Soylent green @ Oct 6 2004, 01:54 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> edit: moultano I stop reading right here : "So here it is, my current position as of december '96...". D3D was close to garbage in the first few years, everyone knows this. <!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
    He still refuses to code for it, so I don't think his opinion has changed much. <!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
    IIRC he wrote a similar .plan entry sometime a few years ago detailing how Direct3D had improved to the point that his earlier comments no longer applied. He probably still doesn't use D3D because he he writes his engines to be crossplatform and he'd have to use OpenGL anyway to support anything other than windows.
  • Crono5Crono5 Join Date: 2003-07-22 Member: 18357Members
    I think that he used DirectSound and DirectInput in Doom 3.

    He used something, Doom 3 needs DX9 to run.
  • DOOManiacDOOManiac Worst. Critic. Ever. Join Date: 2002-04-17 Member: 462Members, NS1 Playtester
    Without DirectX, Windows can't talk to the hardware fast enough for the pace of games, so yes, DirectX is required for stuff like Sound and Input. Hell Quake 2 had DirectX for these areas.
  • moultanomoultano Creator of ns_shiva. Join Date: 2002-12-14 Member: 10806Members, NS1 Playtester, Contributor, Constellation, NS2 Playtester, Squad Five Blue, Reinforced - Shadow, WC 2013 - Gold, NS2 Community Developer, Pistachionauts
    <!--QuoteBegin-SkulkBait+Oct 7 2004, 12:28 AM--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (SkulkBait @ Oct 7 2004, 12:28 AM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> <!--QuoteBegin-moultano+Oct 6 2004, 03:22 PM--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (moultano @ Oct 6 2004, 03:22 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> <!--QuoteBegin-Soylent green+Oct 6 2004, 01:54 PM--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Soylent green @ Oct 6 2004, 01:54 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> edit: moultano I stop reading right here : "So here it is, my current position as of december '96...". D3D was close to garbage in the first few years, everyone knows this. <!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
    He still refuses to code for it, so I don't think his opinion has changed much. <!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
    IIRC he wrote a similar .plan entry sometime a few years ago detailing how Direct3D had improved to the point that his earlier comments no longer applied. He probably still doesn't use D3D because he he writes his engines to be crossplatform and he'd have to use OpenGL anyway to support anything other than windows. <!--QuoteEnd--> </td></tr></table><div class='postcolor'> <!--QuoteEEnd-->
    I'd be interested to see that. Linky?
    From what I've been told Carmack's insistance is the main reason OpenGL took off and is still around today.
Sign In or Register to comment.