位置: 编程技术 - 正文

cocos2dx中使用JPG图和只带Alpha的PNG图合成渲染(cocos2d怎么用)

编辑:rootadmin
手游控制安装包的大小是非常重要的,这里介绍一种方法。将带Alpha通道的PNG图片分拆成RGB和Alpha分别保存,其中保存RGB的这张图把它转换成JPG&#;式的文件,保存Alpha图片的就用PNG&#;式的。原理是JPG&#;式的压缩率比较的高可以减小图片的大小,但是它没有Alpha,而Alpha数据单独拎出来一般比较小,所以直接用PNG&#;式来保存。问题是怎样分拆PNG图片,又怎样在程序中怎样将两张图片的数据合并起来以达到和直接用一张带Alpha的PNG图渲染出来是一样的效果。这里提供我自己的方法,给大家参考下,有错误的地方希望大家指出来,谢谢!

推荐整理分享cocos2dx中使用JPG图和只带Alpha的PNG图合成渲染(cocos2d怎么用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cocos导入图片,cocos2dx 图集,cocos2dx文档,cocos2dx 图集,cocos2djs,cocos2djs,cocos2djs,cocos2djs,内容如对您有帮助,希望把文章链接给更多的朋友!

  1. 将PNG图片分拆,也就是将一张PNG图片生成出一张带RGB的JPG&#;一张带Alpha的PNG,我使用的工具是imagemagick。这里以bg.png为例:

    首先ImageMagick工具提取出Alpha通道,(命令: convert bg.png -channel A -alpha extract bgAlpha.png)

    然后在将bg.png转成JPG&#;式 输出为bg.jpg。jpg&#;式已经不包含Alpha通道,而且jpg的压缩率比较高(这是采用这种方法可以减小图片大小的根本所在)。(convert bg.png bg.jpg)

  这样就得到了bg.jpg 和bgAlpha.png,这两张图片就是我们需要的资源。这样转换之后bg.jpg&#;bgAlpha.png的大小大概比bg.png的 小2~3倍

  2. 在程序中合成

cocos2dx中使用JPG图和只带Alpha的PNG图合成渲染(cocos2d怎么用)

   由于在win,Android平台采用的JPG和PNG解析库和IOS上的不同,所以在程序中要分别处理,这里介绍下在IOS上的方法(win和Android平台解析参照CCImage的_initWithJpgData和_initWithPngData 方法,合并和IOS的平台类&#;,不同地方文中会指出), 这个方法添加在CCImage.mm 文件中即可使用(cocos2dx版本是2.2.2)。

   

这个方法执行之后bg.jpg和bgAlpha.png合并完成,当前的CCImage对象生成的纹理就和直接用bg.png初始化后生成的纹理效果是一样的了。

  另外附上一个将png图片分拆成Jpg和Alpha的shell脚本(shell不太熟,将就着用^_^),使用这个脚本的前提是你已经安装了imagemagick,这个脚本运行之后会遍历当前目录下的所有png文件,然后分拆这些文件,并且会删除原png文件。(如果不想删除原png文件,把`rm $src`去掉即可)

 

cocos2dx-js 集成google play service和admob--------错误处理 官方解决方案在这里去google但是有很多细节上面没有提起。如何导入googleservicelib首先将google-play-services_lib拷贝到自己的android工程目录下。千万不要第一

cocos2dx 按钮重复渐变效果的实现 想实现一个按钮,在未选中前进行重复的动画效果,试了下直接发代码吧:boolMenuItemSpritTest::init(){////////////////////////////////1.superinitfirstif(!Layer::init()){retu

cocos2d-x改底层之获取UIListView的实际内容大小 实际项目中UI界面中经常会用到UIListView,大多会在CocoStudio中直接添加这个控件。但是在使用中发现了一些坑和功能缺乏,然后就看了一下底层的逻辑,

标签: cocos2d怎么用

本文链接地址:https://www.jiuchutong.com/biancheng/368809.html 转载请保留说明!

上一篇:cocos2dx 多分辨率适配(cocos2dx适配)

下一篇:cocos2dx-js 集成google play service和admob--------错误处理(cocos2dx 3.17)

  • 季度所得税计提
  • 什么是一般业务
  • 税务稽查最坏结果不知情人员怎么办
  • 税务师2022年考试成绩
  • 向银行借入短期借款偿还前欠货款
  • 补贴收入企业所得税
  • 公司在筹备阶段可以不交社保
  • 一般纳税人普票怎么做分录
  • 可以税前扣除的商业健康保险有哪些
  • 母公司向子公司出售不动产要征收增值税吗
  • 处理企业的财产有哪些
  • 企业卖旧房如何计算缴纳土地增值税
  • 购买的固定资产什么时候折旧
  • 其他综合收益转入留存收益还是投资收益
  • 冲销应收账款会引起
  • 月底结转都结转什么
  • 委托贷款对方单位不还
  • 外资企业所得税税率25
  • 小规模纳税人未达起征点增值税处理
  • 企业购销业务流程包括哪些
  • 发票显示上传失败
  • 公司做账挂名字
  • 商品流通企业会计零售业务核算
  • 公司的固定资产如何转变为股东资产
  • 进项税转出如何做分录
  • 收到增值税发票怎么记账
  • 员工退回多发的工资,是上缴国库还是财政专户
  • 合并报表抵消分录实例
  • 广告业进项都能开什么票
  • linux文件管理与常用命令实验报告
  • 咨询服务费怎么交税
  • 已缴税额比应纳税额多
  • 不动产税费
  • 复制快捷键ctrl+c
  • 电脑桌面上的图片怎么打印
  • 基础知识讲解
  • 房产前期开发
  • 中医诊所的税收分类编码
  • 投标须知所包括的内容有哪些
  • 哪些发票是成品发票
  • 一般纳税人只有进项怎么报税
  • phpcms使用教程
  • 不认定为一般纳税人的有哪些
  • 应收账款是否存在的审计程序
  • sql2008服务器
  • 增值税纳税申报类型有哪些
  • 个体户定额征收后还要报税吗
  • 企业促销费用项目有哪些
  • 结转生产成本的数据从哪来的
  • 合作社增值税免税项目
  • 研发折旧怎么分类
  • 发工资时多打给员工的钱
  • 疫情防控免税政策
  • 一般纳税人证明在哪里开具
  • 购买职工福利
  • 费用提前预支的请示
  • 对公收到几毛测试费怎么做账
  • 应收其他应收区别
  • 期末计提利息怎么算
  • 工业企业存货发出计价的方法
  • mysql安全性控制语句
  • vrvedp_m.exe是什么
  • retrorun.exe - retrorun有什么用 是什么进程
  • ie8-ie11浏览器
  • win7鼠标突然不能用了
  • win8如何使用
  • js与css有什么区别
  • Android使用opencv处理图片灰度
  • android 图片视频轮播框架
  • python编程内容
  • js复制div
  • 人力资源差额发票
  • 江苏省税务局官网电话
  • 重庆市网上税务局官网
  • 成都高新区税务局办税服务厅电话
  • 以房产作价投资入股如何处理
  • 北京国税app
  • 保税工厂和非保税工厂的区别
  • 新疆哪个城市最有发展前景
  • 内蒙民生认证系统
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设