查看: 965|回复: 0

[原创发布] 修复MV手机端地图黑线

[复制链接]
梦石
0
星屑
280
在线时间
25 小时
注册时间
2025-6-8
回帖
1
发表于 2025-9-3 11:20:01 | 显示全部楼层 |阅读模式

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

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

×
创意来源:https://rpg.blue/thread-490983-1-1.html

原因这个楼里的大佬已经解释的很清楚了,是Shader的精度问题导致的
但是,有一个小细节他说错了,并不是没有设置精度导致的未定义行为
而是未定义精度的情况下会使用pixi的默认精度,而这个默认精度在不同设备上的效果是不一样导致的

准确来说,pixi shader能使用的精度有三种,在pixi.js里是这样定义的
var PRECISION = exports.PRECISION = {
  LOW: 'lowp',
  MEDIUM: 'mediump',
  HIGH: 'highp'
};
然后着色器使用的默认精度是由下面两个值定义的
PRECISION_VERTEX: 'highp',
PRECISION_FRAGMENT: 'mediump',
看起来没啥问题,大家用的不都是mediump...吗?
在PC上,不管你是用highp、mediump还是lowp,精度统统都是23位,范围127
但是在我的便宜手机上,mediump的精度就变成了10位,范围15,然后就导致了黑线问题

既然知道了问题的来源,那么解决办法也很简单,在合适的时机修改使用的着色器精度为highp即可
(如果用插件实现,这个时机比较难拿捏,我这里只是提供一种参考,如果直接修改pixi.js那有很多方法搞定)

AndroidFixMV.zip (748 Bytes, 下载次数: 18)

评分

参与人数 1赞 +1 收起 理由
灯火长明 + 1 精品文章

查看全部评分

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部