位置: 编程技术 - 正文

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)

  • 基本户可以直接转账给个人吗
  • 处置无形资产属于经营活动吗
  • 付款后发票可以抵扣吗
  • 酒销售账务处理
  • 跨区税源登记是指
  • 取得增值税专用发票要算税吗
  • 核定征收可以享受小微企业税收优惠吗
  • 企业可以不弥补以前年度亏损吗
  • 系统技术维护费计入什么科目
  • 交通费汇算清缴怎么做账
  • 个人以房抵债交税吗
  • 公司如何持续发展
  • 水果 增值税专票
  • 案例分析两个分公司转资金怎么做账?
  • 微信支付有优惠 系统异常
  • 应纳税所得额和应纳税额的区别
  • 房产税应当计入什么科目
  • 单位为员工缴纳社保分录
  • 资产损失税前扣除备查资料
  • 企业电子印章申请流程海口
  • 个人缴付年金的扣除限额
  • 企业筹建期间可以自己发农民工工资么
  • 车辆租赁费交的是什么税
  • linux ssh命令用法
  • 增值税专用发票有几联?
  • php header refresh
  • 预提收入的会计处理方法
  • yolov5s和yolov5m
  • 房产企业预售收入怎么做账务处理
  • 固定资产清理的借贷方向表示什么
  • thinkphp ajaxfileupload实现异步上传图片的示例
  • php 字符串处理函数
  • php zmq
  • python如何将字典中的键值互换
  • 帝国最新版本
  • 理财产品利息计算方法
  • 印花税需要扣除负数发票吗
  • php是什么
  • 个税汇算清缴时劳务报酬怎么计税
  • SQL中print、sp_helptext的限制与扩展
  • 净值是原值减去折旧吗?
  • 微信收款和支付宝收款有啥区别
  • mysql 随机取出一条
  • 个人所得税修改密码怎么改
  • 什么情况下企业亏损但继续生产
  • 开票限额相关规定最新
  • 固定资产报废时,后续未折旧额计入哪里
  • 企业运费如何开票
  • 奖金偶然所得税起征点
  • 印花税计入相关资产成本吗
  • 接受捐赠的固定资产进项税额可以抵扣吗
  • 单品毛利润计算方法
  • 企业购车购置税怎么算
  • 公益救济性捐赠应计入的会计科目是
  • 存货盘亏进项税额转出会计分录
  • sql server入门新手教程
  • 通过zeno实现加速屏幕显示操作教程
  • 戴尔电脑u盘快速启动
  • win8.1原版系统安装教程
  • mac不小心把硬盘删了怎么办
  • windows怎么右键
  • linux 常见
  • cocos2dx 3.4 lua加密 setXXTEAKeyAndSign
  • firefox下rowspan+border+border-collapse的bug
  • ajax成功不走success
  • bootstrap快速入门
  • 批处理加密工具
  • android开发范例实战宝典
  • jquery easyui 教程
  • js的调用函数
  • 瀑布流水风景图片
  • 丹麦个人所得税税率表
  • 股权转让申报期限
  • 税控盘开的电子票怎么发送给人
  • 新领取的发票怎么读入金税盘
  • 镇江市税务局官网
  • 公司购买车辆是什么费用
  • 2021沈阳车船税
  • 2023年河北居民养老保险缴费时间
  • 深圳机打发票查询
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设