cocos图片描边的方法
来源:互联网 发布:淘宝店申请步骤 编辑:程序博客网 时间:2024/05/21 08:44
- CCRenderTexture* createStroke(CCSprite* label, int size, ccColor3B color, GLubyte opacity)
- {
- CCRenderTexture* rt = CCRenderTexture::renderTextureWithWidthAndHeight(
- label->getTexture()->getContentSize().width + size * 2,
- label->getTexture()->getContentSize().height+size * 2
- );
- CCPoint originalPos = label->getPosition();
- ccColor3B originalColor = label->getColor();
- GLubyte originalOpacity = label->getOpacity();
- bool originalVisibility = label->getIsVisible();
- label->setColor(color);
- label->setOpacity(opacity);
- label->setIsVisible(true);
- ccBlendFunc originalBlend = label->getBlendFunc();
- ccBlendFunc bf = {GL_SRC_ALPHA, GL_ONE};
- label->setBlendFunc(bf);
- CCPoint bottomLeft = ccp(
- label->getTexture()->getContentSize().width * label->getAnchorPoint().x + size,
- label->getTexture()->getContentSize().height * label->getAnchorPoint().y + size);
- CCPoint positionOffset= ccp(
- - label->getTexture()->getContentSize().width / 2,
- - label->getTexture()->getContentSize().height / 2);
- CCPoint position = ccpSub(originalPos, positionOffset);
- rt->begin();
- for (int i=0; i<360; i+= 15) // you should optimize that for your needs
- {
- label->setPosition(
- ccp(bottomLeft.x + sin(CC_DEGREES_TO_RADIANS(i))*size, bottomLeft.y + cos(CC_DEGREES_TO_RADIANS(i))*size)
- );
- label->visit();
- }
- rt->end();
- label->setPosition(originalPos);
- label->setColor(originalColor);
- label->setBlendFunc(originalBlend);
- label->setIsVisible(originalVisibility);
- label->setOpacity(originalOpacity);
- rt->setPosition(position);
- return rt;
- }
文字描边的函数,下面是使用方法:
- CCSprite* sprite = CCSprite::spriteWithFile("some_sprite.png");
- addChild(sprite);
- CCRenderTexture* tex = createStroke(sprite, 2 /*size*/, ccc3(0, 255, 0)/*color*/, 50 /*opacity*/);
- addChild(tex, sprite->getZOrder() - 1);
0 0
- cocos图片描边的方法
- cocos图片描边的方法
- cocos 导入图片 变模糊的解决方法
- 3.2 cocos studio的绑定方法
- cocos移植安卓的方法
- cocos3.3导入cocos studio 的方法
- Cocos Sprite创建的5种方法
- cocos-Lua解析消息的方法
- Cocos Creator跨平台的调用方法
- cocos ui的text设置描边的问题。
- cocos android 上传图片
- cocos ios上传图片
- cocos 一个描边shader
- cocos-Lua中Sprite与ImageView加载图片的区别
- cocos lua绑定感悟---tolua_isusertable及lua如何访问cocos静态函数的方法
- cocos js api的一些好用的方法
- cocos-圆周运动 物理方法
- lua cocos class方法
- Binary Tree Maximum Path Sum
- android4.0下serial port给应用操作完成特殊定制
- 发大水发生的个
- Linux Makefile.txt 分析
- java逐行读逐行写
- cocos图片描边的方法
- arduino pro mini 迷你 ATmega328P 程序下载 usb-ttl reset
- 利用柯西不等式求函数的最大最小值
- 将图片拷贝到三星note 3上
- [IOS]从相册或相机获取图片
- 关于this引用
- jdbctemplate
- 算法:求连续子数组的最大和
- Hadoop ecosystem HDFS and HDFS2