你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
输入关键字进行搜索
搜索:
没有找到相关结果
devilsome
赞同来自: jxfcwys
赞同来自:
要回复问题请先登录
2 个回复
devilsome
赞同来自: jxfcwys
重现流程如下:
1. 异步加载纹理资源
2. 加载完成后在custom shader中初始化纹理的uv
3. 纹理被重新合并到大图集,导致自身uv发生改变
4. 在custom shader中的初始化的uv出错(默认uv和大图集中的uv不一致)
有方法可以解决,但比较麻烦,
1. 监听laya.events.Event.RECOVERED,监听纹理合并结束的消息,再创建custom sprite
2. 关闭纹理的自动图集合并
如果想看到正常的图片,可以修改一下代码
在你的sprite中,把uv设置修改为texture中的uv
在纹理加载完成后,延时几秒等图集合并结束再创建你自己的sprite就可以了。
devilsome
赞同来自:
shader错了,pos处理没有加上世界坐标变换,要乘上mmat
如下
vec4 pos =mmat*vec4(position.x,position.y,0,1);