Page 1 of 7 12345 ... LastLast
Results 1 to 10 of 69

Thread: Why is OpenGL better than Direct3D?

  1. #1
    Senior Member Regular Contributor
    Join Date
    Apr 2000
    Location
    Thunder Bay,ON,Canada
    Posts
    135

    Why is OpenGL better than Direct3D?

    This has been the starting point of countless flame wars on many message boards. But I have still found no answer to this very questiong.No one has given me one good reason why OpenGL is better than Direct3D.

    To start off,I can honestly say that DirectX FAR surpasses OpenGL in terms of 2D graphics.That has already been established. But why is OpenGL better than Direct3D? From what I can tell,they both do the same thing on the same grphics cards and both of them have great API's (totally based on my opinion)The only thing going for OpenGL that I see is that it is platform independant. However,to those programming their 3D applications for Windows,I can't see why they won't use DirectX.What better API to use for windows?

    I am not trying to start a flame war mind you.I'm just seeking answers
    -------------------------
    "Bad bad programmer! No Mountain Dew for you!"

  2. #2
    Senior Member Regular Contributor
    Join Date
    Feb 2000
    Location
    milano, italy
    Posts
    282

    Re: Why is OpenGL better than Direct3D?

    yes, with d3d you can do as much as you can do with opengl, if not more...
    but imo, opengl is better because it is:
    -more elegant
    -easier to learn
    -more compact

    when i was starting and i was wondering what api to choose, i took a look to d3d sources: a darn mess!
    then i said "well, it's such a popular API, why don't give it a try?" so i coded my personal version of the hello world, a 3D starfield.
    it took about 1 month to gather the needed knowledge, some days to code.

    some time later i tried opengl with ms aux library... hey! just 3 days of reading and 1 hour of coding!

    then, for me the decision was simple: stay with the opengl family, and never care about designing for d3d.

    sometime, though, i have some look somewhere on the net... i see dx is constantly and fastly adding features (but it's not improving in code quality) and that's a thing that opengl lacks...

    opengl is controlled by the arb, and any changes/addition/specs from the manufacturers has to be submitted to the arb, wich is a bit slow in approving things...

    hope to have clarified thins up.

    Dolo/\/\ighty
    Dolo/\/\ightY

  3. #3
    Senior Member Frequent Contributor
    Join Date
    Feb 2000
    Location
    France
    Posts
    880

    Re: Why is OpenGL better than Direct3D?

    Well, I'd agree with dmy (once again ! I'll end with asking you to marry me !).

    First thing, I have never coded with D3D. But I had to port a program from Mac to PC. As I wanted to turn the visualization system from 2D to 3D, I had a look at the various 3D API available. As I ported FROM the Mac, I had a go with QuickDraw 3D (which at the time was supported on both PCs and Macs). Unfortunately, some days after I had completed the conversion, Apple announced they abandoned QD3D for OpenGL... So I started to have a look at OpenGL. Meanwhile, I found some code in my company : someone before me had tried to port the program using Direct3D....

    As dmy said, the code was really awful (I mean, hard to read !).

    One of my other objectives was to develop a version of the converted program for UNIX systems and Macs (yeah, port-back !). So I stuck with OpenGL and am very VERY happy with it...

    As everybody on this board, I just hope that the ARB won't make the mistake of not improving OpenGL constantly...

    Regards.

    Eric

    P.S. : if I had to do Windows-Only programs, perhaps I would use D3D...

  4. #4
    Senior Member Regular Contributor
    Join Date
    Apr 2000
    Location
    Thunder Bay,ON,Canada
    Posts
    135

    Re: Why is OpenGL better than Direct3D?

    Thanx for the replies guys...I do respect your opinions of coarse,but that's what they are....just opinions.What I was looking for was maybe some benchmark tests or something to show that OpenGL is truly better than Direct3D. What I found out from other message boards was that people hated DirectX just because it's a Microsoft product (which,needless to say,is totally unfair)

    As I said,I looked at both API's and in my opinion I liked the both of them (I made a particle system in both OpenGL and Direct3D and they both turned out fine.Then again,I love programming in MFC so I prolly like messy API's
    -------------------------
    "Bad bad programmer! No Mountain Dew for you!"

  5. #5
    Senior Member Frequent Contributor
    Join Date
    Feb 2000
    Posts
    569

    Re: Why is OpenGL better than Direct3D?

    Well, I don't have a real benchmark but Tim Sweeny(Unreal) is saying everywhere that Direct3d is faster than opengl on windows.

    I believe him, because the Unreal Engine is fast like hell and has a bunch of nice features.

    But, you have to think that the code will be as fast as the programmer can make it!. If you worked with opengl all your life and try direct3d, well, the direct3d code will probably be slower than the opengl code.

  6. #6
    Senior Member OpenGL Guru Humus's Avatar
    Join Date
    Mar 2000
    Location
    Stockholm, Sweden
    Posts
    2,342

    Re: Why is OpenGL better than Direct3D?

    You should also consider that how fast an OpenGL app or Direct3D app runs depends a lot of how well the drivers are written for each API. Some graphic board are better performers in OpenGL and some in Direct3D depending on which API the developer team had most in mind while developing it, and a lot of which drivers they prioritize to optimize.

  7. #7
    Senior Member Regular Contributor Roderic (Ingenu)'s Avatar
    Join Date
    Mar 2000
    Location
    Horsham, West Sussex, UK.
    Posts
    156

    Re: Why is OpenGL better than Direct3D?

    I've tried both Direct3D and OpenGL, beginning with D3D.
    I agree with all.

    I want to point out, that *if* you think microsoft is having a monopole, and that you don't want it to continue having one, you mustn't only support MS OS.

    Because OpenGL is platform indepent, you might want to use it.

    About benchmarks, I can tell you for sure that OpenGL is more friendly to non standard architecture than D3D.
    D3D devellopers don't follow all the directives (late directives) from MS about the begin and end, killing rendering on scene captures cards like PowerVR.

    Because the scene captures/tile rendering cards are really nice (see the Dreamcast) and more efficient than traditional architecture, you might prefer to use OpenGL to use them efficiently.

    With nVidia pushing OpenGL features, I think OpenGL could/would stay a really good API.
    Until now no fx can be achieved in D3D than can't in OpenGL.

    One other thing I want to point out, is that the OpenGL state machine has a scheme, while MS Direct3D looks like a black box in which you don't know what happens, making it harder for you to speed up your engine.

    This is not only an opinion.
    -* So many things to do, so little time to spend. *-

  8. #8
    Senior Member Frequent Contributor
    Join Date
    Feb 2000
    Location
    London
    Posts
    503

    Re: Why is OpenGL better than Direct3D?

    Gecko, no benchmark will prove that OpenGL is better than D3D, or vice versa. OpenGL and D3D are specifications for INTERFACES, not implementations. Benchmark performance will depend on a combination of hardware, application design and (ESPECIALLY) driver.

    My 2 cents:

    1) OpenGL is extremely portable. D3D isn't.

    2) OpenGL has conformance specs. D3D doesn't.

    3) OpenGL is stable - most functions will do nothing if an error occurs. D3D can do ANYTHING if an error occurs.

    4) OpenGL is well-behaved. D3D isn't. When I was using it (around DX5), it didn't allow any GDI call while the drawing surface was locked. So if you hit a debugger breakpoint inside drawing code, your machine did an immediate hard reboot. Nice.

    5) OpenGL code is small, readable, consistent, clean, easy to learn and just very nice to work with. DirectX is the ugliest interface I have ever seen in around 10 years of programming. Okay, this is just an "opinion", but to me it's an order of magnitude more important than any slight benchmark differences. I program graphics for fun, and at the end of the day OpenGL is fun and DirectX is not.

    Couple of other points:

    About Tim Sweeney's comments - the performance difference for Unreal was, AFAIK, largely due to some texture management issues. Unreal did a fair amount of procedural texture generation, so the DX ability to directly access texture surfaces made a sizeable difference. Fair enough - I'm looking at procedural textures a lot myself - but this isn't a typical app, and there were good reasons why OpenGL doesn't allow direct access to texture mem. (It places major constraints on drivers/hardware; optimizations such as 3Dlabs' virtual texture management just wouldn't be possible.)

    I'd add more, but this has all been said before and will all be said again, and I really doubt that it's going to change anybody's mind.

    Closing thought. I know lots of people who use OpenGL and like it, and lots of people who use D3D and like it. I don't know ANYONE who has used both APIs and prefers D3D.

  9. #9
    Guest

    Re: Why is OpenGL better than Direct3D?

    Microsoft is illegal against the anti-trust-law, and has very high risk about its future. How can we use API of such a company? Due to illegal Microsoft, any additional function to its OS can be illegal.

    Using such API implies the death of your project.

    In fact, many companies cancelled the order of Office2000 since its arogant and illegal anti-competition methods.

  10. #10
    Guest

    Re: Why is OpenGL better than Direct3D?

    OpenGL is much faster than Direct3D if the video board supports Transform & Lightning.

    Most video cards will support Transform & Lightning in about 6 months, and they will support more OpenGL hardware specs.

    OpenGL is the future.

Page 1 of 7 12345 ... LastLast

Similar Threads

  1. OpenGL / Direct3D??
    By in forum OpenGL: User Software
    Replies: 0
    Last Post: 02-18-2002, 03:45 PM
  2. opengl or direct3d?
    By ocioso in forum OpenGL: Basic Coding
    Replies: 13
    Last Post: 11-23-2001, 11:24 AM
  3. about direct3d and opengl
    By in forum OpenGL: User Software
    Replies: 5
    Last Post: 06-27-2001, 02:07 AM
  4. OpenGL vs Direct3D
    By skater_g in forum OpenGL: Advanced Coding
    Replies: 36
    Last Post: 03-31-2001, 01:57 PM
  5. Direct3D better than OpenGL??
    By Jesuslink in forum OpenGL: User Software
    Replies: 0
    Last Post: 11-06-2000, 04:19 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Proudly hosted by Digital Ocean