游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1414|回复: 2

求助:小地图的问题

[复制链接]

1

主题

2

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2006-6-19 02:19:00 | 显示全部楼层 |阅读模式
为了完成一个实验匆忙学的OpenGL, 现在就是按照例子依葫芦画瓢做了个房间,在墙壁、地面、天花板纹理贴图。然后可以用上下键前进、左右键旋转、Page Down Up 绕x轴转。

现在的问题是我想在左下角加个小地图,在纹理贴图

        glBindTexture(GL_TEXTURE_2D, texture[1]);
       
        for (loop_m = 36; loop_m < numtriangles; loop_m++)                //画墙壁
        {
                glBegin(GL_TRIANGLES);
                        glNormal3f( 0.0f, 0.0f, 1.0f);
                        x_m = sector1.triangle[loop_m].vertex[0].x;
                        y_m = sector1.triangle[loop_m].vertex[0].y;
                        z_m = sector1.triangle[loop_m].vertex[0].z;
                        u_m = sector1.triangle[loop_m].vertex[0].u;
                        v_m = sector1.triangle[loop_m].vertex[0].v;
                        glTexCoord2f(u_m,v_m); glVertex3f(x_m,y_m,z_m);
                       
                        x_m = sector1.triangle[loop_m].vertex[1].x;
                        y_m = sector1.triangle[loop_m].vertex[1].y;
                        z_m = sector1.triangle[loop_m].vertex[1].z;
                        u_m = sector1.triangle[loop_m].vertex[1].u;
                        v_m = sector1.triangle[loop_m].vertex[1].v;
                        glTexCoord2f(u_m,v_m); glVertex3f(x_m,y_m,z_m);
                       
                        x_m = sector1.triangle[loop_m].vertex[2].x;
                        y_m = sector1.triangle[loop_m].vertex[2].y;
                        z_m = sector1.triangle[loop_m].vertex[2].z;
                        u_m = sector1.triangle[loop_m].vertex[2].u;
                        v_m = sector1.triangle[loop_m].vertex[2].v;
                        glTexCoord2f(u_m,v_m); glVertex3f(x_m,y_m,z_m);
                glEnd();
        }

后面加上


        glDisable(GL_TEXTURE_2D);
        glLoadIdentity();
        glColor3f(1.0f,0.0f,0.0f);
        glBegin(GL_QUADS);                                       
                glVertex3f(-0.1f, 0.1f, 0.0f);                       
                glVertex3f( 0.1f, 0.1f, 0.0f);                       
                glVertex3f( 0.1f,-0.1f, 0.0f);                       
                glVertex3f(-0.1f,-0.1f, 0.0f);                                // Bottom Left
        glEnd();               
        glEnable(GL_TEXTURE_2D);

想画个矩形先,但是边长控制成0.2f还是整个屏幕都涂红了,这是怎么回事呀?
      [em24]

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
发表于 2006-6-19 12:54:00 | 显示全部楼层

Re:求助:小地图的问题

glColor3f(1.0f,0.0f,0.0f);//红色

glVertex3f(-0.1f, 0.1f, 0.0f);
glVertex3f( 0.1f, 0.1f, 0.0f);
glVertex3f( 0.1f,-0.1f, 0.0f);
glVertex3f(-0.1f,-0.1f, 0.0f); // Z坐标为0,

全屏红,不是很正常吗?

1

主题

2

帖子

8

积分

新手上路

Rank: 1

积分
8
 楼主| 发表于 2006-6-19 18:39:00 | 显示全部楼层

Re:求助:小地图的问题

是这样的?
z坐标为0,但xy平面上只是一个宽度为0.2f 的矩形呀,怎么会全屏红的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-24 19:19

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表