2015年4月15日 星期三

Week08_02161052_葉采晴

全螢幕的畫面

產生全螢幕

glutFullScreen();   //可以全屏喔!

當滑鼠點擊時
產生射擊的聲音

聲音必須放到資料夾中
這題練習則是放入c槽中
if(state==GLUT_DOWN)
    {
        PlaySound("c:/Shot.wav",NULL,SND_ASYNC);
        printf("Shot!!!\n");
    }




產生茶壺
並且會移動+重複出現

增加了射擊中後
會產生尖叫聲

#include <stdio.h>
#include <GL/glut.h>
#include <mmsystem.h>
float potX=-1,potY=0;
void display()
{
    glClearColor(0.5,0.5,1,0);
    glClear(GL_COLOR_BUFFER_BIT);
    glPushMatrix();
        glTranslatef(potX,potY,0);
        glutSolidTeapot(0.05);
    glPopMatrix();
    glFlush();
    potX+=0.001;
    if(potX>1.1)potX=-1.1;
}
void keyboard(unsigned char key,int x,int y)
{
    exit(0);
}
void mouse(int button,int state,int x,int y)
{
    if(state==GLUT_DOWN)
    {
        PlaySound("c:/Shot.wav",NULL,SND_ASYNC);
        printf("Shot!!!\n");
        float mouseX=2*x/1280.0 -1,mouseY=-(2*y/1024.0 -1);
        if(abs(mouseX-potX)<0.01&&abs(mouseY-potY)<0.01){
            printf("YA!Got it!!\n");
            PlaySound("ahhh.wav",NULL,SND_ASYNC);
        }
    }
}
int main(int argc,char**argv)
{
    glutInit(&argc,argv);
    glutCreateWindow("hello");
    glutFullScreen();   //可以全屏喔!
    glutDisplayFunc(display);
    glutIdleFunc(display);
    glutKeyboardFunc(keyboard);

    glutMouseFunc(mouse);
    glutMainLoop();
}

沒有留言:

張貼留言