cocos2d-x响应Windows按键消息

Windows的鼠标和按键消息是在同一个函数WindowProc(UINT message, WPARAM wParam, LPARAM lParam)中处理的,可以通过修改cocos2d-x的引擎代码来响应按键消息。 继续阅读 »

C++必知必会(4)

条款31:协变返回类型

简单的说来就是:如果B是一个类类型,并且一个基类虚函数返回*B, 那么一个重写的的派生函数可以返回D*,其中的D公有派生于B。 继续阅读 »

Effective C++(1)

《Effective C++》要比《C++必知必会》深入许多。不可否认他的确是久负盛名的好书。刚在图书馆看了一个小时,收获很大。这本书写起书摘来很是方便,后面的“请记住”就可以拿来用。不过我觉得不够详细。有些事情一句话说不清楚。如果结合实际经验就更不可收拾,只好多费些笔墨了。 继续阅读 »

C++必知必会(3)

条款21:重载与重写并不相同

在同一个作用域具有相同的名字和不同签名的函数称为重载,在基类的虚函数和派生类中具有相同函数名和签名的函数称为重写。重写操作不当就可能导致屏蔽基类函数。 继续阅读 »

C++必知必会(2)

条款11:编译器会在类中放东西

不要对类的内存布局做任何假设。不要利用复制内存来复制类。 继续阅读 »

C++必知必会(1)

条款1:数据抽象

数据抽象是将现实生活中的概念映射到代码中,或者是将C++扩展到特定的领域。数据抽象应该基于“这个类是用来做什么的”这个准则。实际操作中步骤为:(1)为类起一个描述性的名字;(2)列出类要执行的操作;(3)为外部提供接口;(4)实现这个类; 继续阅读 »

读书书摘(1)

自北漂以来,居无定所。程序员所要读的书又多又厚,即使我有钱买,也没地方摆。有些技术细节看过以后不一定用得到,一时不用很容易忘记。所以把我所看到的,所学到的做一个简单的摘录。方便以后查找。 继续阅读 »

cocos2d-x:CCNode的使用

在使用CCNode时候有几个函数是无论如何避免不了的。上几篇文章说的不确切,下面来以这个为例解释下cocos2d-x的内存管理,以及如何避免内存泄漏。 继续阅读 »

cocos2d-x:CCNode的渲染

CCNode是cocos2d-x的渲染链,写游戏基本上就是和他打交道了,所以要好好掌握。

cocos2d-x同时只能渲染一个CCScene,因此CCScene是渲染的根节点。在构建游戏时,一般是一个Scene中添加一个或者多个CCLayer,一个Layer中又添加多个CCSprite或者CCMenu,CCSprite中还可以添加CCParticleSystem等等。这样就构建了一个渲染树,cocos2d-x历遍这个树来将图像显示在屏幕上。 继续阅读 »

cocos2d-x:内存管理(2)

使用或者不使用自动管理对于编程接口来说是一样的,都是调用release或者autorelease来释放资源。只是他们释放资源的时机不同。release会立马释放资源,如果使用autorelease,他会标记自己,在主循环中由CCPoolManager来释放资源。CCPoolManager每一次循环只会释放一个需要释放的资源。这样保证了游戏运行的流畅度,避免出现卡顿的现象。所以释放多个资源时,一般使用autorelease可以获得更佳的表现。 继续阅读 »