首页 > 解决方案 > opengl 片段着色器以 16 个字节存储颜色

问题描述

我使用以下标准片段着色器:

#version 330
in vec4 v_color;
out vec4 FragColor;
void main()
{
   FragColor = v_color;
}

使用以下标准顶点着色器

#version 330
uniform mat4   u_view;          // View matrix
uniform mat4   u_projection;    // Projection matrix
in vec4 a_color;
in vec3 a_position;
out vec4 v_color;
void main()
{
    gl_Position = u_projection * u_view * vec4(a_position, 1.0);
    v_color = a_color;
}

我的问题是我使用 16 个字节来表示颜色,这在生成顶点时会在 CPU 中造成一些内存浪费。

我可以将颜色的大小减少到 4 个字节吗?

标签: pythonopenglpyopengl

解决方案


推荐阅读