在opengl中附加对象音调另一个

问题描述

我可以操作屏幕向右、向左、向上和向下。这样做时,我的 glTranslate 是 -> glTranslate(x,y,z) 当我按下按钮时相应地改变。但是,我想绘制圆柱体的 3d 锥顶(如火箭形状)。当我这样做时,它们是交织在一起的。这是我如何移动它:

if (keys[VK_UP])                
{
    y -= 0.02f;            
}
if (keys[VK_DOWN])              
{
    y += 0.02f;              
}....

这部分是我绘制形状的地方:

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); 
glLoadIdentity();                                   
glMatrixMode(GL_MODELVIEW);

glTranslatef(x,z);                      

gluLookAt(7,1,-3,//< eye position
0,//< aim position
0,0); //< up direction

圆锥体:

glColor3f(1,0);
glBegin(GL_polyGON);
gluquadricObj* obj1 = gluNewQuadric();

gluCylinder(obj1,1.0,2,30,30);

glEnd();

在圆柱体顶部:

glLoadIdentity();
glTranslatef(x+2,y-0.01,z);// here I tried to move a little,but they still look separated when I move it.                    

gluLookAt(7,0); 
glColor3f(0,0);
glBegin(GL_polyGON);
gluquadricObj* obj = gluNewQuadric();

gluCylinder(obj,3,30);

glEnd();

我该怎么办? (我希望它们在我按下按键时同步移动)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)