menghao的博客

共 3994 篇文章

写文章

Cocos2d-x与iOS内存管理分析

## 一、iOS与图片内存 在iOS系统中,图片会自动缩放到2的N次方大小。例如,一张尺寸为1024 * 1025的图片,其占用的内存与一张1024 * 2048的图片相同。图片占用内存大小的计算公式为:长 * 宽 * 4。以一张512 * 512的图片为例,其占用的内存为512 * 512 * 4 = 1MB,其他尺寸的图片可依此公式计算。需要注意的是,iOS上支持的图片最大尺寸为2048 *…

2015-03-22 17:13
0 0
已发布

图片资源加密,Lua文件加密详解

## 一、游戏开发中的资源保护问题 在游戏开发过程中,资源保护是一个常见的需求。目前,游戏开发中常需要加密的文件类型包括图片、Lua 文件、音频等。然而,加密是一把双刃剑,要实现更高的安全性,就需要消耗一定的资源。虽然网上有使用 TexturePacker 工具进行加密的方法,但这种方法的针对性不够强。 ## 二、加密原理分析 ### 1. 转格式 将需要加密的文件转换为流的形式。 ###…

2015-03-22 16:57
0 0
已发布

解说centos6.3搭建一个git服务器

## 一、环境信息 - **操作系统**:CentOS 6.3 (Final) - **Git 版本**:1.7.1 - **工具**:Gitolite 搭建 Git 服务器的步骤相对简单,需要安装 Git、SSH 支持、Gitolite 并配置公钥。本文全部采用 yum 包进行安装。 ## 二、CentOS 系统搭建步骤 ### 1. 安装必要软件 登录服务器,以 root…

2015-03-22 16:49
0 0
已发布

Cocos2d-x粒子系统和存储详解

在游戏开发过程中,我们常常会遇到需要实现绚丽特效的场景。Cocos2d-x 为开发者提供了一些默认的特效,开发者仅需一行代码,就能让游戏画面变得更加绚丽。同时,不同规模的游戏对于数据存储也有不同需求,大型游戏需要存储各种复杂的数据,而小型游戏则可能仅需记录分数。本节教程将详细讲解如何在 Cocos2d-x 中使用粒子系统实现特效,以及如何将数据存储到手机上。 ## 粒子系统 …

2015-03-22 16:43
0 0
已发布

Spritesheet的plist文件格式解析

## 1. Spritesheet的plist文件中字段的含义 在游戏开发中,当把一些小图合并成一张大图时,会生成一个配置文件,即plist文件。若要从大图中获取小图,就需要依据plist文件中的信息。例如,`game.png` 是小图合成后的大图,而 `game.plist` 则是对应的plist文件。 ### plist文件包含的信息 下面是一个plist文件包含信息的示例: ``…

2015-03-22 16:35
0 0
已发布

Cocos2d-X的内存管理(3)

## 特点 经过前面几节课的学习,我们了解到Cocos2d-x的内存管理可以借助AutoReleasePool、Vector和Map来实现。这三者本质上都属于容器的范畴。那么,Cocos2d-x的元素能否自行管理自身的内存呢?答案是肯定的,这就涉及到RefPtr,它是Cocos2d-x中一种类似于`shared_ptr`指针的智能指针。该指针会对一个`Ref*…

2015-03-22 16:30
0 0
已发布

Cocos2d-x的内存管理(2)

## Vector Vector 是 Cocos2d-x 3.x 系列之后引入的新数据结构,它综合了 `std::vector` 的诸多函数,能便捷地进行各类数据操作,同时融入了 Cocos2d-x 的内存管理机制。 与普通类型(如 `sprite`)不同,Vector 是用于存储一组数据的容器,从其名称便可推断,它需要管理一大块内存。例如,可将 5 个 `sprite` 对象存入一个…

2015-03-22 16:21
0 0
已发布

Cocos2d-x的内存管理(1)

## C++的内存管理机制 ### 优点 在C++中,开发者可以使用`new`操作符在运行时从堆中为程序分配一块内存空间,并直接获取该内存的地址进行操作。这种直接访问内存地址的方式极大地提高了内存使用的灵活性。当这块内存不再需要时,可以使用`delete`操作符将其释放。 ### 缺点 C++的手动内存管理方式极易出错,常见的问题如下: - **野指针*…

2015-03-22 16:17
0 0
已发布

cocos2d-x渲染优化介绍

## 左下角 FPS 显示的含义 在 Cocos2d-x 中,左下角显示的 FPS(Frames Per Second)相关信息具有重要意义: - 第一行数据代表渲染的次数,从技术角度来看,这大致等同于 `draw` 方法的调用次数。通常情况下,该次数越少越好,因为较少的渲染次数意味着更低的 CPU 和 GPU 负载,有助于提升游戏性能。 -…

2015-03-22 16:10
0 0
已发布

Cocos2d-x实现资源热更新详解

## 热更新介绍 ### 什么是热更新 游戏客户端启动时,会主动向服务端请求检查版本号,并将最新资源更新到本地。 ### 应用场景 - **情况一:修复严重Bug**:当游戏客户端发布后,突然发现存在比较严重的Bug需要修复,此时可通过更新游戏的代码(如Lua代码)来解决问题。 - **情况二:开展节日活动*…

2015-03-22 16:05
0 0
已发布

作者信息

menghao

menghao

共发布了 3994 篇文章