⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shark.c

📁 C:Documents and SettingsAdministrator桌面VC++多媒体特效制作百例CHAR20Atlantis
💻 C
📖 第 1 页 / 共 3 页
字号:
    glNormal3fv(N050);    glVertex3fv(P050);    glNormal3fv(N051);    glVertex3fv(P051);    glNormal3fv(N069);    glVertex3fv(P069);    glEnd();    glBegin(GL_POLYGON);    glNormal3fv(N051);    glVertex3fv(P051);    glNormal3fv(N002);    glVertex3fv(P002);    glNormal3fv(N069);    glVertex3fv(P069);    glEnd();    glBegin(GL_POLYGON);    glNormal3fv(N050);    glVertex3fv(P050);    glNormal3fv(N069);    glVertex3fv(P069);    glNormal3fv(N002);    glVertex3fv(P002);    glEnd();}voidFish006(void){    glBegin(GL_POLYGON);    glNormal3fv(N066);    glVertex3fv(P066);    glNormal3fv(N016);    glVertex3fv(P016);    glNormal3fv(N026);    glVertex3fv(P026);    glEnd();    glBegin(GL_POLYGON);    glNormal3fv(N015);    glVertex3fv(P015);    glNormal3fv(N066);    glVertex3fv(P066);    glNormal3fv(N025);    glVertex3fv(P025);    glEnd();    glBegin(GL_POLYGON);    glNormal3fv(N025);    glVertex3fv(P025);    glNormal3fv(N066);    glVertex3fv(P066);    glNormal3fv(N026);    glVertex3fv(P026);    glEnd();    glBegin(GL_POLYGON);    glNormal3fv(N066);    glVertex3fv(P066);    glNormal3fv(N058);    glVertex3fv(P058);    glNormal3fv(N016);    glVertex3fv(P016);    glEnd();    glBegin(GL_POLYGON);    glNormal3fv(N015);    glVertex3fv(P015);    glNormal3fv(N058);    glVertex3fv(P058);    glNormal3fv(N066);    glVertex3fv(P066);    glEnd();    glBegin(GL_POLYGON);    glNormal3fv(N058);    glVertex3fv(P058);    glNormal3fv(N015);    glVertex3fv(P015);    glNormal3fv(N016);    glVertex3fv(P016);    glEnd();}voidFish007(void){    glBegin(GL_POLYGON);    glNormal3fv(N062);    glVertex3fv(P062);    glNormal3fv(N022);    glVertex3fv(P022);    glNormal3fv(N032);    glVertex3fv(P032);    glEnd();    glBegin(GL_POLYGON);    glNormal3fv(N062);    glVertex3fv(P062);    glNormal3fv(N032);    glVertex3fv(P032);    glNormal3fv(N064);    glVertex3fv(P064);    glEnd();    glBegin(GL_POLYGON);    glNormal3fv(N022);    glVertex3fv(P022);    glNormal3fv(N062);    glVertex3fv(P062);    glNormal3fv(N032);    glVertex3fv(P032);    glEnd();    glBegin(GL_POLYGON);    glNormal3fv(N062);    glVertex3fv(P062);    glNormal3fv(N064);    glVertex3fv(P064);    glNormal3fv(N032);    glVertex3fv(P032);    glEnd();}voidFish008(void){    glBegin(GL_POLYGON);    glNormal3fv(N063);    glVertex3fv(P063);    glNormal3fv(N019);    glVertex3fv(P019);    glNormal3fv(N029);    glVertex3fv(P029);    glEnd();    glBegin(GL_POLYGON);    glNormal3fv(N019);    glVertex3fv(P019);    glNormal3fv(N063);    glVertex3fv(P063);    glNormal3fv(N029);    glVertex3fv(P029);    glEnd();    glBegin(GL_POLYGON);    glNormal3fv(N063);    glVertex3fv(P063);    glNormal3fv(N029);    glVertex3fv(P029);    glNormal3fv(N065);    glVertex3fv(P065);    glEnd();    glBegin(GL_POLYGON);    glNormal3fv(N063);    glVertex3fv(P063);    glNormal3fv(N065);    glVertex3fv(P065);    glNormal3fv(N029);    glVertex3fv(P029);    glEnd();}voidFish009(void){    glBegin(GL_POLYGON);    glVertex3fv(P059);    glVertex3fv(P012);    glVertex3fv(P009);    glVertex3fv(P060);    glEnd();    glBegin(GL_POLYGON);    glVertex3fv(P012);    glVertex3fv(P004);    glVertex3fv(P007);    glVertex3fv(P009);    glEnd();}voidFish_1(void){    Fish004();    Fish005();    Fish003();    Fish007();    Fish006();    Fish002();    Fish008();    Fish009();    Fish001();}voidFish_2(void){    Fish005();    Fish004();    Fish003();    Fish008();    Fish006();    Fish002();    Fish007();    Fish009();    Fish001();}voidFish_3(void){    Fish005();    Fish004();    Fish007();    Fish003();    Fish002();    Fish008();    Fish009();    Fish001();    Fish006();}voidFish_4(void){    Fish005();    Fish004();    Fish008();    Fish003();    Fish002();    Fish007();    Fish009();    Fish001();    Fish006();}voidFish_5(void){    Fish009();    Fish006();    Fish007();    Fish001();    Fish002();    Fish003();    Fish008();    Fish004();    Fish005();}voidFish_6(void){    Fish009();    Fish006();    Fish008();    Fish001();    Fish002();    Fish007();    Fish003();    Fish004();    Fish005();}voidFish_7(void){    Fish009();    Fish001();    Fish007();    Fish005();    Fish002();    Fish008();    Fish003();    Fish004();    Fish006();}voidFish_8(void){    Fish009();    Fish008();    Fish001();    Fish002();    Fish007();    Fish003();    Fish005();    Fish004();    Fish006();}voidDrawShark(fishRec * fish){    float mat[4][4];    int n;    float seg1, seg2, seg3, seg4, segup;    float thrash, chomp;    fish->htail = (int) (fish->htail - (int) (5.0 * fish->v)) % 360;    thrash = 50.0 * fish->v;    seg1 = 0.6 * thrash * sin(fish->htail * RRAD);    seg2 = 1.8 * thrash * sin((fish->htail + 45.0) * RRAD);    seg3 = 3.0 * thrash * sin((fish->htail + 90.0) * RRAD);    seg4 = 4.0 * thrash * sin((fish->htail + 110.0) * RRAD);    chomp = 0.0;    if (fish->v > 2.0) {        chomp = -(fish->v - 2.0) * 200.0;    }    P004[1] = iP004[1] + chomp;    P007[1] = iP007[1] + chomp;    P010[1] = iP010[1] + chomp;    P011[1] = iP011[1] + chomp;    P023[0] = iP023[0] + seg1;    P024[0] = iP024[0] + seg1;    P025[0] = iP025[0] + seg1;    P026[0] = iP026[0] + seg1;    P027[0] = iP027[0] + seg1;    P028[0] = iP028[0] + seg1;    P029[0] = iP029[0] + seg1;    P030[0] = iP030[0] + seg1;    P031[0] = iP031[0] + seg1;    P032[0] = iP032[0] + seg1;    P033[0] = iP033[0] + seg2;    P034[0] = iP034[0] + seg2;    P035[0] = iP035[0] + seg2;    P036[0] = iP036[0] + seg2;    P037[0] = iP037[0] + seg2;    P038[0] = iP038[0] + seg2;    P039[0] = iP039[0] + seg2;    P040[0] = iP040[0] + seg2;    P041[0] = iP041[0] + seg2;    P042[0] = iP042[0] + seg2;    P043[0] = iP043[0] + seg3;    P044[0] = iP044[0] + seg3;    P045[0] = iP045[0] + seg3;    P046[0] = iP046[0] + seg3;    P047[0] = iP047[0] + seg3;    P048[0] = iP048[0] + seg3;    P049[0] = iP049[0] + seg3;    P050[0] = iP050[0] + seg3;    P051[0] = iP051[0] + seg3;    P052[0] = iP052[0] + seg3;    P002[0] = iP002[0] + seg4;    P061[0] = iP061[0] + seg4;    P069[0] = iP069[0] + seg4;    P070[0] = iP070[0] + seg4;    fish->vtail += ((fish->dtheta - fish->vtail) * 0.1);    if (fish->vtail > 0.5) {        fish->vtail = 0.5;    } else if (fish->vtail < -0.5) {        fish->vtail = -0.5;    }    segup = thrash * fish->vtail;    P023[1] = iP023[1] + segup;    P024[1] = iP024[1] + segup;    P025[1] = iP025[1] + segup;    P026[1] = iP026[1] + segup;    P027[1] = iP027[1] + segup;    P028[1] = iP028[1] + segup;    P029[1] = iP029[1] + segup;    P030[1] = iP030[1] + segup;    P031[1] = iP031[1] + segup;    P032[1] = iP032[1] + segup;    P033[1] = iP033[1] + segup * 5.0;    P034[1] = iP034[1] + segup * 5.0;    P035[1] = iP035[1] + segup * 5.0;    P036[1] = iP036[1] + segup * 5.0;    P037[1] = iP037[1] + segup * 5.0;    P038[1] = iP038[1] + segup * 5.0;    P039[1] = iP039[1] + segup * 5.0;    P040[1] = iP040[1] + segup * 5.0;    P041[1] = iP041[1] + segup * 5.0;    P042[1] = iP042[1] + segup * 5.0;    P043[1] = iP043[1] + segup * 12.0;    P044[1] = iP044[1] + segup * 12.0;    P045[1] = iP045[1] + segup * 12.0;    P046[1] = iP046[1] + segup * 12.0;    P047[1] = iP047[1] + segup * 12.0;    P048[1] = iP048[1] + segup * 12.0;    P049[1] = iP049[1] + segup * 12.0;    P050[1] = iP050[1] + segup * 12.0;    P051[1] = iP051[1] + segup * 12.0;    P052[1] = iP052[1] + segup * 12.0;    P002[1] = iP002[1] + segup * 17.0;    P061[1] = iP061[1] + segup * 17.0;    P069[1] = iP069[1] + segup * 17.0;    P070[1] = iP070[1] + segup * 17.0;    glPushMatrix();    glTranslatef(0.0, 0.0, -3000.0);    glGetFloatv(GL_MODELVIEW_MATRIX, &mat[0][0]);    n = 0;    if (mat[0][2] >= 0.0) {        n += 1;    }    if (mat[1][2] >= 0.0) {        n += 2;    }    if (mat[2][2] >= 0.0) {        n += 4;    }    glScalef(2.0, 1.0, 1.0);    glEnable(GL_CULL_FACE);    switch (n) {    case 0:        Fish_1();        break;    case 1:        Fish_2();        break;    case 2:        Fish_3();        break;    case 3:        Fish_4();        break;    case 4:        Fish_5();        break;    case 5:        Fish_6();        break;    case 6:        Fish_7();        break;    case 7:        Fish_8();        break;    }    glDisable(GL_CULL_FACE);    glPopMatrix();}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -