game devolopment

用Docker容器来生成quick-x/cocos2d-x游戏apk包

四 28 7月 2016 by Galoisplusplus / tech

前段时间本渣在做服务器端开发时,采用了Docker作为解决方案的一部分,最初的动机主要是想用namespace做环境隔离、用cgroups做资源 …

Read more

OpenResty折腾记

日 24 7月 2016 by Galoisplusplus / tech

前面几篇文章稍稍提到本渣最近接手了一个server端开发的活,这次就来碎碎念一下好了。虽然我们server端用OpenResty,和client端一样主要也是用lua开发,不过实在也不是本 …

Read more

瓦片地图注意事项

一 13 6月 2016 by Galoisplusplus / tech

承接上一篇文章,再来聊聊一些coding方面的tips:

TileMapAtlasFastTMXTMXTiledMap的选择

我们看到cocos2d-x提供了三个和TiledMap相关的类:TileMapAtlasFastTMXTMXTiledMap,那么应该采用哪个类呢?

  • 首先,TileMapAtlas官方不建议使用 …

Read more

斜45度瓦片地图(Staggered Tiled Map)里的简单数学

五 03 6月 2016 by Galoisplusplus / tech

前段时间在做游戏的地图编辑功能,我们是在一个斜45度视角的场景上,对地图上的建筑或装饰物进行添加、移动、移除等基本操作,而且位 …

Read more

cocos2d-x文本类Label的一些坑

五 04 3月 2016 by Galoisplusplus / tech

cocos2d-x v3.2的Label实现bug真是不少,前段时间恰好排查了几个与之相关的问题,在此记录一下。

文字换行

文字换行是一个困扰我们挺长时间的问题:之 …

Read more

quick-cocos2d-x游戏的tips功能

六 16 1月 2016 by Galoisplusplus / tech

这次分享一个简单的小功能,在quick-cocos2d-x游戏中实现tips效果,以此作为之前一篇博文的后续。tips的行为很简单:点击某个node(我们不妨称它为target_node)触发,当点击区域在target_node …

Read more

记一次spine内存泄露排查

六 19 12月 2015 by Galoisplusplus / tech

最近用InstrumentsLeaks工具排查我们cocos2d-x游戏的一些内存泄露问题,大部分属于之前我们C++代码的bug,还有几个是lua代码中sqlite使用不当造成的内存泄露(例如 …

Read more

记一次cocos2d-x游戏android崩溃排查

六 21 11月 2015 by Galoisplusplus / tech

最近查google breakpad回传的crash log,发现了不少cocos2d::FileUtilsAndroid::getData引起的崩溃。崩溃日志的关键信息如下:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20 …

Read more

cocos2d-x前端开发UI流程

五 18 9月 2015 by Galoisplusplus / tech

手游前端开发中有一项很基础的流程,就是把美术资源拼成程序能用的UI界面。由于cocos2d-x并没有一套成熟的工具链,我们最开始是由美术大大们出效果图 …

Read more

cocos2d-x游戏的性能检测

一 20 7月 2015 by Galoisplusplus / tech

前段时间本渣负责了一些优化我们cocos2d-x游戏性能方面的工作,在这里做一点记录。

OpenGL指标

在debug版的cocos2d-x游戏里,通常会在左下角显示三个指标(当然,是否显示这三个指 …

Read more

quick-cocos2d-x按钮补丁

一 06 7月 2015 by Galoisplusplus / tech

最近在处理一个略奇怪的问题:app在某些情况下点按钮会消失后又重新出现,报bug的童鞋们把现象描述得有些扑朔迷离,因此本渣在排查问题时花了不少时间,在查了一些不相关的问题之后最后终于确 …

Read more

cocos2d-x中的auto-batching

一 08 6月 2015 by Galoisplusplus / tech

本渣比较懒,就直接从工作邮件挑一部分放上来哈~

1.神马是GL calls?

GL calls也称batch,可以单纯理解成绘制次数,一般来说CPU向GPU发送batch会造成瓶颈,这个指标越 …

Read more

cocos2d-x实现打字特效

日 01 2月 2015 by Galoisplusplus / tech

这次分享一个在cocos2d-x中实现打字特效的小功能。

首先,cocos2d-x中label默认是utf8编码,quickx提供了一个string.utf8len接口,这里再加一个截取子字符串的函数:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19 …

Read more

cocos2d-x V3.x不规则按钮-续篇

日 25 1月 2015 by Galoisplusplus / tech

之前曾经在cocos2d-x V3.x不规则按钮探讨过在cocos2d-x 3.x版本实现不规则按钮的方法,后来本渣又琢磨了下仿照RenderTexture类调用OpenGL ES API来获取图片像素信息的方式。这种方式由于按钮图片的Texture已在内存中,且不需要解析图片文 …

Read more

quick-cocos2d-x踩坑记——问题与解决方案

日 04 1月 2015 by Galoisplusplus / tech

本渣最近一个月来开始接触quick-cocos2d-x,用lua开发比c++要快些,但也因为quickx目前的一些坑——当然有些其实应该算是2dx引擎本身的坑——让本渣折腾了不少时间。在此做点记录 …

Read more

cocos2d-x V3.x不规则按钮

五 31 10月 2014 by Galoisplusplus / tech

cocos2d-x的按钮默认是以长方形作为点击区域的,实际使用时这确实很蛋疼。之前有大牛研究了如何获取图片的透明度实现不规则点击区域的方法,例如:

Read more

cocos2d-x二维TableView/GridView的实现

六 20 9月 2014 by Galoisplusplus / tech

对于刚开始接触cocos2d-x的TableView的人来说,这个UI类看上去并非顾名思义的是个Table,而仅仅是个一维的List。 因为项目需要,我封装了一个TableView的子类来实现二维的功能。效 …

Read more

BMFont字体生成脚本

二 02 9月 2014 by Galoisplusplus / tech

最近我们游戏需要用到BMFont字体,但又没有好的免费工具给美术大大们生成字体所需要的图集和fnt文件。 好在本渣在网上 …

Read more

如何自动设好Android.mk的LOCAL_SRC_FILES和LOCAL_C_INCLUDES

日 31 8月 2014 by Galoisplusplus / tech

用cocos2d-x开发Android游戏时,需要在Android.mk文件中,为LOCAL_SRC_FILES变量指定要编译的源代码,以及为LOCAL_C_INCLUDES变量指定头文件。当项目文件越来越多时,这种手动修改很浪费时间。好在Android.mk其实就是一个makefile,我们可以借助makefile语法来自动完成这部分工作。

使用外部命 …

Read more

Customize Development Environment for cocos2d-x

日 03 8月 2014 by Galoisplusplus / tech

本渣不久前答完辩毕了业,很快就入职开始新的搬砖历程——在一个只有四名码农的团队里做cocos2d-x的前端开发——说起来我们还是公司第一 …

Read more

cocos2d-x V3.x内存管理分析

三 30 7月 2014 by Galoisplusplus / tech

cocos2d-x移植自Objective C的cocos2d,其内存管理其实也来自于OC。因而对于写过OC程序的朋友来讲,cocos2d-x的内存管理应该是一目了然的,但对于本渣这枚没接触过OC的C++码农来说,或许直接看cocos2d-x源代码才是最直接快捷的方式。

Node类

我们首先来 …

Read more