位置: 编程技术 - 正文

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)

  • 购入安装设备的专用材料分录
  • 小规模免征增值税政策
  • 债权投资减值对摊余成本和利息收入的影响
  • 可转债如何不转换的财务处理
  • 国内旅客运输票据
  • 事业单位固定资产管理办法
  • 业务收入和营业收入关系
  • 没有外币账户可以收外币吗
  • 网上申报中月平均工资怎么计算
  • 农产品核定扣除增值税进项税额计算表
  • 回收废品残料会计分录
  • 虚开发票企业所得税怎么补缴税?
  • 零余额账户收到钱怎么办
  • 电商一定要注册公司吗
  • 车间领用周转材料会计分录怎么写
  • 出口退税是按进项税额吗
  • 进项税额转出报税填哪个表
  • 民办非企业是否可以出资设立公司
  • 外地培训产生的费用
  • 必要报酬率的计算公式Rm
  • 过路费可以抵税吗
  • 返修产品如何账务处理
  • 增值税专用发票查询系统官方网站
  • 该设备正在使用中怎么关闭u盘
  • office com组件修复
  • bios中英文对照表图新版
  • 购买增值税税控系统专用设备账务处理
  • 外汇业务的核算ppt
  • 受赠与获赠的区别
  • echarts地图tooltip
  • 营业执照年检认缴和实缴怎么填
  • 结转未交增值税为什么是零
  • thinkphp curl
  • 小微企业人员认定标准
  • 暂估原材料的数量怎么算
  • php框架怎么用
  • php 时间
  • mkdir命令怎么用
  • 国际货运代理存在的必要性有哪些方面
  • 错误日志怎么修复
  • 给股东分配股利
  • mongodb删除文档命令
  • Linux sqlite3 基本命令
  • 河南巩义黄河治理项目土方工程有哪些
  • 保理公司会计核算讲解
  • 产假工资扣税
  • 账务核对包括哪些内容
  • 资本公积怎么核算成本
  • 4s店送的赠品怎么样
  • 研发支出资本化支出期末怎么处理
  • 装修费用会计科目
  • 买一赠一销售额的确定
  • 公司注册取消验资
  • 合同取得成本如何收回
  • mysql column is ambiguous
  • mysql 错误1067
  • sqlserver2000删除注册表
  • centos7挂载cdrom
  • ghost后恢复
  • windowmsgserver32是什么
  • 系统运行缓慢解决方法
  • 安装软件时提示无法访问网络位置
  • 微软输入法拼音
  • windows8 应用商店
  • win10个性化颜色在开始任务栏选不了
  • 屏幕适配android常用方法
  • 批处理自动关机命令
  • 文本框几种常用属性
  • jquery和html的关系
  • linux shell 循环语句
  • sed基本用法
  • jquery 鼠标悬浮显示文字
  • node.js使用教程
  • 简述activity的生命周期中有哪几种状态
  • js数组的push方法
  • 山东省国家税务局总局官网
  • 免征的增值税税额应计入营业外收入嘛
  • 湖北省税务申报流程 个体户
  • 营商环境法治保障服务
  • 增值税专用发票和普通发票的区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设