谈论quick-cocos2d-x和cocos2d-x lua了解差异
之前说,我把这个两个词区别。经过太长时间。当然,反击的麻烦。quick-cocos2d-x它提到quick,cocos2d-x lua姑且称为本地lua对。
我认为,首先与这两个小的朋友接触会跟着或多或少知道我有同样的疑惑,个是使用两种不同的api吧。我仅仅能说说对了一半,确实,quick有一套自己的API,可是,qucik的这套api是在原生lua上进行再次封装的,所以quick还是支持原生lua的api。
还记得第一次打开quick主页的时候,那时候还没有被触控收购。就看到标题写到—— “这是一个志在提高 cocos2d-x 开发效率的社区” 。是啊。要是不提高怎么会叫quick呢。
另一次看了一下他们的人才招聘,有一条是这么写到——“有强烈的冲动想让别人被自己开发的工具感动到哭”。哈哈,确实如今慢慢认为是有点被感动到哭,提供的一些API的确便捷非常多非常多。
以下简单举个样例吧,还是显示经典的HelloWorldScene中那张背景图片,假设我们在quick中使用原生lua的写法。就和使用C++写一样
function MainScene:ctor()
self.size = CCDirector:sharedDirector():getWinSize() local sp = CCSprite:create("HelloWorld.png")
sp:setPosition(ccp(self.size.width/2, self.size.height/2))
self:addChild(sp) end
须要这样些语句才干完毕,只是用quick提供的API,那么就简单太多了,真的感动的要哭
function MainScene:ctor()
local sp = display.newSprite("HelloWorld.png", display.cx, display.cy)
self:addChild(sp) end
就这些,是不是太方便,对于坐标的提供大大简化了需求。32个赞。
以下说一说对于quick的学习方法吧。我认为C++那一套编写游戏的方法你掌握的话,对于lua开发游戏难度到并非太大。毕竟对应的函数方法都是有的。困难之处在于怎么使用lua的方式写出来,比方一个触摸响应事件,假设用quick提供的方式写出来。这就须要好好看看API了,当然quick提供的在线API还不是非常完整。有些地方还是不太具体的。所以看sample是还有一个途径了,quick里面提供了大量的sample。这对于我们来说比不论什么资源都重要。一旦把这些基础的使用方法掌握了。能够看看那个CoinFlip这个完整的游戏演示样例,我认为这样一来差点儿相同自己就能用quick开发游戏了。
我还想说的这些,其次是时间分享自己quick本学习笔记
版权声明:本文博客原创文章。博客,未经同意,不得转载。
谈论quick-cocos2d-x和cocos2d-x lua了解差异的更多相关文章
- cocos2d 游戏开发:Cocos2d v3 "hello world"+显示飞船
V3 RC4 版本号图片 显示一个飞船 将Chapter1中 SpaceCargoShip.png 文件 加入到项目里面. 代码在 init : CCSprite *spaceCargoShip = ...
- Cocos2d Lua 越来越小样本 内存游戏
1.游戏简介 一个"记忆"类的比赛游戏.你和电脑对战,轮到谁的回合,谁翻两张牌,假设两张牌一样.就消掉这两张牌,得2分,能够继续翻牌,假设两张牌不一样,就换一个人.直到最后.看谁的 ...
- 【转】Enable ARC in a Cocos2D Project: The Step-by-Step-How-To-Guide Woof-Woof!
On April 5, 2012, in idevblogaday, by Steffen Itterheim http://www.learn-cocos2d.com/2012/04/enablin ...
- cocos基础教程(5)数据结构介绍之cocos2d::Value
1.概述 cocos2d::Valie 是一个包含了很多原生类型(int,float,double,bool,unsigned char,char* 和 std::string)外加 std::vec ...
- cocos基础教程(5)数据结构介绍之cocos2d::Map<K,V>
1.概述 cocos2d::Map<K,V> 是一个内部使用了 std::unordered_map的关联容器模版. std::unordered_map 是一个存储了由key-value ...
- cocos基础教程(5)数据结构介绍之cocos2d::Vector
cocos2d::Vector cocos2d::Vector<T>是一个封装好的能动态增长顺序访问的容器.cocos2d::Vector<T>中的元素是按序存取的,它的低层实 ...
- ! cocos2d 预编译重复
由于预编译文件重复,导致下面的类没有被编译,所以,在写代码的时候也没有提示还报错,说LoadingScene没有定义. #ifndef __HELLOWORLD_SCENE_H__ #define _ ...
- Cocos2d-x3.0模版容器具体解释之二:cocos2d::Map<K,V>
1.概述: 版本号: v3.0 beta 语言: C++ 定义在 "COCOS2DX_ROOT/cocos/base" 路径下的 "CCMap.h" 的头文件里 ...
- cocos2d触摸事件处理机制(2.x和3.x变化)
2.x的触摸事件的版本号 触摸事件处理有2种子.以下单点触摸的样本.(另一种多点触摸屏). 创建cocos2d 该项目. 1. 重写下面虚函数. bool ccTouchBegan(cocos2d:: ...
随机推荐
- Effective C++:规定27:尽量少做动作的过渡
(一个)C风格遗留转换: (T)expression T(expression) (二)C++提供四种新式转型: (1)const_cast<T>(expression):去除表达式的常量 ...
- xaml的margin和css的margin对比
css margin xaml margin 例子 1 css margin:10px 5px 15px 20px;上右下左 上外边距是 10px 右外边距是 5px 下外边距是 15px 左外边距是 ...
- 十二周项目三(4)——出口fibnacci第一序列20的数量
/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名:test.cpp * 作者:陈丹妮 * 完毕日期:2014年 11 月 ...
- oracle record is locked by another user
这个问题的根源先说说:午后更改数据库表,保存更改后,却没有提交完整.突然,去什么地方调试,拔掉网线,然后插上网线,这个出现record is locked by another user错误.网上找原 ...
- 使用C/C++编译预处理时须要注意的问题
1.宏定义不是C/C++语句,不须要使用语句结束符":",否则它也被看做宏体的一部分. 2.不要在引用宏定义的參数列表中使用增量和减量运算符,否则将导致变量的多次求值.比如: #d ...
- 严格模式 (JavaScript)
严格模式是一种将更好的错误检查引入代码中的方法. 在使用严格模式时,您无法使用隐式声明的变量.将值赋给只读属性或将属性添加到不可扩展的对象. 〉声明严格模式 可以通过在文件.程序或函数的开头添加 &q ...
- Scrum三头猪
猪和鸡在过去进入业务合作.他们都打算开一家餐厅,它的售价火腿和鸡蛋. 这想了一下时间猪,我用他的肉,鸡只是用它生下的蛋.万一生意失败,我自己的命就没,,没有不论什么影响. 1. Scrum两类关系人 ...
- Codeforces Round #257 (Div. 1)449A - Jzzhu and Chocolate(贪婪、数学)
主题链接:http://codeforces.com/problemset/problem/449/A ------------------------------------------------ ...
- Codeforces 450 C. Jzzhu and Chocolate
//area=(n*m)/ ((x+1)*(k-x+1)) //1: x==0; //2: x=n-1 //3: x=m-1 # include <stdio.h> long long m ...
- Andriod Studio科普文章——3.大约gradle常见问题插头
1.andriod gradle插件版本号过低. 错误位置: dependencies{ classpath 'com.android.tools.build:gradle:0.10.2' } 提示信 ...