cocos2d-iphone心得

源码下载地址:

http://code.google.com/p/cocos2d-iphone/downloads/list

https://github.com/cocos2d/cocos2d-iphone-classic/releases?after=release-0.2

问题:[[CCDirector sharedDirector] runWithScene: [sysMenu scene]];导演是怎么把screen放到屏幕上的呢?

找了老半天发现只有这个- (void) pushScene: (CCScene*) scene,把这个注了,就显示不了了,

后来又找了很长时间终于找到了,

EAGLView里

- (void) layoutSubviews

[director performSelectorOnMainThread:@selector(drawScene) withObject:nil waitUntilDone:YES];

-(void) mainLoop
{
[self drawScene];
}

- (void) startAnimation
{
NSAssert( isRunning == NO, @"isRunning must be NO. Calling startAnimation twice?");

// XXX:
// XXX: release autorelease objects created
// XXX: between "use fast director" and "runWithScene"
// XXX:
[autoreleasePool release];
autoreleasePool = nil;

if ( gettimeofday( &lastUpdate_, NULL) != 0 ) {
CCLOG(@"cocos2d: Director: Error in gettimeofday");
}

isRunning = YES;

SEL selector = @selector(mainLoop);
NSMethodSignature* sig = [[[CCDirector sharedDirector] class]
instanceMethodSignatureForSelector:selector];
NSInvocation* invocation = [NSInvocation
invocationWithMethodSignature:sig];
[invocation setTarget:[CCDirector sharedDirector]];
[invocation setSelector:selector];
[invocation performSelectorOnMainThread:@selector(invokeWithTarget:)
withObject:[CCDirector sharedDirector] waitUntilDone:NO];

// NSInvocationOperation *loopOperation = [[[NSInvocationOperation alloc]
// initWithTarget:self selector:@selector(mainLoop) object:nil]
// autorelease];
//
// [loopOperation performSelectorOnMainThread:@selector(start) withObject:nil
// waitUntilDone:NO];
}

