网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
08月30日漏签0天
易语言游戏开发吧 关注:203贴子:486
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 8回复贴,共1页
<<返回易语言游戏...吧
>0< 加载中...

第三节:可以自由修改的游戏:横版游戏的地图滚动机制

  • 只看楼主
  • 收藏

  • 回复
  • 老从学易
  • 远近闻名
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
本节重点说一下人物行走和地图滚动的设计
在昨天我们做的示例里,鸟的横向位置是不变的,依靠背景的不断滚动来表现鸟在一直向前飞的效果。这种设计广泛出现在各类2D游戏中,但是也有一类游戏是根据人物移动位置来移动可视区域的。
也就是说,也可以像3D游戏那样,先把完整的所有地图全部设计好,然后游戏开始的时候只显示地图的某一部分,随着主角的移动来不断调整前台显示的区域。
今天我们看一个新的框架。下面是游戏效果的动态图片:

可以看到,人物开始走动的时候地图是不移动的,直到人物走到一定位置,画面才开始向右卷动;反过来也是一样。这就是最典型的横版过关游戏地图的设计机制。
那么我们怎样来实现这样的效果呢?按照上一节的思路,我们也可以这样设计:
简单两个层,主角在固定位置不动,依靠背景层前后移动来表现主角行走的效果。这样当然是可以的,但是在具体判断主角可通行区域上会有难度。因为地图是比较复杂的图像,那么在移动的时候,如何根据人物行走区域来做判断呢?还是像鸟撞烟囱那种判断,需要一个时钟一直工作,但是时钟周期再短也必然是有一个间隔没有判断到的。
所以这个小东西我采用了不同的机制,也就是让人物也变化自己的位置,就是说人物本身也行走,然后地图也滚动——当然这个滚动是一个判断区间才滚动:

在上面这个演示图中,紫色框就是当前摄像头的可视区域。当人物行走的时候,这个框架也会跟着人物移动。具体的分为三种情况:
1 当人从最左边向右走的时候,最初紫色框(摄像头)是固定的,走的是人物;人物相对于地图产生一个位移,一直走到蓝色线的时候,触发镜头滚动条件。
那么大家思考一下,为什么要在这里触发滚动呢?为何不一开始就滚动?或者走到最右边才滚动?
回忆一下你曾经玩过的游戏,最典型的比如三国志,三国战记,你行走的时候人物离边缘是有一个距离的。因为左边和右边边线之外其实是刷新出怪物的区域。所以一旦贴边行走的话,首先是视觉上很难受,其次是怪物刷新第一时间就把主角干掉了。
2 当人物从右边回头向左边走的时候,同样是紫色框开始不动,当走到黄线部分,才触发滚动。道理同上。
3 当地图滚动到边缘的时候,虽然人物已经触发了条件(穿过了黄线或蓝线),但是地图也不会滚动,因为这里无法滚动了,地图图片资源已经没了。到边了——通常我们会在边缘设置一个障碍,比如三国战记的船舷。
理清上面的思路之后,这个东西就可以尝试动手做了。但是还有一个问题需要解决。我们如何限制主角只在有路的区域行走?

如上图,我们如何限制主角在蓝色区域(也就是有道路的地方)行走呢?其实实现的方法很多,我采用的是一种简单的思路。加一个路线层。这个路线层放在背景层下面,总之是不可见的状态,然后根据路线层上的颜色来规定主角移动范围。
分层图如下:

增加一个路线层之后,整个程序逻辑就基本出来了。当主角移动的时候,首先判断他要移动的方向上是不是黑色,因为黑色才是可行走区域。如果是黑色,那么移动主角;反之让主角固定不动,在原地踏步,表示走到边缘了。就像开始的动态图中,向上向下走的时候其实是走到了黑色的边界,外面是白色,自然不能走。
逻辑就是这样,具体到易语言程序就是判断像素点颜色来实现。当然,如果我们使用游戏引擎的话,每个游戏引擎都会提供自己的判断机制,但是你要知道这个游戏的设计逻辑。还是那句话,引擎不是万能的,引擎能给你的只是一个优化的工具。PHOTOSHOP谁都能下载,但是玩的好的没几个。你至少要了解游戏的设计思路,才能利用引擎做出漂亮优秀的游戏来。
以上就是本系列的第三节。大家可以任意观察一下其他横板过关类的游戏,脑子里思索一下它的地图卷动机制,如果是你做的话应该怎么做分层。
下一节我们将具体介绍分层的基本原则。具体拿一款游戏来讲解。
----------------------------------------------------------------
转载请保留以下信息:
《易语言从0开始做游戏》,第3节,版本 1.0
作者:紫川秀
首发:http://www.egamebbs.com
最后更新:2014-08-10 15:07


  • 白色梦香
  • 富有美誉
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
做个mark,有些图片要重新整理一下!


