cocos2d-x 节点裁切

屁话就不多说了,直接上干货:

    Size visibleSize = Director::getInstance()->getVisibleSize();
    CCSprite* bg = CCSprite::create("mainbg.jpg");//一张背景图,没啥卵用
    bg->setPosition(visibleSize / 2);
    addChild(bg);

    CCSprite* node = CCSprite::create("node.png");//根据此精灵来裁切
    //创建裁切节点
    CCClippingNode* clipNode = CCClippingNode::create();
    clipNode->setPosition(visibleSize/2);
    this->addChild(clipNode);

    clipNode->setStencil(node);
    clipNode->setInverted(true); //为true,被裁剪部分不可见,剩余部分可见,为false,被裁剪部分可见,剩余部分不可见
    clipNode->setAlphaThreshold(0); // 设置绘制模板的Alpha通道,为1时,根据节点的ContentSize来裁剪(自认为是这样,其实并不知道有卵用)
    clipNode->setContentSize(node->getContentSize());
    clipNode->addChild(node, 1);

    Sprite* clipedSp = Sprite::create("blackbg.png");//被裁切的东东
    clipNode->addChild(clipedSp, 2);

效果如图:
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值