我正在尝试让我自己的着色器用作 SKSpriteNode 的 SKShader,但我只是不知道正确的方法。我想要的只是一种编写具有自动完成功能的着色器代码并查看着色器而无需等待一些大型程序编译它的方法,但这似乎比我想象的更难。
我已经安装了 GLFW3 和其他一些奇怪的东西,因为大多数教程都建议像这样使用 OpenGL,但它似乎更适合整个 OpenGL,而不仅仅是一种特定类型的着色器。
TL;DR:有谁知道一种快速简单的方法来编写着色器以用作 SpriteKit 中的 SKShaders?
最佳答案
让我们从你的 Sprite 开始
let spaceship = SKSpriteNode(imageNamed: "Spaceship")
SKShader 对象
你需要将它连接到一个SKShader
对象
spaceship.shader = SKShader(fileNamed: "MyShader.fsh")
着色器代码
接下来您可以创建您的 MyShader.fsh
文件并在其中写入片段着色器的逻辑。
在下面的示例中,我将每个像素的 blue
组件设置为 0
void main() {
vec4 color = texture2D(u_texture, v_tex_coord);
color.b = 0.0;
gl_FragColor = color;
}
关于swift - 如何在 XCode 中编写 OpenGL ES 片段着色器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40446863/