微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

coco2d ClippingNode制作不规则血条

最近在学cocos2d,发现一些血条的形状可能不是规则的,如果用缩放进行血条的制作,就会在缩放的过程中产生形变。

这是就需要用到节点裁剪。 就是cocos2d::ClippingNode


参见http://cn.cocos2d-x.org/article/index?type=cocos2d-x&url=/doc/cocos-docs-master/manual/framework/native/v3/ClippingNode/zh.md介绍cocos2d::ClippingNode

大致思想是设置一个裁剪面,透过裁剪面看底板的内容,可以通过update移动裁剪面,达到模拟血条的效果

裁剪面是一个大于等于血条的图片或者Box...



大致代码如下。。。。。。

加入全局

static float aa = 320;

HelloWorld init()加入
	stencil = Sprite::create("sp_zdymUI-qt_44.png");
	stencil->setScale(1);//2
	 clipper = ClippingNode::create();
	clipper->setStencil(stencil);//设置裁剪模板 //3
	clipper->setInverted(true);//设置底板可见
	this->addChild(clipper);//4

	auto content = Sprite::create("sp_zdymUI-qt_41.png");//被裁剪的内容
	clipper->addChild(content);//5

	clipper->setPosition(Vec2(visibleSize.width / 2,visibleSize.height / 2 ));
	scheduleUpdate();


void HelloWorld::update(float dt)
{
	aa =aa- 0.1;
	stencil->setPositionX(aa);
}

原文地址:https://www.jb51.cc/cocos2dx/345937.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