(1)首先要创建模板的精灵:
创建模板是用来遮掩或者显示当前模板的范围的。
Sprite* spritemb = Sprite::create("messageBoard.png");
(2)然后使用刚才创建的模板精灵来创建模板,并将spritemb使用addChild()添加到模板中:
Node* stencil = Node::create(); stencil->addChild(spritemb);
(3)创建ClippingNode,同时使用模板:
ClippingNode* cn = ClippingNode::create(stencil);
(4)为ClippingNode设置一些属性
//设置使用模板来隐藏或者显示指定区域 cn->setInverted(false); //设置Alpha阀值 cn->setAlphaThreshold(0.05f); //设置位置、锚点 cn->setAnchorPoint(Vec2(0, 0)); cn->setPosition(Vec2(0, 0));
(5)为ClippingNode添加底板(底板是需要被遮掩的精灵)
cn->addChild(batch);
(6)讲ClippingNode添加到场景
this->addChild(cn);
时间: 2024-10-28 14:56:15