The DirectX Conspiricy

clearz

Member
Joined
Jul 21, 2003
Messages
22
How come when I type in Directx9 Sprite class into google I get 62 irrivalent results back. What is wrong with microsoft. Why Is it that after downloading the SDK a few months ago I know next to nothing about DirectX and the .Net platform. Is there a conspiricy between microsoft and the pro gaming companys not to let any new programmers in. Does anyone else feel like this.

Regards,
John.
 
Cant rmember if there is already a vote about this on this site or another one, but yes I agree that finding DX9 help for the beginner is hard.

I dont rate the SDK help much, and the samples need far more comments in to explain how/why it works.

Im getting there but only trough pure determination to learn it using .Net Game Programming with DirectX9 and gatherering what I can from the samples.

There really should be a novice startup book but I cant find one:(
 
I have a book about directx 9 for vb (".NETY Game Programming with DirectX 9.0") published by Apress. It is very thourough and goes through not only directx but other game programming concepts too. It seems like a pretty good book for a beginner if you have $50 to spare.
 
marble_eater I mentioned this title in my post above:)

I agree tho it is a very good book:)
 
Well there is help

Learning DX9 is truely quite a task. A great place to start for any newbie or intermediate game programmer is:

Tricks of the Windows Game Programming Gurus (2nd Edition)
by Andre LaMothe (Author)

AMAZING book and he walks you through everything step by step. Given only up through DX8 is covered but still helped me A TON. Pretty much the only good book I could find to help me out. This subject is very hit or miss...
 
Tricks is probably a good book, but it is for C++ tho not VB.NET.

A shame really as it was his first Tricks book of his I used to learn my first go at games programming
 
Is there a conspiricy between microsoft and the pro gaming companys not to let any new programmers in.

What makes you think that any pro gaming companies are using Managed DirectX? I havent heard of any game starts using it. In fact, I think were on the early edge when were currently looking into it for possible tools use. Maybe.
 
Originally posted by hog
Cant rmember if there is already a vote about this on this site or another one, but yes I agree that finding DX9 help for the beginner is hard.

I believe you may be refering to my prev post at ...http://www.computerhelp.forum/showthread.php?s=&threadid=78797

As for microsoft and game companies conspiring to limit the info about directx. Yes I do believe there may be an intentional effort put towards making it more difficult to learn directx (as it relates to "at home developers")

Its been my experience having worked with directx since ver 7 that I too have always found the documentation for directx lacking. For example, pixel and vertex shaders are the worst culprites for lack of documentation.

Another aspect, and a BIG one at that is just how to recover from a d3d device being lost or a directinput device for that matter. Each example app on the iNet seems to provide a different aproach or simply does not even include code to handle such a device lost event. I have seen no reference to any industry accepted or reccomended way of recovering from a device lost state. I believe this is what is at the heart of clearz post, A lack of low level info by microsoft and others about how directx works or rather some sort of industry based standards for writing safe, well written, and indistry accepted directx code.

I think what I am getting at is that there are no industry standards in regards to writing directx code. When you consider the size and scope of the directx api as well as it being so prodominantly used by the gaming industry you would think that there would be more of an effort made towards creating a set of coding standard for directx.

Consider for a moment that if directx was THE easyest and simplest graphics api of all time, and Im talking so easy and simple that it would make the days of coding games back in the MSDOS days look like rocket science. Im talking even easier than it was writing games for DOS!

If drawing any type of 3d graphics on screen (weather it be with pixel/vertex shaders or not), was a non issue, developers would be able to create games as fast as vb developers can write windows apps.

Witch means the lone developers out there would be able to flood the market with all sorts of gaming creations. Not that the market is not already flooded mind you. Well if the market is flooded with games of all types where does that leave big business. After all big business is not in it for the sheer entertainment of it. There in it to make money and nothing else.

If creating games was so easy the big game companies would stand to loose as people would be more likely to sway towards a lone developers work rather then having to spend $60 plus dollars on a game that was made by a corporation.

