Cocos2dx-3.2引擎架构
文章平均质量分 78
传涛
传涛的技术博客.....
展开
-
Cocos2dx引擎7-内存管理机制
在C++中,可以再栈上分配内存也可以在堆上分配内存;如果对象在栈上分配内存,那么内存释放就不管我们的事了;如果在堆上分配内存,那么我们还需要负责将分配的内存在不需要的时候释放;C++的动态内存管理建议遵守谁申请谁释放的原则,即谁使用new,那么谁就需要使用delete释放内存。在同一个生命周期内,这是很容易实现的;如果对象的生命周期超出了创建对象的函数,我们就很难再遵循谁申请谁释放的原则了,我原创 2014-10-11 15:39:13 · 365 阅读 · 0 评论 -
Cocos2dx引擎3-运行流程-基于IOS
IOS应用入口文件main.mmint main(int argc, char *argv[]) { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; int retVal = UIApplicationMain(argc, argv, nil,@"AppController"); [pool re原创 2014-10-11 14:13:28 · 519 阅读 · 0 评论 -
Cocos2dx引擎2-运行流程-基于Android
AndroidCocosdx程序首先由AppActivity.java文件开始执行public class AppActivity extendsCocos2dxActivity {}类AppActivity继承与Cocos2dxActivity,而AppActivity实现为空,故首先执行父类方法; 在cocos2d\cocos\platform\android\java\原创 2014-10-11 14:06:13 · 722 阅读 · 0 评论 -
Cocos2dx引擎8-事件处理
本文从主要介绍点击事件的处理过程,分别从win32、Android、IOS系统介绍Cocos2dx点击事件处理过程。 1、Win32系统 AppDelegate::applicationDidFinishLaunching()->GLView::create(…)->GLView::initWithRect(…)bool GLView::initWithRect(conststd::原创 2014-10-11 15:44:58 · 1248 阅读 · 0 评论 -
Cocos2dx引擎6-分辨率适配
在cocos2dx 2.0之后,Cocos2dx为不同分辨率手机提供了适配的方法,就是使用setDesignResolutionSize,一般情况下在AppDelegate.cpp文件中使用,如下:auto director = Director::getInstance();auto glview = director->getOpenGLView();if(!glview) {glv原创 2014-10-11 14:49:05 · 444 阅读 · 0 评论 -
Cocos2dx引擎5-坐标系统
l OpenGL坐标系Cocos2dx以OpenGL&OpenGL ES为基础,支持OpenGL坐标系。该坐标系原点在屏幕左下角,x轴向右,y轴向上。 l 屏幕坐标系屏幕坐标系使用的是不同的坐标系统,原点在屏幕左上角,x轴向右,y轴向下。触摸屏事件传入的位置信息使用的是该坐标系,在cocos2dx中对触摸事件做出响应前,需要首先把触摸点转化到OpenGL坐标系。这一点在后面的触原创 2014-10-11 14:34:53 · 621 阅读 · 1 评论 -
Cocos2dx引擎4-Node系统
Node继承于Ref,Ref为内存管理类Node在cocos2dx中为抽象类,需要渲染的对象都是从Node继承来的,例如:Scene、Layer、LayerColor、Sprite等等。 成员函数:virtual bool init();static CCNode * create(void);创建和初始化接口,create函数会自动调用autorelease vi原创 2014-10-11 14:20:30 · 502 阅读 · 0 评论 -
Cocos2dx引擎10-事件派发
本文介绍Cocos2dx事件(下面简称Event)处理机制中的事件分发模块,在Event发生后,进过一系列处理,最后将会分发Event; 1、dispatchEvent& dispatchTouchEvent方法voidEventDispatcher::dispatchEvent(Event* event){ if (!_isEnabled) return; upd原创 2014-10-11 18:10:59 · 858 阅读 · 0 评论 -
Cocos2dx引擎9-注册事件监听器
1、事件处理方法下面为普通的点击事件监听器(下面简称EventListener)注册部分;注册EventListener需要实现onTouchBegan方法,可以实现onTouchEnded、onTouchCancelled方法,当然如果你想监听触控(鼠标)移动(拖动)监听器需要实现onTouchMoved方法,这里使用Lambda方式简单实现了onTouchBegin方法;auto ev原创 2014-10-11 15:47:40 · 985 阅读 · 0 评论 -
Cocos2dx引擎1-运行流程-基于Win32
Win32Cocosdx程序首先由mian.c文件开始执行 AppDelegate app;会执行AppDelegate类的构造函数,而AppDelegate集成于Application类,即首先AppDelegate类的构造函数Application::Application(){ ….. sm_pSharedApplication = this;}原创 2014-10-11 13:58:32 · 542 阅读 · 1 评论