opengl 简单记忆翻牌游戏 四乘四
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 905 2014-04-12 22:42 简易翻牌游戏all.h
文件 5291 2014-04-23 21:41 简易翻牌游戏ase.h
文件 491 2007-08-03 14:56 简易翻牌游戏lock.h
文件 2342 2014-04-23 21:43 简易翻牌游戏locks.h
文件 221 2007-08-03 14:56 简易翻牌游戏order.h
文件 1920056 2011-06-06 21:12 简易翻牌游戏data est.bmp
文件 1745920 2014-04-23 21:50 简易翻牌游戏Debuggl.bsc
文件 135239 2014-04-23 21:50 简易翻牌游戏Debuggl.exe
文件 255680 2014-04-23 21:50 简易翻牌游戏Debuggl.ilk
文件 102464 2014-04-23 21:50 简易翻牌游戏Debuggl.obj
文件 6090176 2014-04-23 21:43 简易翻牌游戏Debuggl.pch
文件 476160 2014-04-23 21:50 简易翻牌游戏Debuggl.pdb
文件 0 2014-04-23 21:50 简易翻牌游戏Debuggl.sbr
文件 173056 2014-04-23 21:50 简易翻牌游戏Debugvc60.idb
文件 151552 2014-04-23 21:50 简易翻牌游戏Debugvc60.pdb
文件 3482 2014-04-23 21:49 简易翻牌游戏gl.cpp
文件 3428 2014-04-23 21:49 简易翻牌游戏gl.dsp
文件 529 2007-08-02 14:24 简易翻牌游戏gl.dsw
文件 91136 2014-04-23 21:50 简易翻牌游戏gl.ncb
文件 49664 2014-04-23 21:50 简易翻牌游戏gl.opt
文件 998 2014-04-23 21:50 简易翻牌游戏gl.plg
文件 869 2014-04-09 23:21 简易翻牌游戏gl.sln
..A..H. 9216 2014-04-09 23:21 简易翻牌游戏gl.suo
文件 5159 2014-04-09 23:21 简易翻牌游戏gl.vcproj
文件 1427 2014-04-09 23:21 简易翻牌游戏gl.vcproj.5SLWJHCZF6ZKCKP.Administrator.user
文件 1392 2007-08-03 14:48 简易翻牌游戏stick.h
目录 0 2014-04-23 12:37 简易翻牌游戏data
目录 0 2014-04-23 21:50 简易翻牌游戏Debug
目录 0 2014-04-23 21:50 简易翻牌游戏
----------- --------- ---------- ----- ----
............此处省略2个文件信息
#include “afx.h“
#include
#include
#include
#include
#include
#include
#include
#include “base.h“
#include “ball.h“
#include “block.h“
#include “blocks.h“
#include “border.h“
#include “stick.h“
using namespace std;
// 边框参数设置
float Border_Left=-0.8 Border_Right=0.8;
float Border_Bottom=-0.8 Border_Top=0.8;
vector selected; //选中的砖的下标号
int num=0;//选中的块的次数,初始为0;
// 砖块参数设置
int Block_Row=4Block_Col=4; // 行数、列数
float Blocks_Area_Scale=1; // 砖块区占整个游戏区域的比例
// 边框对象
BORDER Border(Border_LeftBorder_RightBorder_TopBorder_Bottom);
// 砖块群对象
BLOCKS Blocks(BorderBlocks_Area_ScaleBlock_RowBlock_Col);
void myDisplay(void);
void myMouse(int buttonint stateint xint y);
void ToString(unsigned int vchar s[]);
int main(int argc char* argv[])
{
selected.clear();
glutInit(&argc argv);
glutInitDisplayMode(GLUT_DOUBLE);
glutInitWindowSize(800 800);
glutInitWindowPosition(100 100);
glutCreateWindow(“记忆翻牌游戏“);
glutDisplayFunc(myDisplay);
glutMouseFunc(myMouse);
glutMainLoop();
return 0;
}
void myDisplay(void)
{ glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
Blocks.Draw();
glutSwapBuffers();
}
void myMouse(int buttonint stateint xint y)
{
if(state==GLUT_DOWN&&button==GLUT_LEFT_BUTTON)
{
glutPostRedisplay();
cout<<1< GLint viewport[4];
GLdouble modelview[16];
GLdouble projection[16];
GLfloat winx winy winz;
GLdouble posx posy posz;
glGetIntegerv(GL_VIEWPORT viewport);
glGetDoublev(GL_MODELVIEW_MATRIX modelview);
glGetDoublev(GL_PROJECTION_MATRIX projection);
winx = x;
winy = viewport[3] - y;
glReadPixels(x int(winy) 11 GL_DEPTH_COMPONENT GL_FLOAT &winz );
gluUnProject( winx winy winz modelview projectionviewport &posx &posy &posz);
int pindex=Blocks.getpblock(posxposy); //获得单击所得的base的下标号
if(pindex==-1) return; //没选中块则返回
if(!Blocks.Exist(pindex))
{
return;
} //如果选中的块是已经被消除了也返回
num++;
if(num==1)
{
selected.push_back(pindex);
Blocks.setsel(pindex); //如果只选中了一个块,则将当前选中的base的颜色显示出来
}
if(num==2) //已经选中了两个
{
int index1=selected.at(0);
if(index1==pindex) //如果两次选中的是同一个块,则恢复该块的selected为false
{
Blocks.setunsel(index1);
selected.clear();
num=0;
}
else
{
if(Blocks.colorsame(index1pindex)) //两个颜色相同
{
Blocks.setbaseEx(index1);
Blocks.setbaseEx(pindex);
num=0;
selected.clear();
}
else
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 905 2014-04-12 22:42 简易翻牌游戏all.h
文件 5291 2014-04-23 21:41 简易翻牌游戏a
文件 491 2007-08-03 14:56 简易翻牌游戏lock.h
文件 2342 2014-04-23 21:43 简易翻牌游戏locks.h
文件 221 2007-08-03 14:56 简易翻牌游戏order.h
文件 1920056 2011-06-06 21:12 简易翻牌游戏data est.bmp
文件 1745920 2014-04-23 21:50 简易翻牌游戏Debuggl.bsc
文件 135239 2014-04-23 21:50 简易翻牌游戏Debuggl.exe
文件 255680 2014-04-23 21:50 简易翻牌游戏Debuggl.ilk
文件 102464 2014-04-23 21:50 简易翻牌游戏Debuggl.obj
文件 6090176 2014-04-23 21:43 简易翻牌游戏Debuggl.pch
文件 476160 2014-04-23 21:50 简易翻牌游戏Debuggl.pdb
文件 0 2014-04-23 21:50 简易翻牌游戏Debuggl.sbr
文件 173056 2014-04-23 21:50 简易翻牌游戏Debugvc60.idb
文件 151552 2014-04-23 21:50 简易翻牌游戏Debugvc60.pdb
文件 3482 2014-04-23 21:49 简易翻牌游戏gl.cpp
文件 3428 2014-04-23 21:49 简易翻牌游戏gl.dsp
文件 529 2007-08-02 14:24 简易翻牌游戏gl.dsw
文件 91136 2014-04-23 21:50 简易翻牌游戏gl.ncb
文件 49664 2014-04-23 21:50 简易翻牌游戏gl.opt
文件 998 2014-04-23 21:50 简易翻牌游戏gl.plg
文件 869 2014-04-09 23:21 简易翻牌游戏gl.sln
..A..H. 9216 2014-04-09 23:21 简易翻牌游戏gl.suo
文件 5159 2014-04-09 23:21 简易翻牌游戏gl.vcproj
文件 1427 2014-04-09 23:21 简易翻牌游戏gl.vcproj.5SLWJHCZF6ZKCKP.Administrator.user
文件 1392 2007-08-03 14:48 简易翻牌游戏stick.h
目录 0 2014-04-23 12:37 简易翻牌游戏data
目录 0 2014-04-23 21:50 简易翻牌游戏Debug
目录 0 2014-04-23 21:50 简易翻牌游戏
----------- --------- ---------- ----- ----
............此处省略2个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)