func NewSourceOver(context *gl.Context) (*SourceOver, error) {
	command, err := newBlendCommand(context, gl.BlendFactors{
		SrcFactor: gl.One,
		DstFactor: gl.OneMinusSrcAlpha,
	})
	if err != nil {
		return nil, err
	}
	return &SourceOver{source: &Source{command: command}}, nil
}
NewSourceOver creates a new blending tool which blends together source and target
taking into account alpha channel of both. Source-over means that source will be
painted on top of the target.
package glblend
import (
	"github.com/jacekolszak/pixiq/gl"
	"github.com/jacekolszak/pixiq/image"
)
func NewSource(context *gl.Context) (*Source, error) {
	command, err := newBlendCommand(context, gl.SourceBlendFactors)
	if err != nil {
		return nil, err
	}
	return &Source{command: command}, nil
}