关于Lua ClippingNode裁剪

关于裁剪,这个我有遇到一个坑(3.4)的,在做裁剪的时候,整个背景色都是灰色,没有裁剪效果,C++上是可以正常运行,显示裁剪效果,但是用Lua就没有,我找了半天也没有找到原因,。最后在一片文章中看到了这样一句话:

需要在初始化app的时候,添加如下代码:

    _app = new AppDelegate();
<span style="color:#ff0000;">	_app->initGLContextAttrs();</span>

需要手动添加红色字体哪行代码就可以了。
	local visibleSize = cc.Director:getInstance():getVisibleSize()

	local background = cc.Sprite:create("HelloWorld.png");
	background:setPosition(cc.p(visibleSize.width / 2, visibleSize.height / 2));
	self:addChild(background, kTagBackground);

	local clip = cc.ClippingNode:create()
	clip:setInverted(true)
	clip:setAlphaThreshold(0.0)
	self:addChild(clip, kTagClipNode)

	local back = cc.LayerColor:create(cc.c4b(0, 0, 0, 200))
	clip:addChild(back)

	--以下模型是带图像遮罩
	local nodef = cc.Node:create()
	local close = cc.Sprite:create("CloseSelected.png");
	nodef:addChild(close)
	nodef:setPosition(cc.p(visibleSize.width / 2, visibleSize.height / 2))
	clip:setStencil(nodef)

你可能感兴趣的:(关于Lua ClippingNode裁剪)