文档下载 文档下载导航
设为首页 | 加入收藏
搜索 请输入内容:  
 导航当前位置: 文档下载 > 所有分类 > IT/计算机 > 用Visual C++ 6.0、DirectX SDK 7.0编写游戏具体步骤
侵权投诉

用Visual C++ 6.0、DirectX SDK 7.0编写游戏具体步骤

本游戏是用Visual C++ 6.0、DirectX SDK 7.0编写的。

1.DirectX SDK

首先介绍一下DirectX SDK。DirectX SDK是微软推出的一套在Windows中开发多媒体程序的API函数集,可以在http://doc.wendoc.com/windows/directx/default.asp上免费获得,目前最新版本是9.0。

在DirectX SDK的帮助下,程序员可以专注开发游戏本身,涉及到2D、3D、声音以及网络等的功能,只要直接调用相应组件即可。我们的麻将对对碰只用了其中的图像功能。

2.在VC中配置DirectX SDK

首先安装DirectX SDK。之后,需要在Visual C++中配置一下,指定它的路径:依次选择“工具”、“选择”菜单,在“目录”页中的Include files中添加DirectX SDK的Include目录,然后在Library files中添加DirectX SDK的Lib目录。

3.编写游戏

首先在Visual C++中建立一个空的Win32 Appllcation工程。接着,往工程中加入stdafx.h文件,并且在stdafx.h文件中加入#include <ddraw.h>,表示将要使用DirectDraw组件。在向工程中加入资源文件后,使用Alt+F7调出设置对话框,在General下的Microsoft Foundation Classes选择use MFC in a Static Libarary。然后加入Dxguid.lib和ddraw.lib。 之后为工程建立一个窗口类,在窗口类的头文件中把构造函数声明修改为public。接下来我们还要定义一些函数和变量,其中DXInit()为DirectDraw的初始化函数,它是DirectX编程的核心,所有的绘图初始化都在其中。当然,DXInit()只是建立了主绘图页、实现后缓冲区和主绘图页的连接,并没有建立幕后内存区。函数loabmp()中实现了建立幕后内存区和显示位图的功能。

如何使用这三个绘图页呢?为了避免闪烁现象,我们首先把位图贴到幕后内存区中,然后在贴到后缓冲区,再利用翻页的方式绘出要显示的位图内容。以上操作分别由BitFast()贴图函数和Filp()翻页函数完成。具体的使用方法,请参阅有关资料。

为了方便以后的游戏操作,我就麻将图像排成序号:1-9代表1-9万、10-18代表1-9条、19-29代表1-9饼、28-34分别代表东、南、西、北、中、发、白。这样作的好处是简化了判断条件成立的条件,因为麻将每张都有四个,所以在麻将信息中加入了n用来判断该张发出的次数,h是用来存放麻将的类型。

接着使用“插入”、“新建类”建立应用程序类,在Class type对话框中选择Generic Class,在Name中输入类名CMajiangApp,在Base class(es)中的Derived From中输入CWinApp。 然后分别为工程添加WM_CREATE、WM_TIMER消息并填写相应代码,从而可以在屏幕上显示LOGO和麻将图像了。

游戏的主要功能是在play()中完成的,代码非常简单,核心问题就是如果判断所选两个麻将是否相同。这个过程请参见2004年18期程序谷刊登的《用VC作的一个扑克游戏》一文中的方法。

为了响应快捷键,向工程加入WM_KEYDOWN消息;为了实现右键取消功能,为工程加入WM_RBUTTONDOWN消息;为了实现左键选择功能,为工程加入WM_LBUTTONDOWN消息。最后加入fp()发牌函数、Scoreshow()和timeshow()函数,这样就可以实现游戏的功能了。

4.小结

这个游戏主要应用了当前比较流行的DirectX技术。如果你有兴趣,可以把它改成网络版,或者可以加上音效。欢迎到我的主页交流,网址是:http://doc.wendoc.com/。 [YY19] 笔者第一次接触到多媒体,是上学时买的一套多媒体光盘,它集成了图像、动画、声音、文字等多种元素,使得学习的过程有声有色,比如:在学语文时,有配乐朗诵;学化学时,只要动动鼠标就可以做氧气燃烧等各种化学试验;做数学题时它能帮我判断对错并提示出错原因

第1页

热门文档

相关文档

  • 用Visual C++编写属于自己的游戏

    游戏用 Visual C++ 6.0、DirectX SDK 7.0 编写的。 1.DirectX SDK 首先介绍一下 DirectX SDK。DirectX SDK 是微软推出的一套在 Windows 中开发多媒体...

  • Visual C++】游戏开发笔记二十六 DirectX 11各组件的...

    Visual C++】游戏开发笔记二十六 DirectX 11各组件的介绍&第一个DirectX 11 ...我们使用 XNA Math 不必下载 XNA Game Studio SDK。 9 . DirectCompute ...

  • DirectX 5.0游戏编程指南之DirectDraw篇

    朱春喜 目录 1 配置 DirectX SDK 2 DirectDraw 实例 3 创建动画 4 使用覆盖...DirectX 是为 Visual C++的用户准备的, 因此要编制 DirectDraw 游戏程序, 最好...

  • ...C++】游戏开发笔记之一——API函数、DirectX的关键...

    必要的工具和开发环境 要进行游戏的开发,我们必须拥有一套最新的 DirectX SDK(...DirectX, DirectX 在国内为主流。具体比较请移步最近刚写的这篇文章 【Visual ...

  • Visual C++】游戏开发笔记二十五 最简化的DirectX 11...

    Visual C++】游戏开发笔记二十五 最简化的DirectX 11开发环境的配置_计算机...添加的具体步骤如 下: <1> 在【包含目录】中加入安装的 DirectX SDK 目录下...

  • 使用DirectX 创建游戏 (C++)

    通过使用 Visual C++ 和 DirectX,您 可以用本机代码或托管代码编写游戏。 此...图形编程入门若要使用 DirectX 创建游戏,您必须从以下位置安装 DirectX SDK:...

  • 游戏编程

    使用 Microsoft Visual C++6.0,当然,其它的也可以)和一个 DirectX SDK 软件...我的编写游戏过程是: 1. 设计完整的游戏 2. 建立所有的游戏资源游戏引擎和...

  • DirectX进行游戏程序设计

    全因您的参与 — 中国游戏开发者.CN 3.11.HeartBeat(心跳)函数 3.12.翻转...注意:如果你的 DirectX SDK 版本在 Visual C/C++(4.2/5.0/6.0)之后,...

  • DirectX5.0新游戏编程指南

    DirectX是为Visual C++的用户准备的,因此要编制DirectDraw游戏程序,最好对VC要...解决方法很简单,即SETUP安装完成后,再建立一个C:\DX5SDK\SDK\LIB\Borland,将...

站点地图 | 文档上传 | 侵权投诉 | 手机版
新浪认证  诚信网站  绿色网站  可信网站   非经营性网站备案
本站所有资源均来自互联网,本站只负责收集和整理,均不承担任何法律责任,如有侵权等其它行为请联系我们.
文档下载 Copyright 2013 doc.wendoc.com All Rights Reserved.  闽ICP备16030457号email
返回顶部