Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java2D库-Sprite颜色键支持_Java_Opengl_Graphics_2d_Color Key - Fatal编程技术网

Java2D库-Sprite颜色键支持

Java2D库-Sprite颜色键支持,java,opengl,graphics,2d,color-key,Java,Opengl,Graphics,2d,Color Key,我正在用box2d和opengl构建一个2d游戏 事实证明,opengl不支持颜色键控(删除精灵的背景色)。这显然是荒谬的,任何半体面的2d库都应该支持这一点 我愿意放弃opengl,但到目前为止我还找不到其他图形库。有pygame功能的东西就足够了 有什么建议吗?如果您使用着色器,它会非常简单。如果不是,我想你得另找一个图书馆 我建议您使用着色器,如果片段的颜色是背景色(这在fragmentshader中),则删除背景的方法是丢弃片段。互联网上有很多关于着色器的教程,这是当今的发展方向。如果它

我正在用box2d和opengl构建一个2d游戏

事实证明,opengl不支持颜色键控(删除精灵的背景色)。这显然是荒谬的,任何半体面的2d库都应该支持这一点

我愿意放弃opengl,但到目前为止我还找不到其他图形库。有pygame功能的东西就足够了


有什么建议吗?

如果您使用着色器,它会非常简单。如果不是,我想你得另找一个图书馆


我建议您使用着色器,如果片段的颜色是背景色(这在fragmentshader中),则删除背景的方法是丢弃片段。互联网上有很多关于着色器的教程,这是当今的发展方向。

如果它不会降低性能,那么我可以使用此解决方案。你能解释一下那个教程吗?我知道着色器是独立的程序,我是否必须导入JAR文件才能识别调用?着色器以字符串形式写入(或从文本文件加载),然后opengl编译并发送到graphicscard。我不知道box2d,也不知道您在OpenGL中做了多少工作,但是如果您想学习编写着色器(这并不难),那么web上有一些教程可以教您如何编写着色器。顺便说一下,着色器在性能方面非常快,因为它们是并行执行的。