设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索

另一种小地图显示 ver 1

查看数: 3448 | 评论数: 4 | 收藏 2
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2015-9-13 13:49

正文摘要:

先附上效果图。 就是这个样子,虽然这张图片里面NPC和蓝点不一致,但是是截图的原因,实际上没有问题…… 脚本 class Window_MiniMap < Window_Base   def initialize     super(0,0,$game_map. ...

回复

枫の叶 发表于 2015-12-8 16:56:46
好像很早之前在哪儿见过这样的小地图,但他的刷新方式不一样,只有更换地图后才重新绘制
整个地图的通行,你这样不断的刷新肯定会爆表。
我看到的那个脚本只刷新角色和事件,只是增加了角色和事件移动前坐标的两个变量,角色或事件移动时,把移动前
的坐标位置绘制成能通行的颜色,把现在的坐标绘制成角色和事件对应的颜色,然后移动前的坐标变量等于现在坐标。
yang1zhi 发表于 2015-11-20 20:17:43
我添加到我的攻城里后,小地图一闪而过就没了

点评

已经能用了。但是好糟糕。地图既不是全图的缩略,也不能卷动。超出的就看不到  发表于 2015-11-20 20:44
我有个initialize的窗口在界面了,所以一闪就没了  发表于 2015-11-20 20:29
还是这种简单的小地图好。不能从小地图上直接看出什么地方有什么,要走过去看  发表于 2015-11-20 20:26
RyanBern 发表于 2015-9-14 15:33:19
感觉这个小地图脚本有点简陋。首先它把地图上所有的东西都用方块代替了,看起来很不是美观的样子。虽然把它换成真正图块差别并不大,但是最好做一下为好。

虽然显示在右上角,但是这个小地图并没有滚动的功能,所以在地图非常大的情况下,小地图窗口会铺满整个界面。小地图的作用是起到缩略和预览的功能,因此显示的区域肯定比屏幕上的要大(20*15)。但是如果太大了挡住屏幕也不太好,总之还是推荐加上自动滚屏功能。

每一步刷新小地图非常的浪费时间,考虑到地图上的前三层都是静止的,只有事件层是变化的,因此可以考虑单独绘制事件层。或者按照AC所说,仅仅绘制需要显示的部分。

这个小地图显示的原理和原有的小地图脚本不太一样。原有小地图脚本是先按照1:1的比例绘制地图的bitmap,然后再使用Bitmap#stretch_blt缩放,这种方法是有一定的风险。因为地图可以很大,直接再绘制一个1:1的bitmap容易发生RGSS停止工作的严重错误。虽然最后的小地图比较节省内存,但是绘制的过程需要的内存还是很多的。但是这个小地图脚本是直接绘制,所以能减少发生上面错误的风险,但是还是需要进一步改进才行。

综上,外观上和性能上都有很大的提升空间,希望楼主能及时更新。
VIPArcher 发表于 2015-9-14 15:20:03
每帧都在刷新重绘整个小地图=。=
我觉得可以把整个地图的通行度画的比特抹布先缓存下来,小地图上只显示需要的那部分矩形的比特抹布
事件点和需要显示的点再每帧刷新它的位置比较好
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-11 04:17

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表