java - lwjgl 为屏幕上的所有项目着色

标签 java colors lwjgl

我有几个四边形已成功显示在屏幕上,但是当我尝试设置其中一个四边形的颜色时,它会设置所有四边形的颜色。

GL11.glColor3f(red,green,blue);


    xh = getXsize() / 2;
    yh = getYsize() / 2;
    GL11.glPushMatrix();
    GL11.glTranslated(x, y, 0);
    GL11.glTranslatef(10.0f, 10.5f, -0.0f); 
    GL11.glRotated(rotate, 0.0f, 0.0f, -1.0f); 
    GL11.glTranslatef(-10.0f, -10.5f, 0.0f);
    GL11.glTranslated(-x, -y, 0);
    GL11.glBegin(GL11.GL_QUADS);
    GL11.glVertex2d(x - xh, y - yh);
    GL11.glVertex2d(x - xh, y + yh);
    GL11.glVertex2d(x + xh, y + yh);
    GL11.glVertex2d(x + xh, y - yh);
    GL11.glEnd();
    GL11.glPopMatrix();

最佳答案

据我所知,您发布的代码中仅绘制了一个四边形。无论如何,当您调用 GL11.glColor3f(red,green,blue) 时,它将应用于调用它后绘制的所有后续四边形。基本上,如果您想要不同的颜色四边形,则每次在绘制新四边形之前都需要调用具有不同值的函数。

您应该查看以下内容 this资源(不是 JWJGL,而是 OpenGL)在名为:指定颜色和着色模型的部分中,它更好地解释了如何将颜色应用于简单的形状。

关于java - lwjgl 为屏幕上的所有项目着色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13324533/

相关文章:

java - WebDriver等待,不同的等待条件

c# - 实现 ToArgb()

vim - 覆盖颜色方案

java - LWJGL glTranslate 做奇怪的事情

java - 当用户退出微调器时调用哪个事件

java - FFT 音频的多峰值轮询

java - 从 docroot 重定向到 glassfish 中的外部 url

colors - openpyxl 在同一个单元格中更改一个单词的颜色

java - LWJGL透明度

java - OpenGL 第一人称相机位置问题