Can';在HTML5中运行cocos2d javascript精灵的Ripple3D动作

Can';在HTML5中运行cocos2d javascript精灵的Ripple3D动作,javascript,html,cocos2d-js,Javascript,Html,Cocos2d Js,我正在尝试运行Ripple3D操作: var mySprite = new cc.Sprite(res.SPRITE); mySprite.runAction(cc.ripple3D(5.0, cc.size(400,400), cc.p(200,200), 50, 4, 100)); 但我明白了: 未捕获的TypeError:这是。\u gridNodeTarget.getGridRect不是函数 这必须特定于cc.size()或ripple3D,因为像MoveBy或RotateBy这样的操

我正在尝试运行
Ripple3D
操作:

var mySprite = new cc.Sprite(res.SPRITE);
mySprite.runAction(cc.ripple3D(5.0, cc.size(400,400), cc.p(200,200), 50, 4, 100));
但我明白了:

未捕获的TypeError:这是。\u gridNodeTarget.getGridRect不是函数

这必须特定于
cc.size()
ripple3D
,因为像
MoveBy
RotateBy
这样的操作一切都很好


我正在使用cocos2djavascript 3.0。为Web编译cocos控制台。在Google Chrome、Mac OSX Yosemite上进行测试。

我以前没有使用过此效果,但查看引擎示例文件夹中的EffectsTest.js,我发现它们使用NodeGrid来实现此效果

var node = new cc.Node();
var nodeGrid = new cc.NodeGrid();
nodeGrid.addChild(node);
nodeGrid.runAction(cc.ripple3D(duration, cc.size(32, 24), cc.p(winSize.width / 2, winSize.height / 2), 240, 4, 160););
this.addChild(nodeGrid);
// back gradient
var gradient = new cc.LayerGradient(cc.color(0, 0, 0, 255), cc.color(98, 99, 117, 255));
node.addChild(gradient);

// back image
var bg = new cc.Sprite(s_back3);
bg.x = winSize.width / 2;
bg.y = winSize.height / 2;
node.addChild(bg);
代码本身就说明了一点,所以我希望它能帮助您