我一直在做一个游戏,遇到了一个非常奇怪的问题。游戏在我的设置中以大约 4k fps 的速度渲染,但在绘制了一个覆盖整个屏幕的彩色正方形 + 稍微多一点作为背景之后,它会下降到 3k fps。将正方形的大小更改为较小的可以使问题消失。
我已经画了 40k 个三角形和粒子系统。
正方形是加载在 VBO 中的三角形条带。
GLfloat vBackground[4][3] = {
{ 0.0f, 0.0f, 0.0f },
{ 16.0f, 0.0f, 0.0f },
{ 0.0f, 16.0f, 0.0f },
{ 16.0f, 16.0f, 0.0f }
};
我使用最简单的着色器:
顶点#版本 140
#extension GL_ARB_explicit_attrib_location : enable
layout (location = 0) in vec4 vVertex;
uniform mat4 mvpMatrix;
uniform vec4 inColor;
varying vec4 color;
void main(void)
{
color = inColor;
gl_Position = mvpMatrix * vVertex;
}
片段#版本 140
out vec4 vFragColor;
varying vec4 color;
void main(void)
{
vFragColor = color;
}
显卡的像素填充率是不是太慢了?