Shader学习案例,2D翻转/伪3D效果

坐等3.x!

fake3DEffect.rar (4.2 KB)
3.8.3

尝试添加了一个3.8.3的版本 翻转效果/伪3D效果

大佬6啊,为什么你们这么强

效果很好
:grinning:
如果节点或父节点有缩放,就有问题了,如果不自己传缩放信息过来,
还有其他好的解决方案吗??

大概 textureSize 导致的

我没找到 cocos shader 中直接获得图片大小的方式,所以在代码中设置 textureSize

修改 scalethis.node.width/height 是没有变化的,图片实际大小和shader中用于计算的大小不同导致的问题。

又看了下,应该是没问题的,我自己搞错了,我没仔细看代码,你在onMouseEnter, onMouseLeave中重置了姐节点的缩放,这里改下start的时候记录下原来的测试没问题,父节点缩放也不影响,是我的问题. :joy:

单图的话没问题,对spine会出问题,spine都成碎图了。

我用3.8.2打开的,把脚本挂载在图片节点上,进游戏只能看到1/4的图片的,那种放大的效果是有的,但是因为图片不全,所以不知道实际如何。

嗯,,这个是对 Sprite 写的。

是的,是投影矩阵在spine动画上转换导致的。看看能否解决下这个问题,解决不了就得让美术搞了。

感觉涉及 顶点着色器 修改的话 Spine 就会出问题,我也只是在学习 Shader 中做的效果。

还没试过给 Spine 加这种 Effect效果,所以也不清楚怎么解决,之后有空了学习一下。

你要是急的话,还是先让美术来吧,或者问问别的大佬。

最后是以非美术方式解决的话,可以的话记得来教教我,求教。

1赞

没搞明白,换方案了,把要渲染的spine暂停播放,然后渲染到一张texture上,然后再对texture做操作了。
谢谢你

spine 实际上渲染很多小图片的。

所以 涉及到 UV顶点 操作的 Shader 用在 Spine 上就会有问题吧。

2赞

spine 应该是修改顶点来实现多个图片展示的。

为啥 我加上去之后点卡牌就是变大

点卡牌变大 是脚本里写的,所以是Effect没效果吗?

是的 不知道是我哪里搞错了

描述不清楚的话,发个demo看看呢?