我一直在使用 Genome2D 库并想创建一个反转所有颜色的过滤器。阅读 Adobe 文档后,我似乎无法弄清楚 alpha 通道发生了什么,因为 .rgba 似乎甚至不起作用。
此 Genome2D 代码使所有颜色去饱和:
fragmentCode = "dp3 ft0.xyz, ft0.xyz, fc1.xyz";
fragmentConstants = Vector.<Number>([0.299,0.587,0.114,0]);
按照那个例子,我写了这段代码来反转颜色:
fragmentCode = "sub ft0.xyz, fc1.xyz, ft0.xyz"
fragmentConstants = Vector.<Number>([1,1,1,0]);
所有颜色都会反转,但 Alpha 通道在应该完全透明的地方是完全不透明的。我无法弄清楚如何从原始纹理中复制旧的 alpha 值。