(加音樂)
(mouse點一下)
#include <windows.h>
#include <mmsystem.h>
#include <stdio.h>
#include <Gl/glut.h>
float x=-1, y=-1;
float dx=0.01,dy=0.05;
void mouse(int button,int stste, int mousex, int mousey)
{
x = (mousex-400)/400.0;
y = -(mousey-400)/400.0;
}
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
printf("%f %f\n",x,y);
glPushMatrix();
glTranslatef(x,y,0);
glutSolidTeapot(0.1);
glPopMatrix();
x += dx;
y += dy;
dy -=0.00098;
if(y<-1)
{
dy=-dy*0.95;
PlaySound("bounce.wav",NULL,SND_ASYNC);
}
if(x>1)dx=-dx;
if(x<-1)dx=-dx;
glutSwapBuffers();
}
int main()
{
glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);
glutInitWindowSize(800,800);
glutCreateWindow("a");
glutDisplayFunc(display);
glutIdleFunc(display);
glutMouseFunc(mouse);
glutMainLoop();
return 0;
}
#include <windows.h>
#include <mmsystem.h>
#include <stdio.h>
#include <Gl/glut.h>
float x[20], y[20];
float dx[20],dy[20];
int nowTea=0;
void mouse(int button,int stste, int mousex, int mousey)
{
x[nowTea] = (mousex-400)/400.0;
y[nowTea] = -(mousey-400)/400.0;
dx[nowTea] = 0.01;
dy[nowTea] = 0.01;
nowTea++;
if(nowTea>=20) nowTea=0;
}
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
printf("%f %f\n",x,y);
for(int i=0;i<20;i++)
{
glPushMatrix();
glTranslatef(x[i],y[i],0);
glutSolidTeapot(0.1);
glPopMatrix();
x[i] += dx[i];
y[i] += dy[i];
dy[i] -=0.00098;
if(y[i]<-1)
{
dy[i]=-dy[i]*0.95;
PlaySound("bounce.wav",NULL,SND_ASYNC);
}
if(x[i]>1)dx[i]=-dx[i];
if(x[i]<-1)dx[i]=-dx[i];
}
glutSwapBuffers();
}
int main()
{
glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);
glutInitWindowSize(800,800);
glutCreateWindow("a");
glutDisplayFunc(display);
glutIdleFunc(display);
glutMouseFunc(mouse);
glutMainLoop();
return 0;
}





沒有留言:
張貼留言