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

Project1

 找回密码
 注册会员
搜索

绘制地图的问题

查看数: 3711 | 评论数: 11 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2013-6-26 09:10

正文摘要:

本帖最后由 爆发的妞 于 2013-6-26 14:14 编辑 小弟遇到一个地图绘制的问题,特来请教。 @eve592370698 @美丽晨露 @SuperMario 问题描述如下: 我看了Tilemap的第三方实现的方式, 里面是@layers包含三成的逻辑 ...

回复

SuperMario 发表于 2013-6-29 00:36:36
本帖最后由 SuperMario 于 2013-6-29 09:26 编辑

明天帮你看看吧。手机网页没有提醒功能,现在才看到。

------------------------------------------------------------------

清除信息的时候,3层的信息一起清除,不行吗....
我不清楚你是怎么绘制的。2层就够了吧。一层在人物下方,一层在人物上方。
你现在使用的绘制图形的接口是怎样的呢,可以实现哪些功能?
爆发的妞 发表于 2013-6-28 11:03:34
灼眼的夏娜 发表于 2013-6-27 22:18
构成元件地图的各精灵的 Z 座标是特定的固定值。

优先级为 0 的地图元件的 Z 座标必定是 0。

其实我现在遇到的问题是, 让图片的一部分例如一块, 变成透明色,
android没有现成的api,操作像素效率太低, 用一个透明的图片又盖不住,
就产生了这个问题。 估计c效率高些做到了吧。 可以直接操作内存。  
所以android对于优先级的实现不了。  不过可以考虑使用事件的图标当成
建筑来实现遮挡, 记得以前搞得游戏都是这样做的。 有个建筑层的概念。
爆发的妞 发表于 2013-6-28 08:55:18
灼眼的夏娜 发表于 2013-6-27 22:18
构成元件地图的各精灵的 Z 座标是特定的固定值。

优先级为 0 的地图元件的 Z 座标必定是 0。

元件地图纵向滚动的话,Z 座标也一起变化。 纵向的话, 应该是y坐标移动吧。 不知道你这个文档出处在哪, 我也想看看。 谢谢你的回答。

点评

RMXP默认帮助手册 F1里的~  发表于 2013-6-28 09:08
灼眼的夏娜 发表于 2013-6-27 22:18:48
构成元件地图的各精灵的 Z 座标是特定的固定值。

优先级为 0 的地图元件的 Z 座标必定是 0。
画面上端位置的优先级为 1 的地图元件的 Z 座标是 64。
优先级每增加 1,Z 座标增加 32。
元件地图纵向滚动的话,Z 座标也一起变化。
地图上显示的人物 Z 座标,必须先决定地图元件的 Z 座标。


文档的描述

点评

thanks  发表于 2013-6-28 09:13

评分

参与人数 1星屑 +140 收起 理由
弗雷德 + 140 惊现夏娜!

查看全部评分

美丽晨露 发表于 2013-6-26 17:04:56
好吧,表示我看不懂这个脚本
爆发的妞 发表于 2013-6-26 15:35:07
亿万星辰 发表于 2013-6-26 15:19
如果一层没问题,多层应该也不应该产生这样的问题啊,每层都是调用相同的处理过程吧

在需要更换的区域重 ...

Tilemap 的三层是逻辑三层, 不是地图的三层。
看下面的一段代码
RUBY 代码复制
  1. # Passes Through All Priorities
  2.             for p in 0..5
  3.               # Skip If Priority Doesn't Match
  4.               next unless p == @priorities[id]
  5.               # Cap Priority to Layer 3
  6.               p = 2 if p > 2
  7.               # Draw Tile
  8.               id < 384 ? draw_autotile(x, y, p, id) : draw_tile(x, y, p, id)
  9.             end

如果优先级p=0 就绘制在第一层, 如果p=1就绘制在第二层, 如果
p>=2就绘制在第三层。
当我的逻辑层只有1层的时候, 地图的三层都绘制在一个逻辑层中,
是没有透明图块的, 这样就不存在旧的数据了。 显示正常, 就是没有
遮挡的效果了, 有的优先级显示在人物上的, 也遮挡不了了。
如果有逻辑三层的话, 逻辑1层是没问题的, 基本上都有图块的,不存在
透明图块的(即tile_id=0的图块,地图的第一个图块),但是如果有优先级
>=1 的,就是绘制在逻辑的第二层或第三层的时候, 当移动的时候, 由于卡马克
算法, 第二层和第三层里面的图片, 只更新新的数据, 旧的数据还在。
不知道我的描述是否清晰。

点评

暂时想不出什么问题~这个都东西我没有实际写过,可能理解不到你现在出问题的这个层面上。  发表于 2013-6-26 15:46
亿万星辰 发表于 2013-6-26 15:19:40
爆发的妞 发表于 2013-6-26 15:07
恩。是触摸的。是我android的仿照rmxp原生开发的。
如果只绘制在一层上面是没有问题的。 但是没有遮罩主 ...

如果一层没问题,多层应该也不应该产生这样的问题啊,每层都是调用相同的处理过程吧

在需要更换的区域重绘新地图,然后重新拼接
爆发的妞 发表于 2013-6-26 15:07:09
本帖最后由 爆发的妞 于 2013-6-26 15:09 编辑
end55rpg 发表于 2013-6-26 15:02
这是触屏游戏么- -,恕我无能看不懂。。。可以GC.start看看(garbage collect)


恩。是触摸的。是我android的仿照rmxp原生开发的。
如果只绘制在一层上面是没有问题的。 但是没有遮罩主角的效果了。
多层就产生了这个问题。

点评

多层会怎样?角色移动后图块出现问题?》  发表于 2013-6-26 15:13
end55rpg 发表于 2013-6-26 15:02:28
这是触屏游戏么- -,恕我无能看不懂。。。可以GC.start看看(garbage collect)
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-11-25 03:15

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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