
cocos2d-x
elloop
el
展开
-
Protocol Buffers Lua API总结
本文介绍的关于protocol buffer的api是基于protoc-gen-lua(see in github)这个项目的。我的使用经验都是在开发Cocosd-x游戏的时候,lua脚本与服务器通信采用了protocol buffer,协议编译工具正是protoc-gen-lua这个插件。插件的安装过程该项目的ReadMe已经描述的很清楚,这里主要总结一下实际使用中需要注意的问题,和编译生成的pb原创 2015-05-22 14:02:13 · 14329 阅读 · 1 评论 -
【cocos2d-x 3D实战】开发一款体素游戏--1. 准备工作
最近cocos官网推荐了一款使用cocos2d-x开发的3D游戏,叫《Steps》(信步),是一个乌克兰小伙的作品,是一款休闲小游戏,正是类似MineCraft那种体素(voxel)风格的,看起来效果还不错,于是自己也打算尝试搞一个这样的游戏玩玩。本文是使用c3d开发一款体素风游戏系列的第一篇,记录了开发环境的配置和界面编辑器的选择和实验。引擎:cocos2d-x 3.10体素模型编辑器:Ma原创 2016-10-31 22:14:41 · 3236 阅读 · 2 评论 -
基于Cocos2d-x的迷宫探索演示程序
本文展示了使用cocos2d-x来实现的一个迷宫探索演示程序,一种简单粗暴的寻路算法,算法来自经典的严蔚敏c语言数据结构里的迷宫探索算法,使用栈来实现。原创 2016-09-30 08:35:50 · 1778 阅读 · 0 评论 -
Xcode 7.3编译的cocos2d-x程序崩溃问题
本文记录了一次Xcode编译生成的cocos程序离奇崩溃问题及其解决方案。Xcode 7.3 , cocos2d-x 2.2.3.原创 2016-03-30 21:49:47 · 2066 阅读 · 2 评论 -
【cocos2d-x 3D游戏开发】0: 3D时代到来,学cocos3D还是Unity3D?
作为一名cocos2d-x开发者,开发2D游戏已经有两年多了,这两年来目睹了手游市场的浮躁, cocos引擎的出现降低了手游开发的门槛,提高了手游生产效率,这两年着实是火的不行。然而,手游发展速度神速,眨眼间3D手游几乎以铺天盖地之势袭来。cocos的一个“劲敌”unity卷土而来,几乎霸占了整个3D市场,很多开发者都欣然奔向了unity的怀抱。cocos2d-x也从3.3版本之后开始猛加3D功能,如今3D功能也是比原创 2015-12-09 08:05:16 · 7927 阅读 · 2 评论 -
【cocos2d-x 2.x 学习与应用总结】14: 自定义shader绘制混合颜色的矩形
本文介绍了如何在cocos2d-x中使用自定义shader来实现混合颜色矩形的绘制。文中继续使用[前一篇文章中](http://blog.youkuaiyun.com/elloop/article/details/50551917)定义的CustomDrawNode类来实现绘制过程,在其基础上派生出`ColorfulRectangle`类,使用一对新的shader。绘制的效果图如下所示:原创 2016-01-25 23:12:49 · 1309 阅读 · 0 评论 -
【cocos2d-x 3.x 学习与应用总结】4: 使用cocos compile编译apk
本文总结了使用`cocos compile`命令编译cocos2d-x安卓apk的基本用法,以及记录一个使用NDK-r9d(gcc 4.8)编译C++11的`hash_map`遇到的一个问题: `error: invalid use of incomplete type 'struct std::hash<MessageType>'`原创 2016-01-24 23:27:37 · 8533 阅读 · 7 评论 -
cocos2d-x: 常用组件默认参数
本文总结了cocos2d-x常用渲染类的默认属性和它们之间的继承关系,并对比了2.x和3.x在相关方面之间的一些差别。原创 2015-11-25 07:29:59 · 8046 阅读 · 0 评论 -
【cocos2d-x 3.x 学习与应用总结】2: 在cocos2d-x中使用ccbi
本文以3.9版本的cocos2d-x为例,总结了如何在代码中解析、加载ccbi文件。给出一个最简单的使用ccbi实现的helloworld的例子、一个加强版的HelloWorld示例、以及一个最贴近实际使用情况的ccbi使用示例, 并结合示例分析ccbi的解析过程。原创 2015-12-20 22:37:55 · 13949 阅读 · 2 评论 -
【cocos2d-x 2.x 学习与应用总结】13: 借助CCGLProgram实现自定义绘制
本文总结了如何借助CCGLProgram来实现自定义绘制的节点类,使用自定义的顶点着色器和片段着色器,实现一个绘制彩色矩形的节点类。绘制的效果图如下所示:原创 2016-01-21 01:42:26 · 2954 阅读 · 0 评论 -
【cocos2d-x 2.x 学习与应用总结】11: 理解CCGLProgram
本文介绍了cocos2d-x中CCGLProgram这个类, 这篇文章假设读者已经了解OpenGL ES程序的基本渲染流程:顶点和片段着色器的源代码的编写、着色器的创建、program的创建、源代码绑定、编译、链接、OpenGL客户端-服务端传值等。CCGLProgram这个类正是对OpenGL ES渲染流程中涉及到着色器的编译、链接、传值等部分的抽象。本文先总起介绍CCGLProgram所做的工作,然后分析其源原创 2016-01-20 01:09:44 · 3976 阅读 · 0 评论 -
【cocos2d-x 2.x 学习与应用总结】12: cocos2d-x预定义shader源码
本文把cocos2d-x 2.x版本中预定义的所有shader源码贴出来,便于集中参考。作者的引擎版本是2.2.3.下面以ccShaders.h中定义的片段着色器变量名作为标题,逐条列出。(为什么不用顶点着色器的变量名,因为有几个shader只有片段着色器变量名)原创 2016-01-20 21:24:10 · 1192 阅读 · 0 评论 -
【cocos2d-x 2.x 学习与应用总结】10: cocos2d-x自带的shader及其使用
本文介绍了cocos2d-x中自带的shader代码, 及其在引擎中的使用情况。作者的引擎版本是2.2.3,在这个版本的cocos中有9种自带的shader,详情请见下文。原创 2016-01-19 22:16:26 · 2715 阅读 · 0 评论 -
【cocos2d-x 3.x 学习与应用总结】3: CallFunc系列
CallFunc系列对象是Action的一种,具体来说它是瞬时动作(ActionInstant)的一种,其它的瞬时动作还包括Show, Hide, ToggleVisibility, RemoveSelf, FlipX, FlipY, Place等,这么多的瞬时动作,为什么把CallFunc提取出来呢,它有什么好说的呢?首先是从使用频率上来看的,CallFunc通常和DelayTime一起组成一个Sequence原创 2015-12-30 23:47:11 · 6540 阅读 · 0 评论 -
【cocos2d-x 3.x 学习与应用总结】4: 理解CC_CALLBACK_0, CC_CALLBACK_1, CC_CALLBACK_2, CC_CALLBACK_3
得益于C++11的新特性,cocos 3.x版本在很多地方的代码看起来都优美了许多。这其中就包括一些回调函数的写法,`CC_CALLBACK_N`系列宏的作用是对一个成员函数进行适配并返回一个回调函数。本文介绍一下我对`CC_CALLBACK_N`系列宏的理解。原创 2016-01-01 20:13:53 · 9175 阅读 · 5 评论 -
【cocos2d-x 3D游戏开发】2: 2D基础回顾---理解CCMenu类的实现, 实现点击放大的菜单按钮
本文介绍了CCMenu类的实现原理,并在CCMenu的基础上稍加改造,实现了一个点击自动缩放的菜单类。原创 2015-12-10 23:45:25 · 8233 阅读 · 0 评论 -
【cocos2d-x 3D游戏开发】3: 游戏帧循环
前言高实时性是游戏区别于传统软件、应用的一个重要特征,游戏里通常有一个比较高频率的循环在处理用户输入、物理逻辑更新、业务逻辑更新以及图形渲染等工作, 以保证这种实时性的要求。我们把每一次循环叫做一帧,把每秒钟游戏更新的帧数称作“帧率(Frame Per Second)”, 也就是常说的FPS。电影的帧率通常是24FPS,cocos2d-x默认的帧率是60FPS, VR游戏中对帧率的要求则更高,通常至原创 2015-12-14 09:07:13 · 8955 阅读 · 0 评论 -
【cocos2d-x 3D游戏开发】1: 2D基础回顾---触摸事件(2.x)
前言本文回顾了cocos2d-x中触摸事件的使用方法和注意事项,并给出一个带有点 击缩放功能的自定义菜单类的实现。原创 2015-12-02 07:43:20 · 10122 阅读 · 0 评论 -
【cocos2d-x 学习与应用总结】最近一段时间使用cocos2d-x lua的总结
本文总结了近期使用cocos2d-x lua过程中的一些思考和收获。原创 2016-12-31 23:04:52 · 1172 阅读 · 0 评论