...
... ...
...

Where the hell am I going with this??. ... Im rambling on and on half asleep, so I will end it here. But my ideas still stand. Detailed documentation that goes beyond just a one sentance description, and more importantly a globally accepted and promoted, industry standard for writing code against directx is non existant leaving the rest of us "one man armys" fishing for stuffed teddy bears in a quarter filled coin op.
 
The Managed DirectX documentation is horrible to nonexistent (i e, they pre-processed the header files into something thats clickable, but tells you nothing more than the header files would...)

The C++ DirectX documentation is very good. For example, if pixel shaders are giving you trouble, Id start looking at:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndrive/html/directx05222002.asp

But theres so much that building an autoritative link list would take a long time...

Also, the D3D FX stuff makes it very simple to load and apply various shaders. There are several examples in the DirectX 9.0 Summer Update SDK, too, although, alas, some of the best ones are C++ only and not ported (you can still read them for information).

Regarding approaches to higher-level constructs, such as scene graphs, etc, then I suggest getting a book. Thats all general-purpose programming stuff which really shouldnt be addressed by a low-level device access API. Although Microsoft is trying to build a little bit on top of that with the separate Direct3DX stuff, just for good measure.
 
A few more thoughts I did not add in my prev post ...

I was recently going through the microsoft provided examples apps in the dx9 sdk. Just for the "so called" simple Cubemapping sample there is about 5000 lines of code! Yes thats right 5000 lines of code just to render a skybox, teapot, and airplane. Talk about overkill. The cubemap as well as the other samples in the dx9sdk should have been restricted to only 500 lines of code or less. there is far too much code to sift through to figure out how the samples actually go about doing what it is there are supposed to demonstrate.
 
I dont know about a conspiracy...
But game development, like any major software project, is going to be hard and long. Writing a game is definitely going to be harder than most other types of project - I could list a dozen reasons off the top of my head but theyre not that important.

Writing a game CAN be hard, but doesnt have to be. It depends on what you want to do. If you want to write every line of code yourself, then be in for a LOT of work. If you dont mind using a game development kit, then you could have a working game in a day, and a Good game in a few months to a year. Packages like DarkBasic exist for just this purpose. If you want to tweak code or write some of it, but maybe the graphics/network/UI parts of a game seem like a lot to learn, maybe start with an engine - search "game engine" on google to find a dozen, most are free or very cheap (less than $100).

Im not saying that MS couldnt improve the docs for DirectX. But realize that people wanted the .NET version of DirectX "NOW!" and I think most are willing to wait for better docs while they get the SDK early rather than wait for the SDK just because the docs werent ready.

And yes, even with perfect docs, writing code to use DirectX (or OpenGL for that matter) is going to be somewhat difficult. By itself, its a LOT to learn just because of the number of features it has. But, with some time, practice, and patience, it all gets easier.

-Ner
 
I have to agree whole heartedly with createdbyx!

From where I stand is this;

Im only interested in learning how to program graphics or game apps just for my own sad pleasure to make me feel worthwhile, you know "look I did that":)

I post my apps on my site and hope people download them. I watch my site stats and get a sad little buzz when I see another stranger has downloaded one of my programs.

I dont see myelf as a threat to any game business as to be perfectly frank, hell I just aint that good.

BUT, I agree there are many out there who are and would as stated be a threat to the gaming industry.
 
Listen: There is no interest of the "pro" game industry to make it _harder_ to make games. The "pro" game industry does not see independent developers as competitors. They are either "farms" for future employees, future potential acquisition targets, or irrelevant. (Most of them are the latter)

The more good games that get developed, and the more people who learn the hard art of making quality games, the stronger the games industry is. The easier it becomes to make quality games, the better off everybody is.

I agree that releasing Managed DirectX early was a good idea; it came out in 2002. However, the SDK update in october 2003, almost a year later, had not improved the documentation for Managed DirectX at all. I think thats a shame.
 
