cocos2dx3.17.2使用spine 3.6.39导出的文件时,裁剪功能(遮罩,clipping)在程序里不好用问题

是因为spine runtime3.6版本里面有个bug,需要手动修改下或者升级一下spine runtime,我这边为了方便当然选择修改了,没有时间升级,下面附上修改方法

原文为frameworks\cocos2d-x\cocos\editor-support\spine\SkeletonRenderer.cpp里面的269行附近

case SP_ATTACHMENT_CLIPPING: {
            spClippingAttachment* clip = (spClippingAttachment*)slot->attachment;
            spSkeletonClipping_clipStart(_clipper, slot, clip)  
        }
        default:
            spSkeletonClipping_clipEnd(_clipper, slot);
            continue;
        }

修改为

case SP_ATTACHMENT_CLIPPING: {
            spClippingAttachment* clip = (spClippingAttachment*)slot->attachment;
            spSkeletonClipping_clipStart(_clipper, slot, clip);
            continue; //增加此行
        }
        default:
            spSkeletonClipping_clipEnd(_clipper, slot);
            continue;
        }

修改完之后编译一下c++代码,然后再试一下就好了

本文方法来源于

http://zh.esotericsoftware.com/forum/Clipping-features-is-not-avialible-in-cocos2d-x-runtime-9260

https://github.com/EsotericSoftware/spine-runtimes/issues/984

posted @ 2022-04-03 11:52  微光0709  阅读(762)  评论(0)    收藏  举报