cocos2dx自学之 动作特效与场景切换特效

直接上 示例代码了


//抖动特效
	/*auto role=NodeGrid::create();
	role->addChild(Sprite::create("HelloWorld.png"));
	role->setPosition(visibleSize/2);
	addChild(role);*/
	//抖动特效 参数1是抖动时间 参数3是抖动程度
	//role->runAction(Shaky3D::create(10,Size(50,50),5,false));
	//网格特效 size :切割50X50块  5:执行5秒
	//role->runAction(ShakyTiles3D::create(10,Size(50,50),5,false));
	//爆炸特效  参数1是爆炸时间 其余未知
	//role->runAction(ShuffleTiles::create(1,Size(50,50),5));
	//顺序执行先抖动再爆炸效果
	/*auto doudong = Shaky3D::create(1,Size(50,50),10,false);
	auto baozha = ShuffleTiles::create(1,Size(50,50),5);
	role->runAction(Sequence::create(doudong,baozha,NULL));*/
	//碎片消失效果
	//role->runAction(TurnOffTiles::create(1,Size(50,50),25));
	//波纹效果
	//role->runAction(Waves3D::create(2,Size(15,10),5,40));
	//波纹效果执行完毕后恢复原来效果
	/*auto w1 = Waves3D::create(2,Size(15,10),5,40);
	auto w2 = Waves3D::create(2,Size(15,10),5,0);
	role->runAction(Sequence::create(w1,w2,NULL));*/

	/***************************************场景切换特效**************************************/
	/*auto background = Sprite::create("bg.jpg");
	background->setPosition(visibleSize/2);
	addChild(background);
	//创建文字
	/*LabelTTF *label = LabelTTF::create("more eat with the shit!Dou Bi Song!", "Consolas", 40);
	label->setPosition(visibleSize.width / 2, visibleSize.height / 2);
	addChild(label);*/

	/*scheduleOnce([visibleSize](float f){
		auto newScene = Scene::create();
		auto newBackground = Sprite::create("bg2.jpg");
		newBackground->setPosition(visibleSize/2);
		newScene->addChild(newBackground);
		//创建特效
		//auto t = TransitionCrossFade::create(1,newScene); //淡出切换效果
		//auto t = TransitionZoomFlipAngular::create(1,newScene);//反转特效
		//auto t = TransitionPageTurn::create(1,newScene,false);//翻页特效 true and false切换不同翻页特效
		//auto t = TransitionProgressRadialCW::create(1,newScene); //顺时针特效
		auto t = TransitionSplitRows::create(1,newScene);//拆分特效
		Director::getInstance()->replaceScene(t);//执行特效   
	},2,"Test");*/


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Cocos2d-x中实现流光效果可以使用shader来进行渲染。首先,我们需要创建一个自定义的shader,并将其应用于需要实现流光效果的节点上。 在使用Cocos2d-x的过程中,我们可以使用GLSL语言编写shader代码。在实现流光效果的shader中,我们可以通过改变像素的颜色和透明度来创建流动的效果。 首先,我们定义一个uniform变量time,用于控制流光的移动速度。然后,在片段着色器中,通过改变颜色和透明度的计算公式来实现流动的效果。我们可以使用sin函数或者其他数学函数来计算出每个像素点的颜色和透明度,然后将其应用到节点上。 在节点的渲染流程中,我们将这个自定义的shader应用到节点上,然后传入时间参数,即更新uniform变量time的值。随着时间的增加,我们就可以看到节点上的流光效果在不断地移动。 为了实现更加逼真的流光效果,我们可以尝试给流光添加一些额外的效果,比如模糊、叠加等。通过调整shader代码中的计算公式和传入的参数,我们可以根据自己的需求来调整流光效果的强度和样式。 总结起来,在Cocos2d-x中实现流光效果需要创建一个自定义的shader,并将其应用于需要实现效果的节点上。通过改变颜色和透明度的计算公式、传入时间参数等,我们可以实现一个流光效果,使节点看起来具有流动的动画效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值