This is my first reaction when I installed and tried the 1.0 of XNA. To summarize my feeling: it's still 95% for XBox and no nearer to replace the old MDX 1.0. So I decided not to migrate from MDX to XNA though I want to do that very much. I feel like MDX 2 more; amen to MDX 2.
The hardest issue for me is the content pipeline, which is very necessary, but the workflow is fixed and it assumes the contents are only built before the program runs. The helper functions wrapping D3DX can only be used with types in the content pipeline. I have to utilize the full content pipeline just for generating something dynamically, of course with significant performance cost. Or I have to write those D3DX utilities my self. Currently I don't have a good idea on this.
The other annoying thing is about type names. When using XNA with WinForms, the Point, Rectangle, Color, etc. are all need to be fully qualified in many source files. Those clones in XNA are in the same namespace with other XNA types. I don't want to import those types but I have no way to avoid them. Another is about types in Microsoft.Xna.Framework.Game.dll. They're mixed with basic types in the Microsoft.Xna.Framework namespace. So if only one source file used any of those game types, that assembly has to be referenced, thus those type names are occupied and I have to avoid those names. Why not let them in their own Microsoft.Xna.Framework.Game namespace
Well, since it already released, it will mostly stay like this. Or maybe it's just "You cannot count on the first release of any software." That's all my rants.

Rants on XNA 1.0
Demonslayer
Nice rant.
Do you think that it's a good replacement for MDX at this point, aside from some of the missing utility functions
I'd like to be able to play with this without having to instal VC express. Any word on when that might happen
Cheers
Xero_2007
You could do this, just as a walkaround:
using XnaPoint = Microsoft.Xna.Framework.Point;
cgraus
Your suggestion might be useful but you don't need to build assets at run time to have 'mod-able' content. The mod maker could instead build the content and distribute ready built content, that way the end-user doesn't have to waste their time waiting for a build they can just play. The ContentManager can be customized so that you could very easily enable loading from different locations to support mods. You could even make it download pre-built content from the internet without much effort.
The content pipeline is already exposed as MSBuild tasks - using msbuild tasks you could quite easily build a packaging tool or incorporate it into your level editor and get not only the content pipeline but also a powerful build/dependency engine too. I think people are being a little short sighted and underestimating the content pipeline. Unreal games and Half-Life2 are 'mod-able' and successful games but neither of them can load a .tga at runtime (or at least they don't usually).
Cheers,
Leaf.
arkiboys
smtraber
Thomas S. Andersen
MLG_CSE
Ravel
No, I dont think the XNA redist includes the content pipeline in which case its likely the only way to get those assemblies onto a machine is to install GSE, which is a shame.
A suggestion on the Connect site could be useful.
Cheers,
Leaf
LonelyPixel
OClaudiu
> the workflow is fixed
I'm not sure I understand what this means (I haven't had time to install XNA yet) - are you actually saying that I can't let the user choose an arbitrary say, .x file and see it in the application Loading bitmaps with System.Drawing and copy it over to a texture should work though, I guess
(This text editor is humiliating to use, will you **please** get a new forum )
AbhilashN
Yeah, XNA is great, but it it sucks that one can't load dynamic content with the content pipeline. Now for many games this works just fine. One can still use external files describing a scene and what content to load as long as that content is put into the content pipeline at build time. But if one wants to create a game that has user content in it. Or is mod-able How does one go about doing that
Would be nice if the content pipeline had som API:s for converting content at runtime and registering the name with the pipeline. Something like this:
(public and static)
ContentManager.Import( string fileToImport, [string nameToRegisterWith, ... importer, ... processor] )
Then one could do something like this (incomplete code offcourse):
ContentManager.Import( "mods/battlestargalactica0.01/boomer.tga", "PlayerFace" );
...
cm.Load<Texture2d>( "PlayerFace" );
Just a suggestion...XNA 1.1 or SP 1 maybe
Update:
Added it as a feature suggestion on Microsoft Connect. Go there and vote for it if you want runtime import/build for the content pipeline.
https://connect.microsoft.com/feedback/ViewFeedback.aspx FeedbackID=244881&SiteID=226
siyou
It doesn't help. Because I have to using Microsoft.Xna.Framework to use the vectors and matrix, etc. So I have both Microsoft.Xna.Framework and System.Drawing, and the ambiguity is there even if I add using XnaPoint = Microsoft.Xna.Framework.Point.
mruniqueid
Yes, that's what I want to say.
To Flavious
Yes. I do have a VC#Express integration rant post before. I don't like the "all in IDE" mode too. But I saw in the forum there's a separate XNA Build tool which solves this.
In regards to replacing MDX, I used to think it would but now I think they're for different things.
ProjectDev