请教个游戏里js 加载网络图片问题图片的问题

cocos2dx(8)
&&&&&&&&& 最近做游戏的时候,图片出现了黑线的问题,原因不明,从美术的原图,和用美术打包成的图片在ps里面打开看,都是正常的,无黑边的。
&&&&&&&&& 所以出现这个问题的可能性太多,可猜测的原因包括:
程序方面的可能原因:
&&&&&&& 现在用的是cocos2dx引擎,和cocos studio编辑器,是否在渲染的时候,程序里面有一个叫预乘(ALPHA_NON_PREMULTIPLIED;)的flag,程序里面默认是true的,同时也要求编译器和打包的时候都是true的,如果不是true的话,就会显示错误。还有可能乘了两次,就会出现黑边了
美术方面的原因:
&&&&&&& 在绘画的时候画出了黑边,或者用texpacker打包的时候没有统一规则,有的选了ALPHA_PREMULTIPLIED,有的没选,在编辑器里面是看不出来的,但是一旦到了程序里面就出现黑边了。
解决过程:
&&&&&& 上网找了相关的资料,改了cocostudio的代码,把一些ALPHA_NON_PREMULTIPLIED改为ALPHA_PREMULTIPLIED,可是没用,
&&&&& 看看了李华明himi的解决办法,但是他的问题与我的问题都是黑边问题,但又有些不同,但我还是试了试,还是不行,他的关于黑边文章的链接是:
&&&&& 尝试了各种办法,终不能解,我陷入了迷茫,最后我仔细分析了一下问题,就是图片原图直接加载到游戏中是没有黑边的,只要打包之后就不行,但是这里有一个坑,误导了我,就是打包图中,其它图片都是好的,只有其中一张图片有黑边,我在想难道是美术画的时候有什么不同。不过不管怎么说,问题一定出现在打包上,在设置上有问题,当我仔细的看了看texpacker的设置的时候看到了一项设置是Reduce
Border artifacts:关于它的使用说明中有一项是,在不选择ALPHA_PREMULTIPLIED选项时,选择了Reduce Border artifacts可以去掉黑边,之前是没有被选择的,我尝试着在这个选项上打了个沟,如图
导入场景后,没有黑边,完美解决了这个问题。
请美术同学注意了,在用texpacker打包的时候,如果选择ALPHA_PREMULTIPLIED,应该没什么问题,但是如果没有勾选这个选项,那么一定要把Reduce Border artifacts选项勾选上,否则会出现黑边

参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:6730次
排名:千里之外
转载:49篇
(4)(9)(1)(1)(1)(7)(26)(5)(2)2002年5月 Delphi大版内专家分月排行榜第一2002年1月 Delphi大版内专家分月排行榜第一
2007年11月 .NET技术大版内专家分月排行榜第二2007年1月 Delphi大版内专家分月排行榜第二2006年12月 Delphi大版内专家分月排行榜第二2006年10月 Delphi大版内专家分月排行榜第二2002年8月 Delphi大版内专家分月排行榜第二2002年6月 Delphi大版内专家分月排行榜第二2001年12月 Delphi大版内专家分月排行榜第二
2011年10月 其他开发语言大版内专家分月排行榜第三2010年8月 其他开发语言大版内专家分月排行榜第三2007年5月 其他开发语言大版内专家分月排行榜第三
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。

我要回帖

更多关于 js 加载网络图片问题 的文章

 

随机推荐