热门标签 | HotTags
当前位置:  开发笔记 > 程序员 > 正文

Cocos2dwophone中如何将资源文件打包成zip文件

前置条件这里假定读者已经能够使用cocos2d-wophone进行游戏的开发,并且可以通过

前置条件

这里假定读者已经能够使用 cocos2d-wophone 进行游戏的开发,并且可以通过从硬盘读取资源文件。如果还不清楚这些的话,那么请移步到 这里 补充相关的知识。

本文中使用的示例代码、截图等都是基于 cocos2d-x 源码中的 tests 工程的,为了在阅读本文时能够更好的明白各个操作,建议您下载 cocos2d-x的源码 ,并按照如何在WoPhone上运行tests工程这篇文章将 tests工程运行起来。

如何操作

对于如何让自己的代码可以从zip文件中读取相应的资源文件,操作是很简单的,只需要两个步骤。这里以 test wophone 工程为例,步骤如下:

首先将 tests/Res 目录下的所有的资源文件打包成 TestCocos2dx.zip 文件,并且需要将该文件放到指定的目录(见第二步中示例代码)。这里为了让代码中使用资源文件时所用的参数不需要修改,需要保证 zip 文件中的目录结构如下图:

然后在 AppDelegate 类的 applicationDidFinishLaunching 函数中添加如下代码即可:

1#if defined(CCX_PLATFORM_WOPHONE)

2 // set the resource zip file

3 CCFileUtils::setResource("TestCocos2dx.zip");

4#endif

cocos2d-wophone 目前支持的几种资源文件读取方式对比





















读取方式 优点 缺点
硬盘读取 实现简单,只需要调用 CCFileUtils::setResource() 接口,通过第二个参数设置资源文件路径即可。 1. 在打包安装程序时,很难将数据文件进行打包;

2. 资源文件未完全封闭
使用 zip 文件 1. 实现简单,只需要调用 CCFileUtils::setResource() 接口通过第一个参数设置 zip 文件的名称;

2. 打包安装程序简单,只要将 zip 文件当做数据文件打包就可以了。
资源文件未完全封闭

多种方式并存时的调用顺序

当在代码中,多种资源文件读取方式并存时,检查的顺序如下:

「从 zip 文件读取」->「从硬盘读取」

这里需要注意的一点是,当指定的 zip 文件存在时,如果需要使用的资源文件在 zip 文件中无法找到,那么将不会再从硬盘中查找资源文件。

WoPhone 资源文件的存放路径

根据 CCFileUtils::setResource() 函数第二个参数值的不同,需要将资源文件放到不同的目录,列表如下:





















参数值 模拟器路径 真机路径
NULL D:/Work7/NEWPLUS/TG3/APP 与应用的 .so 文件同目录
开发者设定的目录 开发者设定的目录 开发者设定的目录


推荐阅读
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • 本文介绍如何使用 Python 提取和替换 .docx 文件中的图片。.docx 文件本质上是压缩文件,通过解压可以访问其中的图片资源。此外,我们还将探讨使用第三方库 docx 的方法来简化这一过程。 ... [详细]
  • 本文介绍了在Windows Server 2003环境下,使用XAMPP Lite 1.7.1和DotProject 2.1.3时遇到的日历和甘特图中文乱码问题的解决方案。通过修改相关文件和配置,可以有效解决这些问题。 ... [详细]
  • 随着网络安全威胁的不断演变,电子邮件系统成为攻击者频繁利用的目标。本文详细探讨了电子邮件系统中的常见漏洞及其潜在风险,并提供了专业的防护建议。 ... [详细]
  • 本次考试于2016年10月25日上午7:50至11:15举行,主要涉及数学专题,特别是斐波那契数列的性质及其在编程中的应用。本文将详细解析考试中的题目,并提供解题思路和代码实现。 ... [详细]
  • 本文详细介绍了如何准备和安装 Eclipse 开发环境及其相关插件,包括 JDK、Tomcat、Struts 等组件的安装步骤及配置方法。 ... [详细]
  • 本文详细介绍如何利用已搭建的LAMP(Linux、Apache、MySQL、PHP)环境,快速创建一个基于WordPress的内容管理系统(CMS)。WordPress是一款流行的开源博客平台,适用于个人或小型团队使用。 ... [详细]
  • 深入解析Redis内存对象模型
    本文详细介绍了Redis内存对象模型的关键知识点,包括内存统计、内存分配、数据存储细节及优化策略。通过实际案例和专业分析,帮助读者全面理解Redis内存管理机制。 ... [详细]
  • Python处理Word文档的高效技巧
    本文详细介绍了如何使用Python处理Word文档,涵盖从基础操作到高级功能的各种技巧。我们将探讨如何生成文档、定义样式、提取表格数据以及处理超链接和图片等内容。 ... [详细]
  • Windows 7 64位系统下Redis的安装与PHP Redis扩展配置
    本文详细介绍了在Windows 7 64位操作系统中安装Redis以及配置PHP Redis扩展的方法,包括下载、安装和基本使用步骤。适合对Redis和PHP集成感兴趣的开发人员参考。 ... [详细]
  • 简化报表生成:EasyReport工具的全面解析
    本文详细介绍了EasyReport,一个易于使用的开源Web报表工具。该工具支持Hadoop、HBase及多种关系型数据库,能够将SQL查询结果转换为HTML表格,并提供Excel导出、图表显示和表头冻结等功能。 ... [详细]
  • 离线安装Grafana Cloudera Manager插件并监控CDH集群
    本文详细介绍如何离线安装Cloudera Manager (CM) 插件,并通过Grafana监控CDH集群的健康状况和资源使用情况。该插件利用CM提供的API接口进行数据获取和展示。 ... [详细]
  • 主调|大侠_重温C++ ... [详细]
  • 本文详细记录了在基于Debian的Deepin 20操作系统上安装MySQL 5.7的具体步骤,包括软件包的选择、依赖项的处理及远程访问权限的配置。 ... [详细]
  • 本文探讨了Hive中内部表和外部表的区别及其在HDFS上的路径映射,详细解释了两者的创建、加载及删除操作,并提供了查看表详细信息的方法。通过对比这两种表类型,帮助读者理解如何更好地管理和保护数据。 ... [详细]
author-avatar
feixiang1563122
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有