public void setBlendFunction(Mini2DxBlendFunction srcFunc, Mini2DxBlendFunction dstFunc) { _srcFunction = srcFunc; _dstFunction = dstFunc; updateBlending(); endRendering(); }
public static BlendState convertBlending(Mini2DxBlendFunction srcFunction, Mini2DxBlendFunction dstFunction) { var convertedBlendState = new BlendState(); if (srcFunction == Mini2DxBlendFunction.ZERO) { convertedBlendState.AlphaSourceBlend = Blend.Zero; convertedBlendState.ColorSourceBlend = Blend.Zero; } else if (srcFunction == Mini2DxBlendFunction.ONE) { convertedBlendState.AlphaSourceBlend = Blend.One; convertedBlendState.ColorSourceBlend = Blend.One; } else if (srcFunction == Mini2DxBlendFunction.SRC_COLOR) { convertedBlendState.AlphaSourceBlend = Blend.SourceColor; convertedBlendState.ColorSourceBlend = Blend.SourceColor; } else if (srcFunction == Mini2DxBlendFunction.ONE_MINUS_SRC_COLOR) { convertedBlendState.AlphaSourceBlend = Blend.InverseSourceColor; convertedBlendState.ColorSourceBlend = Blend.InverseSourceColor; } else if (srcFunction == Mini2DxBlendFunction.DST_COLOR) { convertedBlendState.AlphaSourceBlend = Blend.DestinationColor; convertedBlendState.ColorSourceBlend = Blend.DestinationColor; } else if (srcFunction == Mini2DxBlendFunction.ONE_MINUS_DST_COLOR) { convertedBlendState.AlphaSourceBlend = Blend.InverseDestinationColor; convertedBlendState.ColorSourceBlend = Blend.InverseDestinationColor; } else if (srcFunction == Mini2DxBlendFunction.SRC_ALPHA) { convertedBlendState.AlphaSourceBlend = Blend.SourceAlpha; convertedBlendState.ColorSourceBlend = Blend.SourceAlpha; } else if (srcFunction == Mini2DxBlendFunction.ONE_MINUS_SRC_ALPHA) { convertedBlendState.AlphaSourceBlend = Blend.InverseSourceAlpha; convertedBlendState.ColorSourceBlend = Blend.InverseSourceAlpha; } else if (srcFunction == Mini2DxBlendFunction.DST_ALPHA) { convertedBlendState.AlphaSourceBlend = Blend.DestinationAlpha; convertedBlendState.ColorSourceBlend = Blend.DestinationAlpha; } else if (srcFunction == Mini2DxBlendFunction.ONE_MINUS_DST_ALPHA) { convertedBlendState.AlphaSourceBlend = Blend.InverseDestinationAlpha; convertedBlendState.ColorSourceBlend = Blend.InverseDestinationAlpha; } else if (srcFunction == Mini2DxBlendFunction.SRC_ALPHA_SATURATE) { convertedBlendState.AlphaSourceBlend = Blend.SourceAlphaSaturation; convertedBlendState.ColorSourceBlend = Blend.SourceAlphaSaturation; } if (dstFunction == Mini2DxBlendFunction.ZERO) { convertedBlendState.AlphaDestinationBlend = Blend.Zero; convertedBlendState.ColorDestinationBlend = Blend.Zero; } else if (dstFunction == Mini2DxBlendFunction.ONE) { convertedBlendState.AlphaDestinationBlend = Blend.One; convertedBlendState.ColorDestinationBlend = Blend.One; } else if (dstFunction == Mini2DxBlendFunction.SRC_COLOR) { convertedBlendState.AlphaDestinationBlend = Blend.SourceColor; convertedBlendState.ColorDestinationBlend = Blend.SourceColor; } else if (dstFunction == Mini2DxBlendFunction.ONE_MINUS_SRC_COLOR) { convertedBlendState.AlphaDestinationBlend = Blend.InverseSourceColor; convertedBlendState.ColorDestinationBlend = Blend.InverseSourceColor; } else if (dstFunction == Mini2DxBlendFunction.DST_COLOR) { convertedBlendState.AlphaDestinationBlend = Blend.DestinationColor; convertedBlendState.ColorDestinationBlend = Blend.DestinationColor; } else if (dstFunction == Mini2DxBlendFunction.ONE_MINUS_DST_COLOR) { convertedBlendState.AlphaDestinationBlend = Blend.InverseDestinationColor; convertedBlendState.ColorDestinationBlend = Blend.InverseDestinationColor; } else if (dstFunction == Mini2DxBlendFunction.SRC_ALPHA) { convertedBlendState.AlphaDestinationBlend = Blend.SourceAlpha; convertedBlendState.ColorDestinationBlend = Blend.SourceAlpha; } else if (dstFunction == Mini2DxBlendFunction.ONE_MINUS_SRC_ALPHA) { convertedBlendState.AlphaDestinationBlend = Blend.InverseSourceAlpha; convertedBlendState.ColorDestinationBlend = Blend.InverseSourceAlpha; } else if (dstFunction == Mini2DxBlendFunction.DST_ALPHA) { convertedBlendState.AlphaDestinationBlend = Blend.DestinationAlpha; convertedBlendState.ColorDestinationBlend = Blend.DestinationAlpha; } else if (dstFunction == Mini2DxBlendFunction.ONE_MINUS_DST_ALPHA) { convertedBlendState.AlphaDestinationBlend = Blend.InverseDestinationAlpha; convertedBlendState.ColorDestinationBlend = Blend.InverseDestinationAlpha; } else if (dstFunction == Mini2DxBlendFunction.SRC_ALPHA_SATURATE) { convertedBlendState.AlphaDestinationBlend = Blend.SourceAlphaSaturation; convertedBlendState.ColorDestinationBlend = Blend.SourceAlphaSaturation; } return(convertedBlendState); }