这是我用来在我的程序中绘制矩形的代码:
glBegin(GL_QUADS);
glTexCoord2f(0.0f, maxTexCoordHeight); glVertex2i(pos.x, pos.y + height);
glTexCoord2f(0.0f, 0.0f); glVertex2i(pos.x, pos.y);
glTexCoord2f(maxTexCoordWidth, 0.0f); glVertex2i(pos.x + width, pos.y);
glTexCoord2f(maxTexCoordWidth, maxTexCoordHeight); glVertex2i(pos.x + width, pos.y + height);
glEnd();
它只绘制一个具有指定纹理的简单矩形,例如:
我想问一下是否可以在OpenGL中实现这样的边框效果:
正如您在此图块中看到的那样,只有一个纯蓝色背景,可以单独处理 - 只是自动调整大小的纹理。这可以通过我提供的代码片段轻松实现,但问题在于边框。
如果边框应该是一种颜色,我可以尝试通过GL_LINES
在纹理周围使用来绘制空的、未填充的矩形,但事实并非如此。
此外,如果瓷砖总是具有固定大小,我可以准备一个与之匹配的纹理,但它们必须易于调整大小,而无需更改我用作纹理的位图文件。
因此,如果基本的 OpenGL 函数无法实现,那么实现这种效果的最有效和/或最容易的方法是什么?
编辑:它必须是 2D 的。