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

Project1

 找回密码
 注册会员
搜索
查看: 2983|回复: 2
打印 上一主题 下一主题

[交流讨论] analog move在远景地图斜向行走事件抖动的问题

[复制链接]

Lv2.观梦者

梦石
0
星屑
676
在线时间
224 小时
注册时间
2006-12-7
帖子
839
跳转到指定楼层
1
发表于 2016-1-31 14:54:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
http://forums.rpgmakerweb.com/in ... og-move/&page=1
sanshiro的analog move
目前移动插件感觉就这个手感最好了,不管是键盘鼠标还是移动设备触屏的手感都不错
可是发现一个比较抽的bug,就是如果用远景地图的话(文件名前面加!,类似以前的双远景那种远景图跟着地图滚动的)
移动的时候八向行走的时候事件会严重的会抖动
视频示意如下:
http://www.tudou.com/programs/view/2xvSOTxQOGA/
四向走的时候感觉抖动不明显,斜向走的时候可以看到其他事件有严重的抖动(地图的名称是事件做的)
这个问题同样在远景地图的npc上出现

试了下如果不用远景地图没有这个问题(普通远景,文件名不加!,远景不和地图一起滚动)

作者似乎联系不上了,不知道有木有小伙伴对这个插件比较懂的有啥参考意见

Lv2.观梦者

梦石
0
星屑
676
在线时间
224 小时
注册时间
2006-12-7
帖子
839
2
 楼主| 发表于 2016-1-31 15:13:57 | 只看该作者
刚才用了一个纯色白底的远景地图
然后就看不出来抖了
看来不是事件在抖而是远景图滚动的时候在抖。。。
看默认的js,远景的滚动是跟着地图走的

rpg_object.js
JAVASCRIPT 代码复制
  1. Game_Map.prototype.setDisplayPos = function(x, y) {
  2.     if (this.isLoopHorizontal()) {
  3.         this._displayX = x.mod(this.width());
  4.         this._parallaxX = x;
  5.     } else {
  6.         var endX = this.width() - this.screenTileX();
  7.         this._displayX = endX < 0 ? endX / 2 : x.clamp(0, endX);
  8.         this._parallaxX = this._displayX;
  9.     }
  10.     if (this.isLoopVertical()) {
  11.         this._displayY = y.mod(this.height());
  12.         this._parallaxY = y;
  13.     } else {
  14.         var endY = this.height() - this.screenTileY();
  15.         this._displayY = endY < 0 ? endY / 2 : y.clamp(0, endY);
  16.         this._parallaxY = this._displayY;
  17.     }
  18. };


不知道是哪个地方抽了,analog move里面地图没有抖,远景图倒是抖了。搜了下也没看到parallax的相关代码
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1310
在线时间
183 小时
注册时间
2018-2-7
帖子
17
3
发表于 2019-4-12 12:32:00 | 只看该作者
正好也遇到了这个过期问题,来回答一下,希望斑竹高抬贵手
拜托了一下懂的人,把这段加到插件后面就行了

JAVASCRIPT 代码复制
  1. Spriteset_Map.prototype.updateTilemap = function() {
  2.     //图块地图 原点 x = 游戏地图 显示x() * 游戏地图 图块宽()
  3.     this._tilemap.origin.x = $gameMap.displayX() * $gameMap.tileWidth();
  4.     //图块地图 原点 y = 游戏地图 显示y() * 游戏地图 图块高()
  5.     this._tilemap.origin.y = $gameMap.displayY() * $gameMap.tileHeight();
  6.  
  7.     this._tilemap.origin.x = Math.round(this._tilemap.origin.x)
  8.     this._tilemap.origin.y = Math.round(this._tilemap.origin.y)
  9. };


测试了一下远景图滚动也没问题,如果要用无限图层插件的话还是会抖,不过我用的UIDS里面有个loop功能,设置成跟地图一样大小后再写上【"loop": true,】就没问题了

评分

参与人数 2+2 收起 理由
Zeldashu + 1 塞糖
白嫩白嫩的 + 1 只要能解决问题,版主大大是不会怪你挖坟的.

查看全部评分

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-5-13 07:47

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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