cocos2dx -- 学习笔记】的更多相关文章

cocos2d-x学习笔记(18)--游戏打包(windows平台)           之前做好的游戏,都是在vs2008下编译执行的.假设说想把游戏公布到网上或者和其它人一起分享游戏,那就得对游戏进行打包.以下我就向大家介绍一款程序打包工具 ----Enigma Virtual Box,这个软件的下载链接我就不提供了,大家在网上输入这个keyword,就有非常多下载链接了.          既然要执行游戏,就得找到.exe文件.有些人可能打开project文件夹下(我的是myGame01)…
原创文章,转载请注明出处:http://blog.csdn.net/sfh366958228/article/details/38964637 前言 之前学了那么多的内容.差点儿全部的控件都要涉及内存管理类CCAutoreleasePool.所以这一次的学习笔记,我们一起来看看CCAutoreleasePool,先从CCObject的autorelease方法入手. CCObject::autorelease CCObject* CCObject::autorelease(void) { //…
1. Scene 简介 游戏中我们看到/看不到的所有元素都是展示在场景之Scene上. 我们可以把场景比作放在地上的没盖纸箱,层Layer是纸箱里堆放的玻璃,Sprite等元素画在玻璃Layer上,这样我们从纸箱上往下看就能看到这一个场景.场景切换时,是更换不同的纸箱. 概括的说,导演管理N个场景,场景管理N个层,层管理N个精灵等等小的元素,每个精灵有N个动作Timer等等. 场景Scene直接继承了Node. 场景创建时,调用init方法初始化. 在主循环中先后执行场景的:onEnter ==…
[Cocos2d-x 学习笔记 目录链接] 1. 简介 control为其子类提供了touch回调函数,当子类触发EventType相关事件时,会调用相关的回调函数. control对象接收到的事件类型分9类: enum class CC_EX_DLL EventType { TOUCH_DOWN = << , DRAG_INSIDE = << , DRAG_OUTSIDE = << , DRAG_ENTER = << , DRAG_EXIT = <&…
[Cocos2d-x 学习笔记 目录链接] 1. 简介 ControlButton实现了按钮功能,根据触摸的位置和移动的过程可识别9中EventType类型,执行对应的回调函数. 直接继承了Control.拥有9种EventType和4种State. 2. create 按钮的创建需要Label和Scale9Sprite. 构造函数: ControlButton::ControlButton() : _isPushed(false) , _parentInited(false) , _doesA…
[Cocos2d-x 学习笔记 ]目录 1. 简介 TableView直接继承了ScrollView和ScrollViewDelegate.说明TableView能实现ScrollView拖动container的效果.重写了ScrollViewDelegate的委托方法scrollViewDidScroll,对ScrollView功能进行“拓展”. TableView和ScrollView都能够在可视范围内拖动container,在可视范围内展示部分的container,但是两者也有明显的不同.…
[Cocos2d-x]学习笔记目录 本文链接:https://www.cnblogs.com/deepcho/p/cocos2dx-render.html 1. 从程序入口到渲染方法 一个Cocos2d-x项目流程中,在每一帧进行一次渲染,渲染的时机是在调度器update方法执行之后.所渲染的是当前的场景_runningScene,当前场景执行Scene::render()方法进行渲染. 在场景的渲染方法Scene::render()中,对UI树进行中序遍历,遍历到的元素执行其draw方法.对于…
原创文章.转载请注明出处:http://blog.csdn.net/sfh366958228/article/details/38706483 通过前两份学习笔记,我们不难发现CCScene.CCLayer.CCSprite等一系列元素都是CCNode的子类. 可是CCNode绝对是Cocos2d-x中举足轻重的一个核心,我们可以把它理解为节点.它是一个不可以可视化显示的抽象类,仅仅是用来定义全部节点的公共属性和方法的. 特征 1)每一个节点都能够通过addChild方法包括其它节点作为子节点,…
原创文章,转载请注明出处:http://blog.csdn.net/sfh366958228/article/details/38656755 前言 正式来公司实习已有一月,前一月主要是看了<C++ Primer>给Cocos2d-x的学习打下基础. 之前在学校曾用Cocos2d-x开发过简单的飞机大战,对于Cocos2d-x的基本控件有简单了解,这一次希望通过进一步的学习.并加以撰写学习笔记的形式,可以对Cocos2d-x有更深理解. 因为眼下公司使用的Cocos2d-x版本号是2.0.故此…
[Cocos2d-x]学习笔记目录 本文链接:https://www.cnblogs.com/deepcho/cocos2dx-drawcall-glcalls 1. 屏幕左下角 我们通常在Cocos2d-x项目运行前,在AppDelegate::applicationDidFinishLaunching()方法中,执行 director->setDisplayStats(true); 用于开启屏幕左下角的数据显示,数据一共三行,分别是: 第一行GL verts表示此时绘制的顶点数. 第二行GL…
Node类(在3.0版本以下叫CCNode):节点类. 本文记录以下几个方法的学习笔记: init()和onEnter()这俩个方法都是CCNode的方法.其区别如下: 1.其被调用的顺序是先init(),后onEnter(). 2.init()在类的初始化时只会调用一次. 3.onEnter在该类被载入场景的时候被调用,可能会发生多次. 4.CCLayer* cclayer = new MyLayer(); 这种情况下,只会触发onEnter. 5.CCLayer* cclayer = MyL…
TestCpp源代码基于Cocos2d-x2.1.3版本号,部分资源来自红孩儿的游戏编程之路CSDN博客地址http://blog.csdn.net/honghaier/article/details/8130947 在VS2010中展开TestCppproject,以下包括46个演示样例文件夹,除此之外,还包括:(1)AppDelegate.h/cpp:程序控制类AppDelegate.(2)controller.h/cpp:演示样例场景管理类TestController.用于显示全部演示样例…
最近在学习cocos2dx,预备将学习过程整理成笔记. 需要的工具和环境整理一下: 使用的版本 cocos2dx目前已经出到了v3.1.1,学习和项目的话还是用2.2.3为宜,毕竟不大想做小白鼠,并且学习了几天之后才发出3.X版本的,版本内容变动比较大. 开发环境 1 jdk 1.6以上 2 python 2.7为宜(创建项目要用的) 3 NDT+Android SDK 4 Cygwin或者MinGW 开发工具 1 Eclipse + CDT + ADT 2 VS2010 3 Sublime T…
学习总结: 1.sprintf用来格式化字符串 2.CCSpriteFrame:: frameWithTexture通过图片名创建的时候需要的参数Texture2D创建使用CCTextureCache::sharedTextureCache()->addImage(str) 3.CCAnimation用来装载已经缓存的图片动画资源CCAnimation *animation=CCAnimation::animationWithFrames(arrayList, 0.2f); 4.循环动画需要使用…
终于准备开始学习cocos2d-x了.因为想和同学一起做游戏参加比赛,所以打算学习很热的Cocos2d-x.因为已经学习了C++,所以我想入门应该不是很困难.再加上官网有中文教程以及多不胜数的游戏开发教程,所以个人认为只要有心事一定能学好的.说来惭愧,我之前曾花了几天照着视频做了一个“一个都不能死”的游戏,但是现在一点映像都没有了.哎╮(╯▽╰)╭,只能重新学习了. 配置:win8 64位+cocos2d-x3.6+VS2013+Python2.7.8.cocos2d-x3.6我放在了D盘,项目…
 这几天在看控件类,临时没有想好实际运用的方向.单纯的创建网上已经有非常多这方面的样例,我就不写了.接下来是学习精灵类.精灵类若是单独学习也是非常easy.于是我加了一些有关动画方面的知识点与精灵类一起使用.让精灵播放简单的帧动画. 首先我们准备好动画素材,我在网上下了一个小游戏.将里面的素材做成了png和plist大图以供程序调用.我是用TexturePackerGUI来生成plist的.我选的是一个简单的待机动作,我们的目的就是让这张图动起来~ 第一种方式:使用CCSpriteFrame…
 Cocos2d-x中的定时器使用非常easy,共同拥有3种:schedule.scheduleUpdate和scheduleOnce.简介一下三种的差别: schedule,每隔指定时间运行某个自己定义的函数 schedule(schedule_selector(自己定义函数名),间隔时间); scheduleUpdate,每帧运行一次Update函数(仅仅能是以Update命名的函数,须要调用其它函数则使用schedule) scheduleOnce,在指定时间后运行某个自己定义函数,且…
之前了解了一种比较简单的图片的使用方式, 今次来了解稍微复杂一点的图片使用方式,plist+png. 这里要用到之前提到的Texture Packer. Texture Packer是一款图片打包工具,Texture Packer可以将素材打包成我们项目需要的格式. Cocos2dx支持很多种格式, 我们可以将某一种类的或者有共性的图片打包到一个png,然后用plist管理,以节约加载和内存,且显卡支持的纹理尺寸的长宽为2的n次幂,Texture Packer会把纹理整合到次尺寸. 今次我们利用…
可运行的代码可以说明一切问题. 环境需安装VS201x + Python2.7 + Cocos2d-x-2.2.5.(Linux下参考链接:http://www.cocos2d-x.org/wiki/How_to_run_cpp-tests_on_Linux) 1. 点击cocos2d-win32.vc201x.sln,打开后,编译(可以查看一下,例子项目的依赖项): 2. TestCpp中,查看各种特性的例子与效果(从这里能更快速学习): 3. 进入目录cocos2d-x-2.2.5\tool…
布景层类也就是CCLayer类,每一个游戏场景中都能够有非常多层,每一层负责各自的任务.显示地图.显示人物等.同一时候层还是一个容器,能够放入文本.图片和菜单.构成游戏中一个个UI.这次将学习在场景中加入移除层.设置层属性和在层中实现一些简单的操作. 首先我们来看一下层的创建: bool LayerTest::init() { ////////////////////////////// // 1. super init first if ( !CCLayer::init() ) { retur…
1. 3.4final控制台创建项目后,安卓编译会失败,必须手动把cocos/平台/andorid/java/src目录里的文件复制到安卓项目的src文件夹即可 2. 安卓的文件目录与win的略有不同,读取文件时最好把文件目录输完整,以防出错 3. 物理世界不要放在inti()里初始化.因为init()是在layer创建后立刻自动执行的初始化程序,而m_World是在layer的init()执行完后再初始化的,如果在init里使用m_World,会发生异常. 4. 使用不同版本的COCOS之前需…
在此我会将一步步看到的小白我认为疑难和重点记下,并自解,若是在无法解答,便以红色标记出来,希望各位大神帮忙解惑. 一.onEnter()还有OnExit()是什么 因为小白在使用cocos2dx这款的时候,没有了解他,现在知道,他是在结点处便定义的一个接口,在每次场景开始的时候调用onEnter(),结束的时候调用onExit(),在这里可以进行资源的内存管理. 相应的还有onEnterTranstionDidFinish()以及onEixtTranstionDidStart(),这个就是如果在…
作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz Cocos2d-x源码包下载地址: http://cocos2d-x.org/projects/cocos2d-x/wiki/Download 我下载的是cocos2d-2.0-x-2.0.4版本,下载后,直接解压缩. 我用的IDE是VS2010,首先执行源码包根目录下的批处理文件install-templates-msvc.bat安装VS2010模板文件,这样以后才可以创建自己的Cocos2d-x项目. 打开解…
转自:http://blog.csdn.net/we000636/article/details/8263503 接受触屏事件的优先级是值越小,响应触屏事件的优先级越高 Z值越大,越外面 JNI:允许Java代码与其它语言写的代码进行交互 cocos2d-x好像对tmx中使用bmp图片不支持 BombMan.win32.exe 中的 0x10007f50 (libcocos2d.dll) 处最可能的异常: 0xC0000005: 写入位置 0x0000000c 时发生访问冲突 “BombMan.…
Cocos2D-x 引擎的设计思路是将游戏的各个部分抽象成几个概念,包括导演.场景.布景层和人物精灵,它们之间的关系如图3-1 所示: 导演(CCDirector): 顾名思义,导演类是游戏中的组织者和领导者,是整个游戏的负责人.总指挥.导演类可以制定游戏的运行规则,从而让游戏内的场景.布景类和精灵类有序地进行. 场景(CCScene):场景就是一个关卡,或者是一个游戏界面.这样的一个一个场景确定了整个的游戏. 布景层(CCLayer):一个场景可以由多个布景层构成.布景层就是关卡里的背景,关卡…
第一部分:基本图形绘制 cocos2dx封装了大量opengl函数,用于快速绘制基本图形,这些代码的例子在,tests\DrawPrimitivesTest目录下 注意,该方法是重载node的draw方法实现的,在智能机上,并不推荐直接绘制几何图形,因为大量的坐标编码会极大降低工作效率,应尽量使用Image.而且cocos2dx的渲染机制会造成前后遮挡问题,尤其是几何图形与图片等其他node混合绘制时. void HelloWorld::draw() { CCLayer::draw(); CCS…
Cocos2d-x有一个包括全部其它头文件的cocos2d.h,仅仅要在使用时包括这个头文件,就能够使用引擎的全部功能.Cocos2d-x的类都放置于cocos2d的命名空间下,如引擎下的"actions/CCAction.h"中在文件首尾使用NC_CC_BEGIN和NS_CC_END来将全部类型包括在cocos2d命名空间下.在游戏中使用#define USING_NS_CC using namespace cocos2d定义的宏USING_NS_CC来说明命名空间. 1.构造函数与…
1.游戏-可控制的动画-连续的静态图像 2.关键帧驱动游戏 3.事件驱动型游戏 4.cocos2d-x 1.0 opengl-es 1.0;cocos2d-x 2.x opengl-es 2.0;cocos2d-3.x opengles 2.0重写api 5.cocos2d-x github地址 https://github.com/cocos2d/cocos2d-x 6.核心:opengl es,directx,canvas,pthread:物理:box2d,chipmunk;网络:libcu…
一个例子就够了,单击文本标签,执行动画.我也是小白,写这个demo的时候遇到了问题,单击文本标签游戏就死掉了.今天为了解决这个问题也是一晚没睡,到学习群里问大神,经过大神的指点解决了问题.原来是Animation和Animate的生命周期的关系.先记下. bool HelloWorld::init() { ////////////////////////////// // 1. super init first if ( !Layer::init() ) { return false; } Sp…
调度器: 定时任务是通过调度器实现的.cocos2d-x推荐用调度器而不是其他方法实现定时任务.Node类都知道如何调度和取消调度事件. 有3种调度器: 默认调度器:schedulerUpdate() 自定义调度器:schedule(SEL_SCHEDULE selector, float interval, unsigned int repeat, float delay) schedule(SEL_SCHEDULE selector, float delay) 单次调度器:scheduleO…