- 博客(19)
- 资源 (2)
- 收藏
- 关注
转载 LUA的堆栈问题
学习LUA也有一些时日了,个人认为对于LUA中的栈的理解很重要,嗯,写个小文章(真的很小) 如果你看了LUA的文档,那么就应该很清楚LUA与C交互数据时都是用到LUA中所谓的stack。那么当我调用lua_open函数之后栈是什么样的呢?空的(luaopen_base等会往栈上加进一些东西)。那么至于如何操作栈上的数据,我想官方文档上已经说得很清楚了,不过最初我对于栈的顺序有一些迷糊,所以就说
2014-05-19 19:06:59 606
原创 从不同层面看cocos2d-x
一 框架层面二 Lua层面三 工具层面四 android打包一 框架层 整体来说,cocos2dX提供的一个简便的框架,包含了渲染,动画,事件分发,网络还有UI,物理引擎等几大模块。对于做一个游戏从功能上来说已经足够了。我从这几个方面分别探讨下cocos2dX的优缺点以及我们在项目中是如何用到的(1)渲染:渲染这块,他的渲染数据跟Sprite进行了绑定
2014-05-18 16:19:59 1112
原创 A*寻路算法笔记 2011
寻路是很多游戏需要实现的功能,简言之,就是确定起点和终点,找出到达的路线。常见应用:电脑怪物对主人公进行追踪打击。AStar是目前使用较多的一种寻路算法,最近比较感兴趣研究了下,记录一些要点: 1,寻路的基础是将地图网格化,转化为二维数组,这样做的好处是节省计算资源,简化计算模型,也很接近真实。2,AStar是从起点开始向外依次计算临近网格到目标网格的距离,得出最短
2014-05-18 16:01:13 560
原创 如何在Cocos2d-x中使用Lua脚本
笔者使用的是Cocos2d-x的2.21版本,Xcode 5.0开发环境,同时也建议大家使用Cocos2.20以上版本,若由于版本原因源码无法运行,可将Classes文件拷贝出来,在新建的项目中将Classes文件夹替换进去,.lua文件在Resources文件夹中。有关Lua脚本语言的基本语法讲解请参考 :http://blog.csdn.net/u012945598/a
2014-05-13 11:50:46 1401
原创 C++ 调用C函数
这种需求很多,又因为C++和C是两种完全不同的编译链接处理方式,所以要稍加处理.总结大致有两大类实现方法.文中给出的是完整的,具体的,但又最基本最简单的实现,至于理论性的东西在网上很容易搜索的到. 一.通过处理被调用的C头文件a.h:#ifndef __A_H#define __A_H#ifdef __cplusplusextern "C"
2014-05-11 17:05:56 605
原创 Cocos2d-x 3.0 简捷的物理引擎
Cocos2d-x 3.0 开发(九)使用Physicals代替Box2D和chipmunkhttp://www.cocos2d-x.org/docs/manual/framework/native/physics/physics-integration/zh -- 官网+Demo
2014-05-09 18:28:25 1093
原创 box2d -ApplyForce, ApplyImpulse, SetLinearVelocity
在box2d开发中,body除了收重力、摩擦力、弹力等等作用自然力的作用意外,用户还可以手动操作body,共有三种方式:ApplyForce、ApplyImpulse和SetLinearVelocity。下面分别介绍一下:ApplyForce指的是对物体应用一个力,物理学中F=ma,这里的ApplyForce就是我们的F,物体的质量mass固定,因此物体加速度也固定,速度抓紧改变。
2014-05-09 10:42:27 1311 1
原创 C++11 新特性练习
***************************************************using namespace std;struct TEST{ int a; int b; int c;};struct TT{ char *name;
2014-05-08 13:36:40 739
原创 Cocos2d-x 3.0 回调函数的变化 .
cocos2d-x 2.x版本中的回调函数的用法想必大家都很是熟悉,例如在menu item,call back action中都需要大量的使用到回调函数,但是在使用过程中总是感觉到比较冗余麻烦的,在3.0版本,使用到了C++11 的新特性,改进增加了回到函数的使用形式,其中最令人欣慰的是,可以使用闭包,对于有过iOS开发经验的来说,应该很亲切,就是 block。下面将通过几个例子详细介绍
2014-05-07 20:55:40 731
转载 升级后,常常遇到的遇到的警告、错误,解决方法
从sdk3.2.5升级到sdk 5.1中间废弃了很多的方法,还有一些逻辑关系更加严谨了。1,警告:“xoxoxoxo” is deprecated解决办法:查看xoxoxoxo的这个方法的文档,替换掉这个方法即可。
2014-05-07 17:56:07 632
原创 Xcode 与 iOS SDK 版本
在学习 iOS 应用开发之前,需要先了解下 Xcode 与 iOS SDK 版本 演变史。 毕竟,Xcode 版本 和 iOS SDK 版本 琳琅满目,开发者经常被 二者的版本搞晕。我们需要搞清楚两个概念: iOS 的版本与XCode 的版本号之间的关系。 截止发布这篇blog 时, Xcode的最新版本是4.3.2, 而iOS SDK 的最高版本为 5.1 。初学者会问,我已经安装了 Xcode
2014-05-07 17:28:58 1644
转载 C++ static、const和static const 以及它们的初始化
const定义的常量在超出其作用域之后其空间会被释放,而static定义的静态常量在函数执行后不会释放其存储空间。 static表示的是静态的。类的静态成员函数、静态成员变量是和类相关的,而不是和类的具体对象相关的。即使没有具体对象,也能调用类的静态成员函数和成员变量。一般类的静态函数几乎就是一个全局函数,只不过它的作用域限于包含它的文件中。 在C++中,sta
2014-05-06 21:52:45 623
原创 文件
文件文件的基本概念 所谓“文件”是指一组相关数据的有序集合。 这个数据集有一个名称,叫做文件名。 实际上在前面的各章中我们已经多次使用了文件,例如源程序文件、目标文件、可执行文件、库文件 (头文件)等。文件通常是驻留在外部介质(如磁盘等)上的, 在使用时才调入内存中来。从不同的角度可对文件作不同的分类。从用户的角度看,文件可分为普通文件和设备文件两种。 普通文件是指驻留在磁盘或
2014-05-06 10:50:28 599
原创 结构体初始化
结构体初始化,对结构体struct a {int b;int c;}有几种初始化方式:struct a a1 = { .b = 1, .c = 2};或者struct a a1 = { b:1, c:2}或者struct a a1 = { 1, 2}; //必须顺序赋值内核喜欢用第一种,使用第
2014-05-06 09:37:42 676
原创 结构体内存对齐
一、内存对齐的原因大部分的参考资料都是如是说的:1、平台原因(移植原因):不是所有的硬件平台都能访问任意地址上的任意数据的;某些硬件平台只能在某些地址处取某些特定类型的数据,否则抛出硬件异常。2、性能原因:数据结构(尤其是栈)应该尽可能地在自然边界上对齐。原因在于,为了访问未对齐的内存,处理器需要作两次内存访问;而对齐的内存访问仅需要一次访问。二、对齐规则每个特定平台上的编译器
2014-05-05 21:10:28 573
设计模式之工厂方法
2014-08-17
machine状态机
2014-08-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人