如题,因为游戏要用到很多mask,但是drawcall飙升,所以如果能转换成spriteframe,用精灵显示就好多了
使用摄像机进行节点快照,生成一个renderTexture,之后你就可以利用这个renderTexture创建cc.SpriteFrame并且使用了
多谢大佬,这样是可行的。。。但是有个小问题…为什么我渲染出来的,比原先的要大上一些呢0.0
好像别人也遇到过,不过是cocos2dx的。。。我先试试看
如下
知道原因了,
是由于 Director::setDefaultValues(void)内的默认的投影,projection == “3d”,
这就造成RenderTexture 生成的图像,距离屏幕中心越远时候,看起来会和直接addchild的模式pos相差越远。
在屏幕4个角落位置最明显
投影矩阵改成2D模式就行了
废弃了。。。没有找到怎么改。。。大佬求助
大佬,求助
一个遮罩 dc+2!
是的啊,用camera渲染出来的,又比之前大一些