我尝试为 Starling 制作一个着色器,它将反转 Starling sprite 的 alpha(一种蒙版):
var fragmentProgramCode:String =
// Get texture
"tex ft1, v0, fs0 <2d,linear,nomip>" + "\n" +
// make 1 - pixel alpha
"sub ft1.w, fc0, ft1.w" + "\n" +
// Send result
"mov oc, ft1"
此代码适用于 fc0 = 1,但我真的不明白为什么,因为当我使用 fc0 并将其放入 0.5 时,没有区别。我哪里错了?如何正确执行 1 像素 alpha ?