Cocos2d
介绍cocos2d这个游戏引擎
WongKyunban
这个作者很懒,什么都没留下…
展开
-
Cocos2d-x之KeyboardEvent键盘事件
Cocos2d-x在ubuntu上的开发环境搭建,请参考《Ubuntu18.04搭建Cocos2d开发环境》在Linux上运行项目,请参考《在Linux上运行Cocos2d-x项目》在游戏所在目录的Classes目录下创建以下两个文件:KeyboardScene.h:#include "cocos2d.h"class KeyboardScene : public cocos2d::La...原创 2020-03-20 16:03:42 · 2526 阅读 · 0 评论 -
在Linux上运行Cocos2d-x项目
Cocos2d-x在ubuntu上的开发环境搭建,请参考《Ubuntu18.04搭建Cocos2d开发环境》创建项目格式:$ cocos new MyGame -p com.your_company.mygame -l cpp -d NEW_PROJECTS_DIR实例:~/Desktop/Games$ cocos new OkGame -p com.wong.game -l cpp ...原创 2020-03-16 16:55:19 · 2797 阅读 · 0 评论 -
在Linux上运行Cocos2d-x安装目录中的示例游戏
Cocos2d-x在ubuntu上的开发环境搭建,请参考《Ubuntu18.04搭建Cocos2d开发环境》我的Cocos2d-x的安装目录在:/home/kyun/Desktop/coco2dx/cocos2d-x-4.0:示例代码所在位置:/home/kyun/Desktop/coco2dx/cocos2d-x-4.0/tests:编译Cocos2d-x安装目录下的示例代码运行cm...原创 2020-03-16 15:56:42 · 1966 阅读 · 0 评论 -
Cocos2d-x异常external/linux-specific/fmod/prebuilt/64-bit/libfmod.so.6: file too short
Cocos2d-x异常:./cpp-tests: error while loading shared libraries: /home/kyun/Desktop/coco2dx/cocos2d-x-4.0/external/linux-specific/fmod/prebuilt/64-bit/libfmod.so.6: file too short解决办法:~$ cd /home/kyu...原创 2020-03-16 15:50:52 · 2458 阅读 · 1 评论 -
Cocos2d-x处理Touch触摸事件Demo
请参考《Ubuntu18.04搭建Cocos2d开发环境》搭建项目默认情况下,Cocos2d-x会将鼠标左点击当作触摸。第一步:在/home/kyun/Desktop/Games/MyGame/CMakeLists.txt文件添加TouchScene.h和TouchScene.cpp:# add cross-platforms source files and header files l...原创 2020-03-12 20:22:47 · 2099 阅读 · 0 评论 -
Cocos2d-x创建Scene Demo
前提请参考《Ubuntu18.04搭建Cocos2d开发环境》建立好工程原创 2020-03-11 14:24:20 · 2130 阅读 · 0 评论 -
Cocos2d-x之物理引擎
术语Bodies主体:PhysicsBody持有一个对象的物理属性,包括mass(质量)、position(位置)、rotation(旋转)、velocity(速度)、damping(阻尼)。PhysicsBody对象是形状的主干部分,但它本身并没有形状,直到你附加一个形状到它身上。Material材料:描述材料的属性density:密度,用来计算父体的质量属性。restituti...原创 2020-03-10 11:21:44 · 2202 阅读 · 0 评论 -
创建3D图像的工具
3D编辑器Blender :这个工具是免费的3DS Max:这个要收钱,而且还不便宜,但它很专业Maya:与3D Max是同一家公司的产品,也要收钱Cocos2d-x转换工具并不是所有3D模型文件Cocos2d-x都能访问,还需要做一些转换后才能用。Cocos2d-x提供了一个命令行工具fbx-conv。它可以将FBX文件转换成 Cocos2d-x专有的格式 。 FBX是最常见的3D...原创 2020-03-10 00:34:49 · 2074 阅读 · 0 评论 -
Cocos2d-x之事件调度器
向事件调度器注册事件向Event Dispatcher(事件分派器)注册事件很容易。// Add listener_eventDispatcher->addEventListenerWithSceneGraphPriority(listener1,sprite1);需要注意的是,每个对象只能注册一次触摸事件。如果你需要使用同一个监听器。如果你需要对多个对象使用同一个监听器,则应使用...原创 2020-02-28 23:10:41 · 1907 阅读 · 0 评论 -
Cocos2d-x之自定义事件
系统定义的事件,如触摸事件、键盘事件等都是被系统自动触发的。除了使用系统定义的事件之外,我们还可以自定义一些事件,它们就不是由系统来触发了,而是由我们自己写的代码来触发,如:_listener = EventListenerCustom::create("game_custom_event1", [=](EventCustom* event){ std::string str("Cust...原创 2020-02-28 16:15:00 · 2248 阅读 · 0 评论 -
Cocos2d-x之Mouse鼠标事件
Cocos2d-x支持鼠标事件:_mouseListener = EventListenerMouse::create();_mouseListener->onMouseMove = CC_CALLBACK_1(MouseTest::onMouseMove, this);_mouseListener->onMouseUp = CC_CALLBACK_1(MouseTest::on...原创 2020-02-28 15:58:11 · 4139 阅读 · 0 评论 -
Cocos2d-x之加速度计事件
一些移动设备配备了加速计。加速度计是一种测量重力和方向变化的传感器。Cocos2d-x 也支持这些事件,创建也很容易,但在使用accelerometer events(加速度计事件)之前,你要在设备上,启用它们:Device::setAccelerometerEnabled(true);创建accelerometer事件:// creating an accelerometer event...原创 2020-02-28 15:55:16 · 1981 阅读 · 0 评论 -
Cocos2d-x之Keyboard事件
对于桌面游戏,你会发现使用键盘机制很有用。Cocos2d-x支持键盘事件,如:// creating a keyboard event listenerauto listener = EventListenerKeyboard::create();listener->onKeyPressed = CC_CALLBACK_2(KeyboardTest::onKeyPressed, thi...原创 2020-02-28 15:27:17 · 2063 阅读 · 0 评论 -
Cocos2d-x之Touch事件
Touch事件在移动游戏中是很重要的。它们很容易创建和提供多种功能。当你触摸移动设备的屏幕时,屏幕会知道你触摸了什么地方和触摸了什么。然后,会对你的触摸作为出应答。 触摸事件通常被分配一个优先级,优先级最高的事件才是响应的事件 。例子:// Create a "one by one" touch event listener// (processes one touch at a time...原创 2020-02-28 10:59:16 · 2108 阅读 · 0 评论 -
Cocos2d-x之事件分发机制
事件分发机制EventDispatch事件分发是响应用户事件的机制,基本组成:事件监听器封装了我们事件的处理代码事件分发器通知用户事件的监听器事件对象包含事件的信息有五种事件监听器:EventListenerTouch:响应touch触摸事件EventListenerKeyboard:响应键盘事件EventListenerAcceleration:响应加速度计事件Event...原创 2020-02-28 10:27:08 · 1931 阅读 · 0 评论 -
Cocos2d-x之Parallax视差
Parallax Node(视差节点)是一个特殊的节点类型。 它模拟视差滚动条。视差简单地说,你可以认为视差节点是一种特殊的效果,当你从不同的位置看物体时,它的位置或方向看起来是不同的。 包括通过取景器和相机镜头观看。ParallaxNode 对象可以按顺序移动,也可以通过鼠标、触摸、加速计或键盘事件手动移动。视差节点比常规节点要复杂一点。 因为它们需要使用多个节点才能工作。 ParallaxN...原创 2020-02-27 21:15:57 · 1991 阅读 · 0 评论 -
Cocos2d-x之Particle System粒子系统
你的游戏可能需要一些特效,如烈火、 施法视觉效果 、爆炸等等都可以通过particle system(粒子系统)来实现。 粒子系统是指计算机图形学技术,使用大量非常小的精灵或其他图形对象来模拟某些模糊现象, 否则很难用传统的渲染技术再现 。 实际的例子可能包括高度混沌的系统、自然现象或由化学反应引起的过程。你可以手动创建粒子效果,也有第三方工具可以有助创建,如:Effekseer:创建粒子效...原创 2020-02-26 09:48:23 · 2483 阅读 · 0 评论 -
Cocos2d-x之TileMap
TileMap(平铺图、瓦片图)是由瓦片组成的。每个瓦片都可以有独立的行为。瓦片图保存在一个基于XML影射格式的TMX文件中。TMX对象也很容易创建:// reading in a tiled map.auto map = TMXTiledMap::create("TileMap.tmx");addChild(map, 0, 99); // with a tag of '99'基于瓦片的...原创 2020-02-25 08:54:30 · 4204 阅读 · 0 评论 -
Cocos2dx之UI组件
Cocos2d-x提供了一套UI组件。包括Label Menu Buttons Checkbox Loading Bar Slider TextFieldLabelCocos2d-x提供Label对象,可以用真值类型、bitmap(位图)或内置系统字体来创建。Label BMFontBMFont是一种Label类型,它使用bitmap(位图)字体。位图中的字符由点的矩阵组...原创 2020-02-24 16:47:32 · 2511 阅读 · 0 评论 -
Cocos2dx之顺序执行和同时执行Actions
顺序执行多个Action使用Sequence对象来实现。auto mySprite = Node::create();// move to point 50,10 over 2 secondsauto moveTo1 = MoveTo::create(2, Vec2(50,10));// move from current position by 100,10 over 2 seco...原创 2020-02-20 00:54:34 · 2088 阅读 · 0 评论 -
Cocos2dx之Actions
创建Scene场景和添加Sprite对象到场景中只是游戏开发的一部分。对于一个游戏而言,我们要让游戏中的东西能够移动。Action(动作)对象是每一个游戏中不可或缺的部分。 Actions(动作)允许Node对象在时空中转换。想从一个点移动Sprite对象到另一个点,并在完成时,调用回调,怎样可以实现呢?我们在一个Node节点上创建一个Action动作序列。这些可以是改变Node对象的positi...原创 2020-02-20 00:42:58 · 1991 阅读 · 0 评论 -
Cocos2dx之Sprite
所有游戏都有Sprite(精灵)对象。它是就是你在屏幕上移动的对象。游戏的主角也是一个Sprite(精灵)。并不是所有图形对象都是Sprite(精灵)对象。Sprite(精灵)对象是可以移动的,不能移动的就是一个Node(节点)。Sprites(精灵)非常容易创建。它们有一些可配置的属性,如:position(位置)、 rotation(旋转)、 scale(缩放)、 opacity(不透明度)...原创 2020-02-19 02:17:28 · 2229 阅读 · 0 评论 -
Cocos2dx之Scene和Scene Graph
在我们的游戏中我们可能需要主菜单、结束场景和一些其他层次。那么我们如何组织他们呢?答案:Scene。正如电影一样,会被直接分解成若干个场景。游戏也是如此。不管这个游戏的大小,我们都要想出几个游戏场景。Renderer渲染器负责绘制Scene场景。渲染器负责收集所有一切在屏幕上的东西。Scene Graph场景图scene graph是一个数据结构,它用来安排一个图形化的场景。scene gra...原创 2020-02-15 22:04:17 · 2093 阅读 · 0 评论 -
Cocos2dx之AppDelegate类
AppDelegate是一个很重要的类。它只会被调用一次。游戏就是从这个类开始的。这个类的关键部分:1、设计分辨率有助我们决定我们的Sprite(精灵)对象要多大等。这是基于设备的屏幕尺寸的。AppDelegate与分辨率相关的:static cocos2d::Size designResolutionSize = cocos2d::Size(480, 320);static cocos2...原创 2020-02-15 18:32:06 · 2191 阅读 · 0 评论 -
Ubuntu18.04和Android Studio搭建Cocos2d开发环境
搭建步聚第一步:下载Cocos2d第二步:解压并安装Cocos2d第三步:设置Cocos2d第四步:使用cocos命令创建游戏项目下载Cocos2d下载地址:http://www.cocos2d-x.org/download本例下载的版本是cocos2d-x-4.0注意:不同版本的cocos2d的配置过程可能不一样,可以参考解压文档里的README.md文件。解压并安装Cocos...原创 2020-02-14 11:18:21 · 2390 阅读 · 0 评论 -
Cocos2d的基本概念
Cocos2d-x是一个跨平台游戏引擎。游戏引擎是提供所有游戏都需要的公共功能的软件的一部分。我们以前经常听到API或者是框架,其实游戏引擎也是这样的东西。游戏引擎包括了许多组件,可以有效提高游戏开发效率。 游戏引擎通常包括以下这些部分:renderer(渲染器), 2d/3d graphics( 二维/三维图形 ), collision detection(碰撞检测), physics eng...原创 2020-02-14 02:03:23 · 2218 阅读 · 0 评论