optimizations: 50% time for no blending, 85% time for blending. requires compile time channel setting.