Cocos2d-x 之使用 TexurePacker+Cocos Studio 协同工作

本文介绍了如何使用Cocos Studio搭建场景,并结合TexturePacker进行资源管理和打包,解决Cocos Studio与TexturePacker协同工作的兼容问题。关键点包括:设置TexturePacker的命名规则以匹配Cocos Studio的资源引用,以及在加载场景前预先加载TexturePacker打包的资源到缓冲区。
摘要由CSDN通过智能技术生成

写在前面

Cocos Studio 是 cocos2d-x 一个比较好用的编辑器,我们常用它来搭建场景 UI,导出场景文件和资源,然后在代码中直接加载场景文件。一般导出场景文件的时候会连同资源一起导出,场景文件保存了资源的读取方式,游戏启动时会根据这个读取方式正确找到资源并加载。将小图片打包成一张大图片,导出合图和 plist 文件,然后在程序中加载 plist 文件是一种比较常见和可行的方法。Cocos Studio 提供了打包合图的功能,能满足基本的需求。这两天使整个项目的图片打包和资源管理工作变得脚本化,自动化,还想对图片资源进行加密,Cocos Studio 已经满足不了需求了。使用 TexturePacker 能很好地解决问题,首先 TexturePacker 有脚本工具,可以使用脚本来自动打包图片;其次 TexturePacker 在打包图片的时候可以进行加密。但是,使用 Cocos Studio 和 TexturePacker 协同工作,有些坑我们不得不注意。

解密 csd

Cocos Studio 中的场景和层源文件都是 csd 格式,导出的文件是 csb 格式,csb 是二进制文件,它是 csd 文件编译后的结果,可以实现加密。我们重点关注的是 csd 文件的格式,使用文本编辑工具打开一个 csd 文件

<GameFile>
  <PropertyGroup Name="GameScene" Type="Scene" ID="8c1fcf53-2f4f-46bf-a636-8fc966e42aef" Version="3.10.0.0" />
  <Content ctype="GameProjectContent">
    <Content>
      <Animation Duration="0" Speed="1.0000" />
      <ObjectData Name="Scene" Tag="23" ctype="GameNodeObjectData">
        <Size X="800.0000" Y="600.0000" />
        <Children>
            <AbstractNodeData Name="user_text" ActionTag="593766283" Tag="15" IconVisible="False" LeftMargin="363.5000" RightMargin="363.5000" TopMargin="533.5000" BottomMargin="37.5000" FontSize="24" LabelText="的房子" ShadowOffsetX="2.0000" ShadowOffsetY="-2.0000" ctype="TextObjectData">
                <Size X="73.0000" Y="29.0000" />
                <AnchorPoint ScaleX="0.5000" ScaleY="0.5000" />
                <Position X="400.0000" Y="52.0000" />
                <Scale ScaleX="1.0000" ScaleY="1.0000" />
                <CColor A="255" R="255" 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>