#include <gl/glut.h>
static int year=0,day=0;
void init()
{
glClearColor(0.0f,0.0f,0.0f,0.0f);
glShadeModel(GL_FLAT);
}
void display()
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0f,1.0f,1.0f);
glPushMatrix();
glutWireSphere(1.0,20,16);
glRotatef((GLfloat)year,0.0,1.0,0.0);
glTranslatef(2.0,0.0,0.0);
glRotatef((GLfloat)day,0.0,1.0,0.0);
glutWireSphere(0.2,10,8);
glTranslatef(1.0,0.0,0.0);
glRotatef((GLfloat)day,0.0,2.0,0.0);//此处添加了一个行星
glutWireSphere(0.2,10,8);
glPopMatrix();
glutSwapBuffers();
}
void reshape(int w,int h)
{
glViewport(0,0,(GLsizei)w,(GLsizei)h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(60.0,(GLfloat)w/(GLfloat)h,1.0,20.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0.0,0.0,5.0,0.0,0.0,0.0,0.0,5.0,0.0);
}
void keyboard(unsigned char key,int x,int y)
{
switch(key)
{
case 'd':
day=(day+10)%360;
glutPostR
opengl 行星系统
最新推荐文章于 2023-02-19 15:20:51 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)