- (void) startAnimation
{
NSAssert( displayLink == nil, @"displayLink must be nil. Calling startAnimation twice?");

if ( gettimeofday( &lastUpdate_, NULL) != 0 ) {
CCLOG(@"cocos2d: DisplayLinkDirector: Error on gettimeofday");
}

// approximate frame rate
// assumes device refreshes at 60 fps
int frameInterval = (int) floor(animationInterval_ * 60.0f);

CCLOG(@"cocos2d: Frame interval: %d", frameInterval);

displayLink = [NSClassFromString(@"CADisplayLink") displayLinkWithTarget:self selector:@selector(mainLoop:)];
[displayLink setFrameInterval:frameInterval];
[displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
}

时间: 2024-08-18 22:19:10

cocos2d-iphone心得的相关文章

cocos2d iphone环境搭建

1:首先需要安装好XCode 开发环境. (如果还没有安装XCode开发环境,可以到AppStore下载,很方便的[仅仅需要注册一下就可以下载,完全免费,最新版本为XCode4.5]) 2: cocos2d开源库下载地址如下: http://code.google.com/p/cocos2d-iphone/downloads/list 我选择的最新beta版本(cocos2d-iphone-2.1-beta2.tar.gz) 3:下载完成后,进行解压,然后在终端执行安装cocos2d模板的脚本就

我常用的iphone开发学习网站[原创]

引用地址:http://www.cnblogs.com/fuleying/archive/2011/08/13/2137032.html Google 翻译 Box2d 托德的Box2D的教程! Box2D的 - 首页 如何只使用碰撞检测的cocos2d iPhone Box2D的|雷Wenderlich “一个SpaceManager游戏|适用于iPhone的cocos2d Box2D 论坛 box2d用户手册 Box2D 论坛iPhone IOS开发中心 iOS 开发中心 iOS Dev C

IOS游戏开发相关网站

首先记录并分享下我收集到的几个自学时最常用到的一些网站链接. 直接进入正题: 1-Stack Overflow http://stackoverflow.com/ 这个是国外类似于百度知道的网站,但是专注于回答程序开发相关问题,我有非常多的问题都是通过在这里查询解决的,这是我们百度知道所不知道的事情. 2-iOS Developer Library http://developer.apple.com/library/ios/navigation/#section=Resource%20Type

Cocos2dx学习笔记一

目录: 第一部分:Cocos2d-x介绍 第二部分:Windows 7环境下Visual Studio 2012中搭建Cocos2d-x 3.3beta0集成开发环境 第三部分:HelloWorld示例详解   一.        Cocos2d-x介绍 Cocos2d-x是一个开源的移动2D游戏框架,MIT许可证下发布的.这是一个C++ Cocos2d-iPhone项目的版本.Cocos2d-X发展的重点是围绕Cocos2d跨平台,Cocos2d-x提供的框架.手机游戏,可以写在C++或者Lu

A*算法最简单的介绍

A*搜寻算法,俗称A星算法,作为启发式搜索算法中的一种,这是一种在图形平面上,有多个节点的路径,求出最低通过成本的算法.常用于游戏中的NPC的移动计算,或线上游戏的BOT的移动计算上.该算法像Dijkstra算法一样,可以找到一条最短路径:也像BFS一样,进行启发式的搜索. A*算法最为核心的部分,就在于它的一个估值函数的设计上:        f(n)=g(n)+h(n) 其中f(n)是每个可能试探点的估值,它有两部分组成:    一部分,为g(n),它表示从起始搜索点到当前点的代价(通常用某

ios开发学习网站

Box2d 托德的Box2D的教程! Box2D的 - 首页 如何只使用碰撞检测的cocos2d iPhone Box2D的|雷Wenderlich “一个SpaceManager游戏|适用于iPhone的cocos2d Box2D 论坛 box2d用户手册 Box2D 论坛iPhone IOS开发中心 iOS 开发中心 iOS Dev Center - Apple Developer IOS开发人员库 Foundation框架参考 内存管理编程指南:内存管理 The Objective-C P

cocos2d 设置iphone竖屏

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { return UIInterfaceOrientationIsPortrait(interfaceOrientation ); } // For ios6, use supportedInterfaceOrientations & shouldAutorotate instead - (NSUInteger)

iPhone开发与cocos2d 经验谈

转CSDN jilongliang : 首先,对于一个完全没有mac开发经验,甚至从没摸过苹果系统的开发人员来说,首先就是要熟悉apple的那一套开发框架(含开发环境IDE.开发框架uikit,还有开发语言objective-c).对于有一定编程经验的人来说,学习objective-c可能1-2周时间就够了,但是,要真正用好这门语言,并且最大限度地利用这门语言来提高开发效率的话,那就需要时日了.这里推荐两本书<objective-c基础教程>和<iphone开发基础教程>,这两本都

cocos2d Tiledmap使用心得

创建时候: 1:确定地图的行和列 2:确定每个地图块的宽带和高度 关于整个地图的尺寸 地图的宽度=地图块的宽度*列 地图的高度=地图块的高度*行 如果地图是 30行40 列 地图块的尺寸是32*32 整个地图宽度是1280,高度就事960 使用Tiledmap创建地图 1:准备图块 :一定要被某个图块尺寸整除 2:创建地图 3:创建图块 4:地图的编辑区域编辑地图 5:保存地图为tmx文件 6:加载图层 代码:auto 图层名字= TMXTiledMap::create("m01.tmx&quo

关于cocos2d安装时编译不成功(个人心得)

在解压cocos2d执行vs2010.sln时错误发生不能成功生成.遇到这样的错误: 1>c:\program files\microsoft sdks\windows\v7.0a\include\objidl.h(11280): error C2061: 语法错误: 标识符"__RPC__out_xcount_part" 1>c:\program files\microsoft sdks\windows\v7.0a\include\objidl.h(11281): err