mono/MonoGame — pull request #1349 by tomspilman (2013-02-11 04:50:03+00:00)
Title: Fix BlendState Exception From SharpDX

This fixes the issue addressed in this comment...

https://github.com/mono/MonoGame/issues/1166#issuecomment-13362051

The core issue is that you cannot pass color blend enum values to alpha blend state. So for example this is technically illegal:

```
var state = new BlendState();
state.AlphaSourceBlend = Blend.SourceColor;
```

MS XNA doesn't care... it seems to do the translation for the user under the hood to keep DirectX happy.

This isn't a problem on OpenGL either because we do not support separate alpha blending on that platform.

MonoGame under DirectX wasn't doing the translation causing exceptions to be thrown by SharpDX.

I also fixed MGFX processing to do the same correct translation when building the shader render states.