C++ opengl 使视野转头移动(站桩看世界)
生活随笔
收集整理的這篇文章主要介紹了
C++ opengl 使视野转头移动(站桩看世界)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
程序運(yùn)行截圖如下:
抬頭低頭上看:
向四周看:
?
關(guān)鍵是放置攝像機(jī),攝像機(jī)相關(guān)博文如下:
https://blog.csdn.net/qq78442761/article/details/81176920
為什么要加單位矩陣原因如下:
https://blog.csdn.net/qq78442761/article/details/81411959
?
重要偽代碼如下:
void MyGLWidget::paintGL() {glLoadIdentity();gluLookAt(0.0, 0.0, 0.0, m_x, m_y, -1.0f, 0.0f, 1.0f, 0.0f);glClearColor(0.0f, 0.0f, 0.0f, 1.0f);glClear(GL_COLOR_BUFFER_BIT);glEnable(GL_TEXTURE_2D);glBindTexture(GL_TEXTURE_2D, m_textures);glBegin(GL_QUADS);glColor4ub(255, 255, 255, 255);glTexCoord2f(0.0f, 0.0f);glVertex3f(-0.5f, -0.5f, -0.5f);glTexCoord2f(1.0f, 0.0f);glVertex3f(0.5f, -0.5f, -0.5f);glTexCoord2f(1.0f, 1.0f);glVertex3f(0.5f, 0.5f, -0.5f);glTexCoord2f(0.0f, 1.0f);glVertex3f(-0.5f, 0.5f, -0.5f);glEnd(); }?
void MyGLWidget::keyPressEvent(QKeyEvent *event) {switch (event->key()) {case Qt::Key_Up:m_y+=0.01;break;case Qt::Key_Left:m_x-=0.01;break;case Qt::Key_Right:m_x+=0.01;break;case Qt::Key_Down:m_y-=0.01;break;default:break;}update();QOpenGLWidget::keyPressEvent(event); }?
總結(jié)
以上是生活随笔為你收集整理的C++ opengl 使视野转头移动(站桩看世界)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Linux工作笔记-两Linux系统互传
- 下一篇: s3c2440移植MQTT