Enable HLSL, DirectX and graphics development toolset for the C# language.
Visual Studio only provides hlsl compilation tools for C++ projects, while C# projects which also use hlsl are left without this facility. This is a glaring inconsistency in the tools provided to each language. C# is meant to be a first-class language yet the DirectX tools which are built in to Visual Studio are not equally provided to C#, this is an unnecessary and arbitrary limitation.
Developing DirectX applications with C# is becoming easier and there are now more tools than ever to work with this combination of technologies, including SlimDX and SharpDX, both fully capable managed DirectX frameworks (wrappers). Please provide C# developers with hlsl compilation, and for that matter, all the DirectX and graphics related tools that are provided to C++ developers, including the shader designer and the model editor. These features are equally usable by C#/DirectX developers as for C++/DirectX developers.
vote, also it is possible at the moment by modifying the existing build targets. See http://sharpdx.org/forum/4-general/3446-vs-2013-automatically-compile-shaders-on-build#4135
The history around managed DirectX is basically a graveyard. First we were promised VB support via type libraries and documentation, but it was abandoned in the next release. Then C# support via Managed DirectX - which was abandoned due to a lack of support for the developer working on it. Next was XNA, which was never well thought out and was killed when the larger game developers complained about Windows Phone.
It's aggravating and makes me extremely bitter towards Microsoft. The real irony here is that a large number of the great indie games on Windows 8 (basically some of the only games on that platform) are written using open source copies of XNA.
Although my ideal scenario would be full and official long term support for DirectX in .NET, a more realistic option would be to convert DirectX to a WinRT library that's part of the Windows platform going forward. That way there's no performance hit to C++ apps, but .NET applications get the full version without any risk of it being "canned' 2-3 years later which has historically been the norm.
Windows is getting beat up by iOS - for the first time in my life Windows is now the "have not" platform. Requiring all game developers to use C++ is a dead end for the smaller publishers that have been flocking to alternate platforms. Unity support is nice, but doesn't allow the full range of possibilities that would be opened up with DX WinRT.
Gavin Williams commented
At least for HLSL compilation, the workaround I'm using as suggested by Jason Zink is to have an empty C++ project in my solution which gives me access to the hlsl compiler. I can then compile my shaders and output the cso files into my c# directories. But it just seems silly when the hlsl compiler could be exposed to C#.