public static BlendFactor ToBlend(this W3dShaderDestBlendFunc value, bool alpha) { switch (value) { case W3dShaderDestBlendFunc.Zero: return(BlendFactor.Zero); case W3dShaderDestBlendFunc.One: return(BlendFactor.One); case W3dShaderDestBlendFunc.SrcAlpha: return(BlendFactor.SourceAlpha); case W3dShaderDestBlendFunc.OneMinusSrcAlpha: return(BlendFactor.InverseSourceAlpha); case W3dShaderDestBlendFunc.SrcColor: return(alpha ? BlendFactor.SourceAlpha : BlendFactor.SourceColor); case W3dShaderDestBlendFunc.OneMinusSrcColor: return(alpha ? BlendFactor.InverseSourceAlpha : BlendFactor.InverseSourceColor); default: throw new ArgumentOutOfRangeException(); } }
public static Blend ToBlend(this W3dShaderDestBlendFunc value) { switch (value) { case W3dShaderDestBlendFunc.Zero: return(Blend.Zero); case W3dShaderDestBlendFunc.One: return(Blend.One); case W3dShaderDestBlendFunc.SrcAlpha: return(Blend.SrcAlpha); case W3dShaderDestBlendFunc.OneMinusSrcAlpha: return(Blend.OneMinusSrcAlpha); default: throw new ArgumentOutOfRangeException(); } }