- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一 游戏编程基础
1-概论
1.游戏的组成
游戏由剧情、图形图像、声音、文本等资源组成。
2.游戏设计与制作
设计与制作过程大致分为策划,美工,音效,程序,测试五部分。
策划:负责设计游戏的剧情、类别、玩法等,是游戏最重要的部分,直接决定了游戏的成功与否。
美工:负责绘制游戏中所需图形图像资源。
音效:负责制作游戏中所需的声音资源。
程序:负责将多媒体资源按照策划规定的方式组合起来,制作成最终产品-游戏。
测试:负责测试程序的稳定性、游戏的难度等。
我之前看过一本书,书中有这么一个比喻:如果拿游戏与人来类比的话,策划就是心脏,程序是骨骼,美工是皮肤,音效是衣服。
游戏编程,就是游戏设计与制作的程序部分。在我的整个笔记中,所探讨的核心内容,就是游戏的程序实现。
2-游戏程序组成
1.组成
主要由逻辑更新和画面渲染两部分组成,也可以说游戏程序就只干这两件事情。
逻辑更新:接收玩家的输入,更新敌人、玩家、世界等数据。
画面渲染:将游戏内容以图像的方式呈现出来。
2.程序流程?
初始化数据-更新-渲染-释放资源。
3-Windows程序设计基础
? ? ? ? 我所使用到的技术都是基于windows操作系统的,在2D游戏编程方面,使用GDI(图像开发接口)来处理图形图像,虽然GDI的执行效率较低,但是相对于其他的开发包来说,它比较容易学习和理解,在我们学习阶段使用它没问题。当我们对游戏编程思想有了更深的了解的时候,可以使用其他开发包来处理图形图像,如DirectX?3D,OpenGL等。
1.程序入口WinMain
一个简单的windows程序。
[cpp]?view plaincopy
#include?Windows.h??
int?WINAPI?WinMain(HINSTANCE?hInstance,??
???????????????????HINSTANCE?hPrevInstance,???
???????????????????LPSTR?lpCmdLine,??
???????????????????int?nShowCmd?)??
{??
????MessageBox(NULL,??
????????L这是一个简单的windows应用程序!,??
????????L这是标题,??
????????MB_OKCANCEL|MB_ICONINFORMATION);??
????return?0;??
}??
WinMain和C语言的main函数类似,都是程序的入口函数,由系统调用。
[cpp]?view plaincopy
int?WINAPI?WinMain(??
??HINSTANCE?hInstance,?????//?handle?to?current?instance??
??HINSTANCE?hPrevInstance,?//?handle?to?previous?instance??
??LPSTR?lpCmdLine,?????????//?command?line??
??int?nCmdShow??????????????//?show?state??
);??
详细参数可以参看MSDN或去百科上看,写程序时,保持这个结构不变即可。最重要的参数是hInstance,为应用程序实例句柄,标识了当前应用程序的资源地址。在游戏编程中,经常会用到它,所以,我们经常会将该值保存起来,方便后面使用。
2.创建windows应用程序的流程
主函数(WinMain)-注册窗口类(RegisterClassEx)-创建窗口(CreateWindowEx)?-消息循环(MainLoop),处理窗口过程(WinProc)。其中,窗口过程在消息循环中被反复调用。以下是算法伪代码:
[cpp]?view plaincopy
WinMain()??
{??
????RegisterClassEx()??
????CreateWindowEx()??
????MainLoop()??
}??
MainLoop()??
{??
????while(true)??
????{??
????????WinProc()??
????}??
}??
3.注册窗口类RegisterClassEx
窗口类,即窗口的类型,它并不是指C++中的类(class)。告诉操作系统即将创建什么样的窗口。
[cpp]?view plaincopy
ATOM?RegisterClassEx(??
??CONST?WNDCLASSEX?*lpwcx?//?class?data??
);??
typedef?struct?_WNDCLASSEX?{?//窗口类数据结构??
????UINT?????????cbSize;?????//本结构大小
您可能关注的文档
- 后期用到的BGM和音效.doc
- 湖北职业技术学院章程.doc
- 湖南高等院校毕业生初任专业技术职务呈报表.doc
- 湖南省高职院校专业技能抽查程序设计部分试题四任务二.doc
- 湖南省高职院校专业技能抽查程序设计部分试题四任务三.doc
- 湖南信息职业技术学院最新喜讯.doc
- 华南师范大学本科生毕业论文(设计).doc
- 华盛(技术部分).doc
- 华为技术有限公司故障返修单.doc
- 华为技术有限公司管理模式.doc
- 2025AACR十大热门靶点推荐和解读报告52页.docx
- 财务部管理报表.xlsx
- 高中物理新人教版选修3-1课件第二章恒定电流第7节闭合电路欧姆定律.ppt
- 第三单元知识梳理(课件)-三年级语文下册单元复习(部编版).pptx
- 俄罗斯知识点训练课件-七年级地理下学期人教版(2024).pptx
- 课外古诗词诵读龟虽寿-八年级语文上学期课内课件(统编版).pptx
- 高三语文二轮复习课件第七部分实用类文本阅读7.2.1.ppt
- 高考物理人教版一轮复习课件第4章第3讲圆周运动.ppt
- 高考英语一轮复习课件53Lifeinthefuture.ppt
- 2025-2030衣柜行业风险投资发展分析及投资融资策略研究报告.docx
文档评论(0)