在shaperenderer矩形上的Libgdx着色器
问题描述:
我想在shaperenderer中绘制一个2d矩形。那没问题。但是我想在这个矩形上创建一个自定义着色器。在shaperenderer矩形上的Libgdx着色器
所以我不需要纹理,我只想要一个自定义着色器的矩形。可能吗?怎么样?
我的矩形现在是一个渐变。我想在这个渐变中绘制我的着色器...
答
ShapeRenderer
类有一个构造函数,如果您不想使用默认值,您可以在其中传入自己的ShaderProgram
。但是,当您使用SpriteBatch
呈现您的东西时,您无法像使用ShaderProgram
那样快速设置。
查看ShapeRenderer
和ImmediateModeRenderer20
类的来源,了解如何应用默认着色器。然后根据您的需求调整ShapeRenderer
的实例并调整ShaderProgram
。
+0
在代码潜水时可以看到:没有构造函数用于只有ShaderProgram参数的ShapeRenderer。默认的顶点数量是5000,所以当创建一个shaperenderer传递5000和着色器作为参数。 – Zoe
你是什么意思着色器?透明度,色调,亮度? –
我想操纵我的自定义片段着色器的渐变。使用着色器在渐变的顶部绘制六边形。像FBO一样,但没有FBO。仅适用于ShapeRenderer和ShaderProgram,带有矩形渐变;) – lacas