The "pro" game industry does not see independent developers as competitors.

Ive been reading up on the Pocket PC. It isnt all too popular, but it is popular enough to grant you a living if you make a single hit game. The Pocket PC is where independant developers reign supreme, and corporations are struggling. It seems like the popularity is growing (right now its like a small family), and its certainly grabbed my interest. Even if it fails, there are great things to learn from the current market. http://www.pocketmatrix.com/forums/ is a nice area where you can chat with those who actually develop commercial PocketPC games and software.

The more good games that get developed, and the more people who learn the hard art of making quality games, the stronger the games industry is. The easier it becomes to make quality games, the better off everybody is.

That seems to be the problem with the gaming market today. Corporations are not interested in quality games, theyre just interested in making a visually stunning game, that has lackluster gameplay. This is the way the PC gaming industry has turned, and will probably stay for many years. Fortunately, the console gaming industry has yet to hit this stage, but I fear it will with the next generation.

I agree that releasing Managed DirectX early was a good idea; it came out in 2002. However, the SDK update in october 2003, almost a year later, had not improved the documentation for Managed DirectX at all. I think thats a shame.

Id assume that the documentation is lacking because the C++ unmanaged documentation explains everything you need to know. The SDK also comes with various examples. This is pretty much how I learned how to use DirectDraw and DirectInput.
 
Were starting to sidetrack a bit here, but I couldnt hold back anymore. The main problem with the gaming industry is that its so
 
Id assume that the documentation is lacking because the C++ unmanaged documentation explains everything you need to know.

If it only were that easy. I used to write device drivers for a living -- I know this stuff. Alas, because they dont expose pointers in Managed DirectX, theres all kinds of places in the wrappers that are NOT like in the C++ documentation. As I said above, I think the C++ documentation is just fine in most places.

If there was a document that documented the deltas, per interface method, thatd be swell. But, alas, there are some pretty big differences, with no documentation to set you straight other than guesswork. Quite tedious.
 
Originally posted by wyrd
Want easy 2D game development? Then look no further than here;
http://www.gapidraw.com/default.asp
and here for the .NET wrapper;
http://www.intuitex.com/gapidraw.html

The license is only if you use version 2.05. Find a d/l for 2.04 (which the .NET wrapper has) and its completely free.

Unfortunately I dont know of any free 3D SDKs that are as good as the 2D one I mention above.

It is not clear in the Viktoria Institue licensing scheme if they are willing to issue "new" free licenses to 2.04 versions and earlier. Rather pre-existing licenses can continue to use 2.04 and earlier. Their website says and I quote:

"What happens with existing licenses and older versions of GapiDraw?

The license issued for GapiDraw up to and including version 2.04 shall continue to be effective. If you have such a license you can continue integrating GapiDraw (version 2.04 and earlier) in your product. The older versions of GapiDraw will still be available on the web for those who are satisfied with them. "

I have a 2.04 installation but not a 2.04 license. The license agreement in the 2.04 distribution reads:

"COMMERCIAL USE. Use of the SOFTWARE commercially without prior consent of the AUTHOR is prohibited. Commercial use includes, but is not limited to, making profit from an application depending on the SOFTWARE to operate correctly. "

So, I guess the point is 2.04 may not be entirely "free" if you dont already have a license so check with the Institue first before distributing any code commmercially...

BTW, I agree with your last comment. I too have not found a better engine than this one for 2D...
 
Ive done some inquery. Their current version (2.05) will remain a "pay what you want" license. That means if you want to pay $0, you can, and theyll allow you to use it commercially. However, there is a new version coming out (3.0) that also supports Palm and N-Gage (the current version is just Pocket PCs and Desktop PCs), and also have a number of improvements and enhancements. This new version will be licensed for about $100/game. Even so, you can d/l a trial (never expires, just shows a splash screen). So if youre just making things as a hobby, you wont have to worry about any of this.
 
Back
Top