我正在使用GL 2.0(为了显示不是2的幂的图片),我试图简单地渲染一个网格(显示一些三角形)。
使用GL 1.0时,我没有任何问题,但现在,我必须将ShaderProgram对象作为参数传递。
如何让它像GL 1.0一样工作?
我应该制作一个什么都不做的着色器?
答案 0 :(得分:1)
您必须使用顶点着色器将世界空间坐标转换为屏幕空间坐标。您需要一个像素着色器来查找四边形的每个渲染像素的纹理坐标。
查看Libgdx uses for its SpriteBatch
的着色器,它们是非常小的纹理 - 四边形着色器。您可以使用SpriteBatch.createDefaultShader()
来获取它们,或者只是将它们用作自己着色器的灵感。
答案 1 :(得分:0)
着色器上的libgdx wiki页面已经包含一个简单着色器的示例代码:
https://github.com/libgdx/libgdx/wiki/Shaders
我认为它与createDefaultShader()
基本相同,与P.T。的答案相同......
希望它有所帮助...