Reputation: 16526
I realise there are numerous questions on here asking about choosing between XNA and SlimDX, but these all relate to game programming.
A little background: I have an application that renders scenes from XML descriptions. Currently I am using WPF 3D and this mostly works, except that WPF has no way to render scenes offscreen (i.e. on a server, without displaying them in a window), and also rendering to a bitmap causes WPF to fallback to software rendering.
So I'm faced with having to write my own renderer. Here are the requirements:
As you can see it's pretty simple stuff and WPF can manage it quite nicely except for the not-being-able-to-export-the-scene problem.
In particular I don't need many of the things usually needed in game development. So bearing that in mind, would you choose XNA or SlimDX? The non-rendering portion of the code is already written in C#, so want to stick with that.
Upvotes: 3
Views: 2020
Reputation: 3754
XNA and SlimDX are very close in nature, but there are some differences:
XNA requires a GPU with a least pixel/vertex shaders 1.1 while I think SlimDX does not.
SlimDX supports DirectX10 and 11, while XNA only supports DirectX 9.
XNA is a cross platform between Windows, Xbox 360, Zune and Windows Phone 7, while SlimDX is not.
XNA has a strong community (creators.xna.com) with tons of tutorials and help materials.
I would go with XNA.
Upvotes: 2
Reputation: 55946
I haven't used SlimDX, but based on my experience with XNA and reading about SlimDX's objective. I'd suggest SlimDX. XNA while it can be used for other things is primarily a Game Engine, not a Rendering Engine. It's got lots of specific optimizations & methodology geared towards Games.
Also, XNA likes to pre-build it's resources into DirectX Files (.x) if you're working with dynamic files, I think SlimDX is the best choice for you.
Upvotes: 5