Thread: Why use Direct3D?

  1. #16
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by cyberfish View Post
    MS tries to make up "standards" that do the same thing as existing standards, or purposely make their products not standard compliant. Both to achieve vendor lock-in.
    There is definitely a big difference between the insight and practices that made MS a giant and the insight and practices that are apparently supposed to maintain this dominance. In the first case, a great thing that revolutionized the industry (one might almost say made it possible).

    In the second, totally the opposite. I strongly believe in dialectics, but "MS vs the world" is an extreme perversion of the principle which probably has not benefited anyone at all, esp. users. Or maybe that is what dialectics is supposed to be...hmmm.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  2. #17
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by cyberfish View Post
    Silverlight - what's wrong with Flash and Java?
    Because flash is a power-sucking disguting API?
    As someone once said:
    "I reject Flash and substitute my own."
    (Well, not really, but close enough.)
    We need something that doesn't kill the cpu or today's weak netbooks. Flash isn't the answer. That unoptimized piece of crap should be killed.
    If Microsoft can succeed with Silverlight, then I applaud them.

    Quote Originally Posted by Akkernight View Post
    Now, the reason DirectX 10 didn't come for XP was because DirectX 10 was built for the Vista architecture, or so I heard. Just like DirectX 9 has too seperate version, or many but I'm talking about DirectX9 and DirectX 9 Vista
    This is true. They leveraged the power of the new OS to make a new, better, faster DX version, which ultimately led to that they couldn't backport it to XP. But they made that decision on purpose, to solely target Vista in the first place.

    DirectX 11 is the Windows 7 DirectX and I believe Win7 will get just as popular of not more popular than WinXP, as it's faster ( at some areas ) and not slower at any areas (can be debated), so if you want to go for DirectX, I'd say choose eather DirectX 9 or if you want to take the long shot, go for DirectX 11
    DX11 will come out for Vista too.
    If I was asked which DX version to target, I would say DX11, because let's face it - XP will be phased out whether we want it or not and what good is developing for an OS that is no longer maintained or supported?
    It is likely Win7 will be the new XP anyway.

    And as for OGL vs DX...
    Currently, OGL is in a state of mess, I believe. Version 2 was supposed to fix that (or was it another version?), but it didn't really deliver on its promise. Let's hope the next version will deliver.
    OpenGL is quite old now compared to DirectX which has received several revisions while OpenGL has just gotten one, and a bad one at that.
    Currently, I believe DirectX has better graphics functionality that is also easier utilized then OpenGL.
    However, as people have stated, it's apples vs oranges mostly - use what you think suits you best.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  3. #18
    Registered User
    Join Date
    Oct 2006
    Location
    UK/Norway
    Posts
    485
    I like openGL, but as soon as you want to do something more advance you need to load a lot of extensions and make sure they work, which I think is messy...

  4. #19
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,229
    We need something that doesn't kill the cpu or today's weak netbooks. Flash isn't the answer. That unoptimized piece of crap should be killed.
    I have been using Flash quite a bit, and I find nothing wrong with it.

    Flash is not meant for heavy calculations. That's what Java is for.

    ActionScript 3 even includes support for hardware acceleration (DX and OGL).

  5. #20
    int x = *((int *) NULL); Cactus_Hugger's Avatar
    Join Date
    Jul 2003
    Location
    Banks of the River Styx
    Posts
    902
    Quote Originally Posted by Elysia View Post
    If Microsoft can succeed with Silverlight, then I applaud them.
    I do not - Linux - Flash at least works, for ~98% of Flash apps (iMeem is the only non functional app I know of.). Silverlight is guarenteed not to.
    long time; /* know C? */
    Unprecedented performance: Nothing ever ran this slow before.
    Any sufficiently advanced bug is indistinguishable from a feature.
    Real Programmers confuse Halloween and Christmas, because dec 25 == oct 31.
    The best way to accelerate an IBM is at 9.8 m/s/s.
    recursion (re - cur' - zhun) n. 1. (see recursion)

  6. #21
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by Cactus_Hugger View Post
    I do not - Linux - Flash at least works, for ~98% of Flash apps (iMeem is the only non functional app I know of.). Silverlight is guarenteed not to.
    Witness -- so here we go again: something that could advance the world of computing for everyone, but will be held up (as Adobe and Microsoft in fact are*) because the code is a secret! Meaning: reverse engineer the obvious. Meaning: the total opposite of "efficient use of resources".

    *having only the appearance of greatness. If they went open source, the products would be better! If they had done it ten years ago, we would be ten years into the future right now!
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  7. #22
    Registered User
    Join Date
    Apr 2004
    Posts
    72
    The short answer is Microsoft recommends using DirectX on their operating system, so the majority of professional Windows developers use DirectX. In doing so, they have the support of Microsoft and better stability. Actually, this is probably the long answer too.

    Always use the APIs that your target platform recommends. If Apple says use OpenGL, then you wouldn't choose DirectX. True, on Windows there are options, but you will most likely have better tools, apis, etc. that come with your target platform. Previously developers chose not to use OpenGL because of driver issues. But even today, as we see with Intel's integrated graphics cards, they are often behind on OpenGL versions. NVidia and ATI tend to keep up well.

    For your education though, use both APIs with Windows and let your user choose which one to run. Of course, select a default rendering library. World of Warcraft defaults to Direct3D but the user can change it to OpenGL. They will run whichever runs better on the given machine.

  8. #23
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by cyberfish View Post
    I have been using Flash quite a bit, and I find nothing wrong with it.

    Flash is not meant for heavy calculations. That's what Java is for.

    ActionScript 3 even includes support for hardware acceleration (DX and OGL).
    The problem is that it sucks up CPU like crazy.
    Just try visiting a website with flash on a netbook. It will likely eat up 50% CPU (on HyperThreading, that means the one single core).
    Thus, Flash = fail.
    It simply is not acceptable. We need something akin to C++ for the web - something that's FAST and modern.

    Quote Originally Posted by Cactus_Hugger View Post
    I do not - Linux - Flash at least works, for ~98% of Flash apps (iMeem is the only non functional app I know of.). Silverlight is guarenteed not to.
    What is this not guaranteed to work?
    Flash works, but does not necessarily work well.
    Flash is used as a media player very often too, and even on a computer with 2 x 2 GHz, it's impossible to event watch a 480p H264 movie, while it takes less than 10% with a proper desktop DirectShow Application.
    And it sucks up cpu like crazy for harmless animations!
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  9. #24
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by Elysia View Post
    The problem is that it sucks up CPU like crazy.
    Maybe on windows it does I wonder why they would want that?

    I have no particular love or hate of flash, but out of curiousity I just started googling around (because I always run a CPU monitor and I've never noticed any web stuff causing an issue).

    With my (2x2GHz) computer I am unable to find *anything* flash that gets even a single CPU much over 5-10%. This page has six separate animations up to 400px wide and I'm looking at 4% and 8%. Maybe you have a better example?

    So the idea that it "it sucks up cpu like crazy for harmless animations!" is just complete out-to-lunch. Maybe you need to clean your registry or something Or you are just spreading some bogus hype.

    There are a lot of reasons to criticise adobe; I don't think functionality is one of them.

    [edit] okay, I found a big "H264" video with sound and it is 30% and 45%. That doesn't seem so bad. That is pretty high quality stuff. I don't think it's fair to contrast it to a dedicated desktop app.
    Last edited by MK27; 05-18-2009 at 11:10 AM.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  10. #25
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    They don't appear flashy enough at that page...
    But I know, for example, a software that actually uses flash internally for animations - and guess what? It eats up 50% CPU for very, very simple animations (like water flowing into a tank).
    It all depends on where and what, I guess.
    I wonder if I should attempt to find a site with heavy flash?

    One heavy page:
    http://www.transformersmovie.com/

    Site makes my browser LAG:
    http://www.thefwa.com/50million/
    Last edited by Elysia; 05-18-2009 at 11:15 AM.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  11. #26
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,229
    The problem is that it sucks up CPU like crazy.
    Just try visiting a website with flash on a netbook. It will likely eat up 50% CPU (on HyperThreading, that means the one single core).
    And the same site with the same functionality doesn't in Silverlight?

    Also, even if that is the case, MS could have came up with their own better implementation of flash, instead of making a new format. There's nothing wrong with flash as a language. You are only criticising the implementation.

    And last time I checked (correct me if I'm wrong), Silverlight is compiled to bytecode, making it more directly comparable to Java instead of Flash.

  12. #27
    Registered User VirtualAce's Avatar
    Join Date
    Aug 2001
    Posts
    9,607
    Since there are no specific game programming questions in this thread and because it has degenerated into a war of words over nothing I'm moving it to the tech forum with the hopes it will die a slow painful death there.

  13. #28
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by cyberfish View Post
    And the same site with the same functionality doesn't in Silverlight?

    Also, even if that is the case, MS could have came up with their own better implementation of flash, instead of making a new format. There's nothing wrong with flash as a language. You are only criticising the implementation.

    And last time I checked (correct me if I'm wrong), Silverlight is compiled to bytecode, making it more directly comparable to Java instead of Flash.
    I don't know. All I said was that I don't like Flash and if someone else can pull off what Flash cannot, then power to them.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  14. #29
    Hail to the king, baby. Akkernight's Avatar
    Join Date
    Oct 2008
    Location
    Faroe Islands
    Posts
    717
    sorry to say this... But get a better computer.
    Buying the cheap stuff has it's disadvantages.
    Currently research OpenGL

  15. #30
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Don't be silly. There are no powerful netbooks.
    And powerhouses are big, heavy and has virtually no battery life.
    There is no excuse for slow software. This is a C/C++ board, after all.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Need help with getting DirectX 9.0 initilization
    By DarkMortar in forum Windows Programming
    Replies: 7
    Last Post: 05-09-2006, 08:58 PM
  2. Creating a 2D GUI using Direct3D
    By codec in forum Game Programming
    Replies: 8
    Last Post: 09-23-2004, 11:57 AM
  3. Problem with Direct3D
    By frenchfry164 in forum Tech Board
    Replies: 1
    Last Post: 11-27-2003, 04:28 PM
  4. DIRECTDRAW DIRECT3d
    By samsam1 in forum Game Programming
    Replies: 3
    Last Post: 01-14-2003, 07:28 PM
  5. Direct3D vs. OpenGL
    By PorkyChop in forum Game Programming
    Replies: 22
    Last Post: 12-08-2002, 12:41 AM