资源简介
opengl 简单记忆翻牌游戏 四乘四

代码片段和文件信息
#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 简易翻牌游戏\ball.h
文件 5291 2014-04-23 21:41 简易翻牌游戏\ba
文件 491 2007-08-03 14:56 简易翻牌游戏\block.h
文件 2342 2014-04-23 21:43 简易翻牌游戏\blocks.h
文件 221 2007-08-03 14:56 简易翻牌游戏\border.h
文件 1920056 2011-06-06 21:12 简易翻牌游戏\data\test.bmp
文件 1745920 2014-04-23 21:50 简易翻牌游戏\Debug\gl.bsc
文件 135239 2014-04-23 21:50 简易翻牌游戏\Debug\gl.exe
文件 255680 2014-04-23 21:50 简易翻牌游戏\Debug\gl.ilk
文件 102464 2014-04-23 21:50 简易翻牌游戏\Debug\gl.obj
文件 6090176 2014-04-23 21:43 简易翻牌游戏\Debug\gl.pch
文件 476160 2014-04-23 21:50 简易翻牌游戏\Debug\gl.pdb
文件 0 2014-04-23 21:50 简易翻牌游戏\Debug\gl.sbr
文件 173056 2014-04-23 21:50 简易翻牌游戏\Debug\vc60.idb
文件 151552 2014-04-23 21:50 简易翻牌游戏\Debug\vc60.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个文件信息
- 上一篇:校园新闻发布管理系统
- 下一篇:HFSS中文教程_微波仿真论坛
相关资源
- OpenGL参考手册
- Qt Creator opengl实现四元数鼠标控制轨迹
- OpenGL文档,api大全,可直接查询函数
- opengl轮廓字体源代码
- MFC读三维模型obj文件
- 利用OpenGL写毛笔字算法
- MFC中OpenGL面和体的绘制以及动画效果
- 基于OPENGL的光线跟踪源代码368758
- VC 实现三维旋转(源码)
- 自编用openGL实现3D分形树,分形山
- OpenGL球形贴图自旋程序
- OpenGL导入贴图的Texture类
- 计算机图形学(openGL)代码
- 用OpenGL开发的机械臂运动仿真程序(
- OpenGL-3D坦克模拟
- OPENGL实现世界上最小的3D游戏
- VS2012OpenGL配置所需要的全部libdllh文件
- 基于OpenGL的仿蝗虫机器人三维动态仿
- 图形学 - OpenGL实现3种三维茶壶显示源
- opengl程序-会跳舞的骷髅
- opengl实现三维网格光顺Laplacian算法
- opengl——爆炸
- OpenGL三维地形建模
- opengl游戏编程徐明亮版(含源码)
- 用OPENGL画的一个简单的直升飞机
- opengl完美天空盒
- 3D绘图程序设计:使用Direct3D 10/9和Ope
- OpenGL绘制可运动自行车源程序.zip
- OpenGL实现飘动效果
- opengl室内场景的绘制,包括碰撞检测
评论
共有 条评论