cocos2dx-3.2 3DAction 一些3D特效

cocos2dx-3.2 3DAction 一些3D特效,第1张

概述网格属性就像是一个个交叉形成的一系列的矩形。任何Node对象(Layer,Scene,Sprite等等)都具有这种特殊的属性,你可以通 过移动他们的顶点来变换这些网格。 有两种类型的网格:平铺的网格和非平铺的网格。他们两者的区别是平铺的网格由单个的网格组成,而非平铺的网格是由顶点组成。 继承于Grid3DAction的为非平铺网格,继承于TiledGrid3DAction的为平铺网格,自然产生的效

网格属性就像是一个个交叉形成的一系列的矩形。任何Node对象(Layer,Scene,Sprite等等)都具有这种特殊的属性,你可以通

过移动他们的顶点来变换这些网格。

有两种类型的网格:平铺的网格和非平铺的网格。他们两者的区别是平铺的网格由单个的网格组成,而非平铺的网格是由顶点组成。

继承于GrID3DAction的为非平铺网格,继承于TiledGrID3DAction的为平铺网格,自然产生的效果不同, 下面来看看都有哪些?


1、Shaky3D(晃动特效)、ShakyTiles3D(瓷砖晃动特效)
ShakyTiles3D参数及用法与Shaky3D一模一样的。

[cpp] view plain copy @H_419_50@ /** *创建一个3D晃动的特效 *duration:持续时间(时间过后不会回到原来的样子) *grIDSize:整个屏幕被分成几行几列 *range:晃动的范围 *shakeZ:z轴是否晃动 *看源码晃动范围range为网格的上的位置: for(i=0;i<(_grIDSize.wIDth+1);++i) { for(j=0;j<(_grIDSize.height+1);++j) Vertex3Fv=getoriginalVertex(Vec2(i,j)); v.x+=(rand()%(_randrange*2))-_randrange; v.y+=(rand()%(_randrange*2))-_randrange; if(_shakeZ) { v.z+=(rand()%(_randrange*2))-_randrange; } setVertex(Point(i,j),v); } */ /**createstheactionwitharange,shakeZvertices,agrIDandduration*/ @H_419_50@ staticShaky3D*create(floatduration,constSize&grIDSize,intrange,87); background-color:inherit; Font-weight:bold">boolshakeZ);

2、Waves3D(波浪特效)、WavesTiles3D(瓷砖波浪特效)、Waves(带方向的波浪特效,水平与垂直)
WavesTiles3D参数及用法与Waves3D一模一样的。

copy *创建一个3D波浪的特效 *waves:波动的速率 *amplitude:振幅 /**createsanactionwithduration,grIDsize,wavesandamplitude*/ staticWaves3D*create(intwaves,87); background-color:inherit; Font-weight:bold">floatamplitude);
Waves的参数说明
copy *duration:持续时间(时间过后不会回到原来的样子) *grIDSize:整个屏幕被分成几行几列 *waves:波动的速率 *amplitude:振幅 *horizontal:是否是水平方向 *vertical:是否是垂直方向 */ /**initializestheactionwithamplitude,horizontalsin,verticalsin,agrIDandduration*/ staticWaves*create(floatamplitude,87); background-color:inherit; Font-weight:bold">boolhorizontal,87); background-color:inherit; Font-weight:bold">boolvertical);
3、FlipX3D(X轴翻转动画)、FlipY3D(Y轴翻转动画)
FlipX3D与FlipY3D一样,给一个时间单位,在此时间内绕X轴或Y轴旋转。

copy *创建一个x轴翻转精灵的动画 /**createstheactionwithduration*/ staticFlipY3D*create(floatduration);
4、Lens3D(凸镜特效)
copy *创建一个凸镜特效 *grIDSize:网格大小 *position:凸镜中心点 *radius:半径 /**createstheactionwithcenterposition,radius,agrIDsizeandduration*/ staticLens3D*create(constPoint&position,87); background-color:inherit; Font-weight:bold">floatradius);
5、Ripple3D(水波特效)
copy *创建一个水波特效 /**createstheactionwithradius,numberofwaves,amplitude,153); background-color:inherit; Font-weight:bold">staticRipple3D*create(floatradius,87); background-color:inherit; Font-weight:bold">floatamplitude);
6、liquID(液体特效) 和Waves3D的参数一样


copy *创建一个3D液体的特效 /**createstheactionwithamplitude,153); background-color:inherit; Font-weight:bold">staticliquID*create(floatamplitude);
7、Twirl(扭曲旋转特效)
copy *创建一个扭曲的特效 *position:扭曲中心位置 *twirls:扭曲的数量 staticTwirl*create(inttwirls,87); background-color:inherit; Font-weight:bold">floatamplitude);

8、ShatteredTiles3D(破碎的3D瓷砖特效)
copy *创建一个破碎的3D瓷砖的特效 *nRange:晃动的范围 *bShatterZ:z轴是否晃动 staticShatteredTiles3D*create(intnRange,87); background-color:inherit; Font-weight:bold">boolbShatterZ);

9、ShuffleTiles(瓷砖洗牌特效) copy *创建一个瓷砖洗牌的特效 *seed:随即速度基数(即会用此值作为底数来随机产生值) /**createstheactionwitharandomseed,thegrIDsizeandtheduration*/ staticShuffleTiles*create(intseed);

9、FadeOutTRTiles、FadeOutBLTiles、FadeOutUpTiles、FadeOutDownTiles
FadeOutTRTiles :淡出效果, 从左下角到右上角

FadeOutBLTiles :淡出效果, 从右上角到左下角

FadeOutUpTiles :折叠效果, 从下到上

FadeOutDownTiles :折叠效果 从上到下

他们函数参数意义一样


copy *淡出效果,从左下角到右上角 *duration:时间 *grIDSize:网格大小 /**createstheactionwiththegrIDsizeandtheduration*/ staticFadeOutTRTiles*create(constSize&grIDSize);

10、TurnOffTiles(方块消失特效 )
提供了两个函数接口,多用的面一种,参数参照前面的

copy /**createstheactionwiththegrIDsizeandtheduration*/ staticTurnOffTiles*create(constSize&grIDSize); @H_419_50@ intseed);
11、SplitRows、SplitCols
SplitRows :分多行消失特效

SplitCols :分多列消失特效


copy *rows:行数 SplitRows::create(introws) *cols:列数 SplitCols::create(intcols)

12、PageTurn3D
copy PageTurn3D:3D翻页特效,从右下角往左上角翻 /** *grIDSize:网格大小 PageTurn3D::create(constcocos2d::Size&grIDSize) 总结

以上是内存溢出为你收集整理的cocos2dx-3.2 3DAction 一些3D特效全部内容,希望文章能够帮你解决cocos2dx-3.2 3DAction 一些3D特效所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1001642.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存