2D游戏算法——RPG游戏初步.ppt

  1. 1、本文档共100页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2D游戏算法——RPG游戏初步

精灵:前景是图像,背景是透明的 精灵动画:将上一帧中精灵出现的地方用背景填充,并在新的指定地点绘制精灵 sprite animation 人物的连续显示方式: 双缓冲机制 不要在窗口中直接贴图, 避免闪烁 建立一个内存DC,然后把所有的贴图动作都在这个DC上进行,最后把结果显示到操作窗口中。   寻找一些志同道合的伙伴组成一个小组 策划写剧本并对剧本进行分镜处理 美工寻找或制作素材 编辑地图 编写游戏配置文件和脚本文件 测试 发布 开发游戏步骤 9、开发步骤 第一步,当然是找人,不然你只有单干 (什么?你是全才?那我不拦着你, 你一个人上吧)。 开发游戏步骤 9、开发步骤 第二步,写剧本并对剧本进行分镜处理,剧本 就不用说,原创和改编都行,而分镜是把剧本 进行一个量化处理。 开发游戏步骤 9、开发步骤 第三步,在完成分镜后美工就按照分镜要求寻 找或制作一些素材,这些包括地图,人物行走 ,战斗,对话等图片 开发游戏步骤 9、开发步骤 第四步,当有了地图的素材,就可以按照分镜的 要求编辑地图了,不必等人物的素材制作完成。 开发游戏步骤 9、开发步骤 第五步,在地图编辑的同时就可以开始编写游 戏配置文件和脚本文件了。 开发游戏步骤 9、开发步骤 是固定地图的进一步发展。这种类型可以显示远大于固定地图的图像。每屏只显示部分图像,当游戏中人物角色行进时,根据玩家所在位置,确定显示的地图部分。 3、地图制作 滚屏地图 人物所在格x轴和y轴下标为: titleplayerx=playerx/title_wide titleplayery=playery/title_high 应该绘制的地图范围是: X轴: 由titleplayerx-xtitle/2至titleplayerx+xtitle/2; Y轴: 由titleplayery-ytitle/2至titleplayery+ytitle/2; 3、地图制作 地图显示原理 问题:人站在树上……. 3、地图制作 地图显示原理 地图一般分成三个层次: 地 面 层 特点:这层的所有物品都会被另外两个层的物体覆盖。 精 灵 层 特点:主角、npc等可以活动的人物都是在这层,也可称为中间层。 天 空 层 特点:树木,房屋等可以阻挡人物 视线的图层都可以称之为天空层。 3、地图制作 地图制作 MapData[X][Y];?//地图数据,X表示地图宽度,Y表示地图高度 Picture[num];?//道具的图片,num表示道具的总数 void?MakeBackGround()?//生成场景函数 {  int?n;  for(?int?i=0;?iY;?i++)?//共Y行  for(?int?j=0;?jX;?j++)?//共X列  {   n=MapData[?i?][?j?];?//取得该位置的道具编号   Draw(?j*32,?i*32,?Picture[n]);?//在此位置(j*32,i*32)画道具  } } 3、地图制作 地图制作流程 在草稿纸上画出地图的轮廓和以及一些要素。 根据草稿确定地图使用的素材。 制作地面层。 制作物体层。 从物体层里分出天空层和地面层。 设定阻挡关系。 测试。 3、地图制作 地图制作流程 4、消息处理系统 消息处理 RPG游戏的消息处理系统和Windows的消息处理机制 其实非常相似,都是先等待消息,然后根据收到的消息转 到相应的函数进行处理。所不同的是Windows 接收的消息 大多是系统或是用户输入产生的,而RPG游戏的消息大多 是自定义的。 4、消息处理系统 消息处理 //定义消息: #define 行走 1 //行走消息定义为1 #define 打斗 2 //打斗消息定义为2 #define 对话 3 //对话消息定义为3 #define 升级 4 //升级消息定义为4 #define 事件 5 //事件消息定义为5 #define 结束 6 //结束消息定义为6 …… …… …… …… …… 消息和事件的程序设计 WinMain() //进入程序 { … …初始化主窗口; … …初始化DirectDraw环境,并调入程序需要的图形、地图数据; while( 1 ) //消息循环 { switch( Message ) ????? { ????????? case 行走: 行走模

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档