Opengl,画一个大广场减缓了比赛

时间:2012-08-08 01:26:11

标签: c++ opengl glsl shader

我一直在制作游戏并遇到了一个非常奇怪的问题。游戏在我的设置上以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 }
};

我使用最简单的着色器:

顶点     #version 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;
}

片段     #version 140

out vec4 vFragColor;

varying vec4 color;

void main(void) 
{
    vFragColor = color;
}

显卡的像素填充率是否太慢?

1 个答案:

答案 0 :(得分:4)

4千FPS意味着渲染帧需要0.25 b <毫秒秒。 3千FPS意味着渲染需要0.33 bb /秒。总差为0.08毫安秒,或80微秒。

我不担心。你的卡不是“太慢”;你对时间差异太敏感了。

相关问题