2025-08-30 14:46:20
广告
不感兴趣
开通SVIP免广告
  • hengyun8007
  • 颇具盛名
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
支持好东西…


  • 老从学易
  • 远近闻名
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
不错,弄回来的感觉真好


  • 辰兮丶c
  • 声名远扬
    12
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
额顶一个支持一下
----来自百度贴吧客户端


  • 老从学易
  • 远近闻名
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
本节重点说一下人物行走和地图滚动的设计
在昨天我们做的示例里,鸟的横向位置是不变的,依靠背景的不断滚动来表现鸟在一直向前飞的效果。这种设计广泛出现在各类2D游戏中,但是也有一类游戏是根据人物移动位置来移动可视区域的。
也就是说,也可以像3D游戏那样,先把完整的所有地图全部设计好,然后游戏开始的时候只显示地图的某一部分,随着主角的移动来不断调整前台显示的区域。
今天我们看一个新的框架。下面是游戏效果的动态图片:【图片】可以看到,人物开始走动的时候地图是不移动的,直到人物走到一定位置,画面才开始向右卷动;反过来也是一样。这就是最典型的横版过关游戏地图的设计机制。
那么我们怎样来实现这样的效果呢?按照上一节的思路,我们也可以这样设计:【图片】简单两个层,主角在固定位置不动,依靠背景层前后移动来表现主角行走的效果。这样当然是可以的,但是在具体判断主角可通行区域上会有难度。因为地图是比较复杂的图像,那么在移动的时候,如何根据人物行走区域来做判断呢?还是像鸟撞烟囱那种判断,需要一个时钟一直工作,但是时钟周期再短也必然是有一个间隔没有判断到的。
所以这个小东西我采用了不同的机制,也就是让人物也变化自己的位置,就是说人物本身也行走,然后地图也滚动——当然这个滚动是一个判断区间才滚动:【图片】在上面这个演示图中,紫色框就是当前摄像头的可视区域。当人物行走的时候,这个框架也会跟着人物移动。具体的分为三种情况:
1 当人从最左边向右走的时候,最初紫色框(摄像头)是固定的,走的是人物;人物相对于地图产生一个位移,一直走到蓝色线的时候,触发镜头滚动条件。
那么大家思考一下,为什么要在这里触发滚动呢?为何不一开始就滚动?或者走到最右边才滚动?
回忆一下你曾经玩过的游戏,最典型的比如三国志,三国战记,你行走的时候人物离边缘是有一个距离的。因为左边和右边边线之外其实是刷新出怪物的区域。所以一旦贴边行走的话,首先是视觉上很难受,其次是怪物刷新第一时间就把主角干掉了。
2 当人物从右边回头向左边走的时候,同样是紫色框开始不动,当走到黄线部分,才触发滚动。道理同上。
3 当地图滚动到边缘的时候,虽然人物已经触发了条件(穿过了黄线或蓝线),但是地图也不会滚动,因为这里无法滚动了,地图图片资源已经没了。到边了——通常我们会在边缘设置一个障碍,比如三国战记的船舷。
理清上面的思路之后,这个东西就可以尝试动手做


  • 老从学易
  • 远近闻名
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
每天都来签个到-----我觉得必须十五个字才好。


  • 心动的涌动
  • 默默无闻
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
可以教我易语言游戏开发吗?


2025-08-30 14:40:20
广告
不感兴趣
开通SVIP免广告
  • 月亮想摘星
  • 富有名气
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
我可以转载吗


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 8回复贴,共1页
<<返回易语言游戏...吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示