Strawberry::Strawberry()
{
Pos.z=35;
Pos.y=15;
Spd.z=0.0;
tagViewable=true;
LayerIndex=0;
PointIndex=0;
LayerNum=20;
PointNum=20;
tagFruit=true;
iFruitId=8;
FruitJuiceColor.Set(0.9f,0.0f,0.0f);
}
void Strawberry::On3dPaint(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam)
{
if(1)
{
glPushMatrix();
glTranslatef(Pos.x,Pos.y,Pos.z);
glRotatef(180,1.0f,0.0f,0.0f);
glRotatef(90,0.0f,1.0f,0.0f);
glRotatef(AngleCircle.x+=0.5*tagAngleCircleDir,0.0f,0.0f,1.0f);
if(0)if(tagCircle)
{
Point fruitBody[50][50]={0};
int iUsed=8;
int jUsed=30;
Point color;color.Set(0.9f,0.8f,0.2f);
if(1)
{
float w=3.9,b=1.1;
float r[50]={w,w+0.5*b,w+1*b,w+1.5*b,w+2*b,w+2*b,w+1.5*b,w+1*b,w+0.5*b,w};
float z[50]={0.01,0.01,0.01,0.01,0,0,0,0};
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//自定义调整
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if(1)for(int i=0;i<iUsed;i++)
{
for(int j=0;j<jUsed;j++)
{
fruitBody[i][j].Set(r[i]*sin(2*PI/(jUsed-1)*j),r[i]*cos(2*PI/(jUsed-1)*j),z[i]);
}
}
//显示物体轮廓面
if(1)
{
/////////////////////////////////////////////////////////////////////////////////
glEnable(GL_TEXTURE_2D);// 启用二维纹理
/////////////////////////////////////////////////////////////////////////////////
glBindTexture(GL_TEXTURE_2D, texStart);
for(int i=0;i<iUsed-1;i++)
{
glBegin(GL_QUAD_STRIP);
for(int j=0;j<jUsed-1;j++)
{
glColor3f(color.x,color.y,color.z);//
if(i==3)glColor3f(color.x+0.05,color.y+0.05,color.z);//
float n=10;
float m=4;
if(j<n)glTexCoord2f(0.0f+(1/m)*(i+0),0.0f+(1/n)*(j+0));
glVertex3f(fruitBody[i][(j+1+jUsed)%jUsed].x,fruitBody[i][(j+1+jUsed)%jUsed].y,fruitBody[i][(j+1+jUsed)%jUsed].z);
glColor3f(color.x,color.y,color.z);//
if(i==2)glColor3f(color.x+0.05,color.y+0.05,color.z);//
if(j<n)glTexCoord2f(0.0f+(1/m)*(i+0),0.0f+(1/n)*(j+1));
glVertex3f(fruitBody[i+0][j+1].x,fruitBody[i][j+1].y,fruitBody[i+0][j+1].z);
if(j<n)glTexCoord2f(0.0f+(1/m)*(i+1),0.0f+(1/n)*(j+0));
glVertex3f(fruitBody[i+1][(j+1+jUsed)%jUsed].x,fruitBody[i+1][(j+1+jUsed)%jUsed].y,fruitBody[i+1][(j+1+jUsed)%jUsed].z);
if(j<n)glTexCoord2f(0.0f+(1/m)*(i+1),0.0f+(1/n)*(j+1));
glVertex3f(fruitBody[i+1][j+1].x,fruitBody[i+1][j+1].y,fruitBody[i+1][j+1].z);
}
glVertex3f(fruitBody[i][0].x,fruitBody[i][0].y,fruitBody[i][0].z);
glVertex3f(fruitBody[i+1][0].x,fruitBody[i+1][0].y,fruitBody[i+1][0].z);
glEnd();
}
/////////////////////////////////////////////////////////////////////////////////
glDisable(GL_TEXTURE_2D);// 禁用二维纹理
/////////////////////////////////////////////////////////////////////////////////
}
}
}
glPopMatrix();
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
glPushMatrix();
glTranslatef(Pos.x,Pos.y,Pos.z);
if(Cameras.ptObject!=this)
{
glRotatef(Angle.x,1.0f,0.0f,0.0f);
glRotatef(Angle.y,0.0f,1.0f,0.0f);
glRotatef(Angle.z,0.0f,0.0f,1.0f);
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//水果主体
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
int iUsed=20;
int jUsed=20;
if(1)
{
Point fruitBody[50][50]={0};
float r[50]={0};
float z[50]={0};
if(1)
{
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//自定义调整
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if(1)for(int i=0;i<iUsed;i++)
{
z[i]=1.3*cos(PI/(iUsed-1)*i);
r[i]=1.3*sin(PI/(iUsed-1)*i);
}
if(1)for(int i=0;i<iUsed;i++)
{
for(int j=0;j<jUsed;j++)
{
fruitBody[i][j].Set(r[i]*sin(2*PI/(jUsed-1)*j),r[i]*cos(2*PI/(jUsed-1)*j),z[i]);
}
}
if(1)for(int i=0;i<iUsed;i++)
{
for(int j=0;j<jUsed;j++)
{
fruitBody[i][j].x*=1;
fruitBody[i][j].y*=0.9;
}
}
if(1)for(int j=0;j<jUsed;j++)
{
if(1)
{
int i=0;
if(0+1){float t=1;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=1.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=1;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.5;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=0.83;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.2;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=0.9;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=1.02;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=1.03;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=1.02;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=1.01;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=0.99;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=0.96;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=0.93;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=0.90;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=0.88;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=0.87;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=0.90;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=0.94;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=1.1;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.0;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=1.1;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.2;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=0.8;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.35;fruitBody[i][j].x+=0.0;i++;}
if(0+1){float t=1;fruitBody[i][j].x*=t*1;fruitBody[i][j].y*=t;fruitBody[i][j].z-=0.38;fruitBody[i][j].x+=0.0;i++;}
}
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//自定义调整
/////////////////////////////////////////////////////////////////////////////////////////////
没有合适的资源?快使用搜索试试~ 我知道了~
水果忍者(C++和OPENGL源码)改进版
共183个文件
png:41个
h:35个
cpp:29个
1星 需积分: 50 38 下载量 27 浏览量
2016-10-23
21:55:58
上传
评论 4
收藏 4.31MB RAR 举报
温馨提示
1、VC6.0编译。 2、加入了游戏声音、背景。 3、完善了游戏流程。 V3.521版本
资源推荐
资源详情
资源评论
收起资源包目录
水果忍者(C++和OPENGL源码)改进版 (183个子文件)
Script.aps 84KB
background.bmp 900KB
home-mask.bmp 343KB
ground.bmp 180KB
sky.bmp 154KB
game-over.bmp 122KB
logo.bmp 114KB
sky2.bmp 101KB
Mango2.bmp 47KB
Watermelon2.bmp 47KB
Kiwifruit.bmp 42KB
Pineapple.bmp 34KB
Pineapple2.bmp 22KB
Start.bmp 20KB
Other.bmp 20KB
Setting.bmp 20KB
Score.bmp 20KB
Banana2.bmp 15KB
!Pineapple.bmp 11KB
Peach2.bmp 10KB
Kiwifruit2.bmp 7KB
Pear2.bmp 6KB
Mine.bmp 5KB
Apple2.bmp 5KB
Kiwifruit1.bmp 2KB
x.bmp 1KB
Kiwifruit - 副本.bmp 1KB
Strawberry2.bmp 1KB
Strawberry.bmp 782B
Strawberry.cpp 19KB
Mine.cpp 16KB
Pineapple.cpp 16KB
Pear.cpp 16KB
Apple.cpp 14KB
Banana.cpp 14KB
Mango.cpp 14KB
Peach.cpp 13KB
Plane.cpp 13KB
WinGL.cpp 13KB
Kiwifruit.cpp 13KB
Watermelon.cpp 11KB
Basic.cpp 8KB
Camera.cpp 6KB
knife.cpp 4KB
Ground.cpp 4KB
Object.cpp 3KB
GamePage.cpp 3KB
Music.cpp 3KB
Layer.cpp 2KB
Game.cpp 2KB
MainPage.cpp 1KB
Vector.cpp 634B
On2dPaint.cpp 581B
On3dPaint.cpp 579B
FruitJuice.cpp 529B
Point.cpp 193B
Library.cpp 176B
Interface.cpp 50B
index.css 2KB
GLU.DLL 309KB
GLUT32.DLL 232KB
GLUT32.DLL 232KB
GLUT.DLL 151KB
WinGL.dsp 15KB
WinGL.dsw 518B
WinGL.exe 680KB
WinGL.exe 680KB
fork.gif 7KB
blank.gif 43B
GL.H 67KB
GLUT.H 27KB
GLU.H 18KB
WGLEXT.H 17KB
GLEXT.H 12KB
GLAUX.H 12KB
Basic.h 2KB
Object.h 1KB
Game.h 1KB
FruitJuice.h 999B
Layer.h 843B
Music.h 731B
Camera.h 676B
resource.h 455B
Watermelon.h 449B
knife.h 336B
Mine.h 313B
Vector.h 277B
GamePage.h 261B
Kiwifruit.h 254B
Strawberry.h 237B
MainPage.h 234B
Pineapple.h 231B
Point.h 229B
Banana.h 211B
Apple.h 207B
Mango.h 207B
Peach.h 205B
Pear.h 201B
Plane.h 187B
Ground.h 185B
共 183 条
- 1
- 2
资源评论
- qq_396839212017-08-10我的没法用,打不开,变量都显示未定义
zhooyu
- 粉丝: 9
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功