Пример #1
0
        public LogicOp          Operation; // Seems to be logic operators such as clear, and, copy, equiv, inv, invand, etc.

        public BlendMode(Enums.BlendMode type, BlendModeControl src, BlendModeControl dest, LogicOp operation)
        {
            Type            = type;
            SourceFact      = src;
            DestinationFact = dest;
            Operation       = operation;
        }
Пример #2
0
 public BlendMode(EndianBinaryReader reader)
 {
     Type            = (Enums.BlendMode)reader.ReadByte();
     SourceFact      = (BlendModeControl)reader.ReadByte();
     DestinationFact = (BlendModeControl)reader.ReadByte();
     Operation       = (LogicOp)reader.ReadByte();
 }
Пример #3
0
        public static BlendingFactor GetBlendFactorSrc(BlendModeControl sourceFactor)
        {
            switch (sourceFactor)
            {
            case BlendModeControl.Zero: return(BlendingFactor.Zero);

            case BlendModeControl.One: return(BlendingFactor.One);

            case BlendModeControl.SrcColor: return(BlendingFactor.SrcColor);

            case BlendModeControl.InverseSrcColor: return(BlendingFactor.OneMinusSrcColor);

            case BlendModeControl.SrcAlpha: return(BlendingFactor.SrcAlpha);

            case BlendModeControl.InverseSrcAlpha: return(BlendingFactor.OneMinusSrcAlpha);

            case BlendModeControl.DstAlpha: return(BlendingFactor.DstAlpha);

            case BlendModeControl.InverseDstAlpha: return(BlendingFactor.OneMinusDstAlpha);

            default:
                Console.WriteLine("Unsupported GXBlendModeControl: \"{0}\" in GetOpenGLBlendSrc!", sourceFactor);
                return(BlendingFactor.SrcAlpha);
            }
        }