91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2021-06-15
  • 語言: 其他
  • 標簽: opengl交互??

資源簡介

我是一個初學者,可能有的地方考慮不周到,但是我覺得還是可以放出來大家一起交流交流,在鍵盤控制的時候,方向鍵不能和+ - 響應,所以我用的glut的函數來寫的~不知道是不能響應還是怎么~初學者還需要學習~

資源截圖

代碼片段和文件信息

#include?
#include
#include


static?GLfloat?x?=?0.0f;
static?GLfloat?z?=?0.0f;
static?GLfloat?y?=?0.0f;
static?GLfloat?tx?=?1.0f;
static?GLfloat?ty?=?1.0f;
static?GLfloat?tz?=?1.0f;
static?GLfloat??oldmy?oldmx;
static?GLfloat?deltax?deltay;

void?display(void)
{
glClear(GL_COLOR_BUFFER_BIT?|?GL_DEPTH_BUFFER_BIT);
glPushMatrix();
glRotatef(deltax?0.0?1.0?0.0);
glRotatef(deltay?1.0?0.0?0.0);
glTranslatef(x?y?z);
glScalef(tx?ty?tz);

glBegin(GL_TRIANGLES);
//?第1個三角形?前面
glColor3f(1.0f?0.0f?0.0f);
glVertex3f(0.0f?1.0f?0.0f);
glColor3f(0.0f?1.0f?0.0f);
glVertex3f(-1.0f?-1.0f?1.0f);
glColor3f(0.0f?0.0f?1.0f);
glVertex3f(1.0f?-1.0f?1.0f);

//?第2個三角形?左面
glColor3f(1.0f?0.0f?0.0f);
glVertex3f(0.0f?1.0f?0.0f);
glColor3f(0.0f?1.0f?0.0f);
glVertex3f(-1.0f?-1.0f?-1.0f);
glColor3f(0.0f?0.0f?1.0f);
glVertex3f(-1.0f?-1.0f?1.0f);

//?第3個三角形?右邊????
glColor3f(1.0f?0.0f?0.0f);
glVertex3f(0.0f?1.0f?0.0f);
glColor3f(0.0f?1.0f?0.0f);
glVertex3f(1.0f?-1.0f?1.0f);
glColor3f(0.0f?0.0f?1.0f);
glVertex3f(1.0f?-1.0f?-1.0f);

//?第4個三角形?后邊????
glColor3f(1.0f?0.0f?0.0f);
glVertex3f(0.0f?1.0f?0.0f);
glColor3f(0.0f?1.0f?0.0f);
glVertex3f(1.0f?-1.0f?-1.0f);
glColor3f(0.0f?0.0f?1.0f);
glVertex3f(-1.0f?-1.0f?-1.0f);
glEnd();

glBegin(GL_QUADS);//底面
glColor3f(0.5f?0.5f?0.5f);
glVertex3f(1.0f?-1.0f?1.0f);
glColor3f(0.5f?0.5f?0.5f);
glVertex3f(1.0f?-1.0f?-1.0f);
glColor3f(0.5f?0.5f?0.5f);
glVertex3f(-1.0f?-1.0f?-1.0f);
glColor3f(0.5f?0.5f?0.5f);
glVertex3f(-1.0f?-1.0f?1.0f);
glEnd();

glPopMatrix();
glutSwapBuffers();
}
void?Mouse(int?button?int?state?int?x?int?y)?//處理鼠標點擊??
{
if?(state?==?GLUT_DOWN)?//第一次鼠標按下時記錄鼠標在窗口中的初始坐標??
oldmx?=?x?oldmy?=?y;
}
void?onmousemove(int?x?int?y)?//處理鼠標拖動??
{
deltax?+=?360?*?(x?-?oldmx)?/?600;
deltay?+=?360?*?(y?-?oldmy)?/?600;
oldmx?=?x;
oldmy?=?y;
}


void?SpecialKeys(int?key?int?rx?int?ry)
{
if?(key?==?GLUT_KEY_UP)
y?+=?0.1f;

if?(key?==?GLUT_KEY_DOWN)
y?-=?0.1f;

if?(key?==?GLUT_KEY_LEFT)
x?-=?0.1f;

if?(key?==?GLUT_KEY_RIGHT)
x?+=?0.1f;
glutPostRedisplay();

}

void?keyboard(unsigned?char?key?int?m_x?int?m_y)
{
switch?(key)?{
case?‘+‘:
tx?=?tx?*?1.1;
ty?=?ty?*?1.1;
tz?=?tz?*?1.1;
glutPostRedisplay();
break;
case?‘-‘:
tx?=?tx?/?1.1;
ty?=?ty?/?1.1;
tz?=?tz?/?1.1;
glutPostRedisplay();
break;
}
}
void?init()
{
glEnable(GL_DEPTH_TEST);
}
void?reshape(int?w?int?h)
{
glViewport(0?0?w?h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-2?2?-2?2?-10?10);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
}
int?main(int?argc?char?*argv[])
{
glutInit(&argc?argv);
glutInitDisplayMode(GLUT_RGB?|?GLUT_DOUBLE?|?GLUT_DEPTH);
glutInitWindowPosition(300?100);
glutInitWindowSize(600?600);
glutCreateWindow(“

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????3397??2020-06-10?19:27??opengl鼠標旋轉,鍵盤縮放和平移.cpp

評論

共有 條評論

相關資源