假设是一个正六边形的填充
void glMain()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(0.0f, 0.0f, -3.0f);
glColor3f(0.0f, 0.0f, 0.0f);
/* 绘制一个指定图案填充的矩形 */
//启用图案填充
glEnable (GL_POLYGON_STIPPLE);
//指定使用哪种图案
glPolygonStipple (aoyun);
glBegin(GL_POLYGON); //六边形
glVertex3f(1.0, 0.0, 0.0);
glVertex3f(0.5, 0.866, 0.0);
glVertex3f(-0.5, 0.866, 0.0);
glVertex3f(-1.0, 0.0, 0.0);
glVertex3f(-0.5, -0.866, 0.0);
glVertex3f(0.5, -0.866, 0.0);
glEnd();
SwapBuffers(g_hDC);
}
你这里有两个问题
一是重复
这个可以通过纹理映射的参数来解决
二是透明
这个可以通过alpha混合来解决
关于纹理重复你可以查看gltexparameteri函数的相关说明
透明参看glalphafunc
Photoshop|
Dreamweaver|
SVG|
WebGL|
Visual Studio|
PowerDesigner|
Eclipse|
Git|
Apache Ant|
Atom|
Composer|
CodeSmith|
Flex|
Gradle|
Maven|
Sublime Text3|
SVN|
Tableau|
Vim|
Chrome开发者工具|
OpenGL|
Unity|
Direct3D|
用户登录
还没有账号?立即注册
用户注册
投稿取消
文章分类: |
|
还能输入300字
上传中....