Hello cocos2d ios
-
Upload
keisuke-hata -
Category
Travel
-
view
7.539 -
download
2
description
Transcript of Hello cocos2d ios
Hello!! cocos2d2Dゲームフレームワーク cocos2dの紹介
@Seasons2011年1月30日日曜日
Today’s agenda
•What is cocos2d?
•???
•Introduction author
•How to learn?
2011年1月30日日曜日
Introduction author
@Seasonscocos2d AUTHOR
Blog:Seasons.NET•cocos2dリリース情報の翻訳•テクニカル情報の翻訳
@cocos2dfan_jp 管理人•cocos2dに関する情報を不定期にポスト
2011年1月30日日曜日
•Open Source
•License
•Feature1,2,3
•Application Record
•Community
What is cocos2d?
2011年1月30日日曜日
What is cocos2d?
•Open Sourcehttps://github.com/cocos2d/cocos2d-iphone最新版:0.99.5
•LicenseMITライセンス•非常に制限が緩い•ソースコードの再配布も可能•アプリケーションにロゴ表示するかも選択自由
2011年1月30日日曜日
What is cocos2d?
•Feature 1-1•2Dゲーム制作に必要な機能が揃っている‣スプライト表示、管理‣シーン、レイヤー管理機構‣エフェクト(2D,3Dエフェクト)‣アクション機能(シーケンス、トランスフォーム、イーズ、コールバック)‣メニュー機能‣物理エンジン統合( Box2D , Chipmunk[Space Manager] )‣テキスト表示‣パーティクルシステム‣テクスチャアトラス‣視差スクロール‣タイルマップ‣サウンド処理‣レンダリングテクスチャ(画面キャプチャー)‣縦横対応‣PowerVR Textureサポート(PVRTC,PVR)‣OpenGL ES 1.1ベース‣マルチタスク‣RetinaDisplay
ゲーム作りに集中できる
2011年1月30日日曜日
What is cocos2d?
•Feature 1-2•サードパーティ製のツールとの連携
VertexHelper Pro
TexturePacker
Zwoptex
テクスチャ最適化、アトラス作成
ParticleDesigner
コリジョン作成
パーティクル作成
All Mac application
2011年1月30日日曜日
What is cocos2d?
•Feature 1-3•iOS版 -> Mac版への変換が簡単
Mac OS版
Mac App Storeでの販売もしやすい!!
•Mac用のXcodeプロジェクトが同梱•コードはほとんど変更しないで済む ( Touch -> Mouse )
iPhone版
2011年1月30日日曜日
What is cocos2d?
•Application record
ヌカカの結婚 など(Muu Muu Co.,Ltd.)
【電子書籍】
【ゲーム系】
iYamato、iNinja(Geppetto Inc)
Alice for iPhone/iPad(Atomic Antelope)
Urban Rivals(Boostr)
ポケットベガス(Appbank)
http://www.cocos2d-iphone.org/games/
2011年1月30日日曜日
What is cocos2d?
•Community
•cocos2d.org:http://www.cocos2d-iphone.org/•cocos2dに関する最新情報の取得•テクニカルなスレッド(日々更新)•cocos2dで作られたゲームの紹介
•Twitter•ハッシュタグ:#cocos2d•検索:cocos2d•@cocos2dfan_jp , @cocos2d , @cocos2dx
•Blog: http://www.learn-cocos2d.com/•@gaminghorror氏によるcocos2d入門、応用講座
2011年1月30日日曜日
How to learn?
•Books
•Sample Source
•CCScene, CCLayer, CCNode
•CCSprite
•CCAction
•CCSequence, CCSpawn, CCRepeat...
•misc
2011年1月30日日曜日
How to learn?
•Books
@gaminghorror氏 著
•cocos2dのほぼ全機能について解説•洋書プログラミング部門1位•cocos2d ユーザー必読本
cocos2d 入門本•ミニゲームを作成しながら学習•基本的な機能について丁寧に解説•CCActionの図解が嬉しい!!•物理エンジンは、Chipmunkを解説
PDF販売あり: (販売元はそれぞれ異なる)
cocos2d 入門本2•基本的な機能について丁寧に解説•Box2Dに関する解説が詳しい•VertexHelperの使い方も掲載
発売中!! 発売中!! Rough Cut
2011年1月30日日曜日
•Sample Source•starterkit(フライトコントロール的なソース):@gaminghorror氏
•books付属のサンプル
販売:http://www.learn-cocos2d.com/store/line-drawing-game-starterkit/
サンプルやミニゲームのコードが満載
How to learn?
2011年1月30日日曜日
CCScene
CCLayerCCNode
How to learn?
•CCScene,CCLayer,CCNode
Game
CCLayerCCLayer
CCNode
CCNode
CCScene
CCScene
•CCScene•CCLayerを管理(子供)
Example)タイトルシーン ( TitleScene )ゲームシーン ( GameScene )リザルトシーン ( ResultScene)
•CCLayer•CCNodeを管理(子供)(場合によってはCCLayerも)
Example)背景レイヤー(BackLayer)スコアレイヤー(ScoreLayer)ゲームレイヤー(GameLayer)
•ゲーム全体AppDelegate
CCLayer
•CCNode•ゲームオブジェクト
Example)プレイヤー、敵 ( PlayerObject )ロジック( LogicObject )
2011年1月30日日曜日
How to learn?
•CCScene,CCLayer,CCNode•How to create?
CCLayer
CCScene @interface GameLayer : CCLayer@end
id scene = [GameLayer scene] インスタンスメソッド +(id) scene
+ (id) scene { CCScene *scene = [CCScene node]; GameLayer *layer = [GameLayer node]; [scene addChild:layer]; return scene;}
[[CCDirector sharedDirector] runWithScene:scene]
2011年1月30日日曜日
How to learn?
•CCScene,CCLayer,CCNode•How to create?
- (id) init { .... PlayerObject *player = [PlayerObject node]; [self addChild:player];}
CCNode @interface PlayerObject : CCNode@end CCLayer
PlayerObjectに限らず、レイヤー(CCLayer)内に必要なオブジェクトをaddChildで追加
2011年1月30日日曜日
How to learn?
•CCSprite•How to create?
CCSprite *sp = [CCSprite spriteWithFile:@”icon.png”];sp.position = ccp( 200, 200 );
[self addChild:sp];
(200,200)
追加したいScene,Layer,Node等にaddChildするだけ!!とっても簡単!!
2011年1月30日日曜日
How to learn?
•CCAction•How to create and use?CCSprite *sp = [CCSprite spriteWithFile:@”icon.png”];sp.position = ccp( 200, 200 );CCMoveTo *move = CCMoveTo actionWithDuration:1.0 position:ccp(sp.position.x+100, sp.position.y)];[sp runAction:move];
(200,200)
runActionに生成したアクションを渡す。CCNodeを継承したクラスは、全てrunActionを持つ。
(300,200)
2011年1月30日日曜日
How to learn?
•CCAction•Many action!!
CCMoveTo
CCMoveByCCJumpBy
CCJumpToCCShow
CCScaleTo
CCScaleBy
CCPlace
CCRotateBy
CCRotateTo
CCBlinkCCFadeIn
CCFadeOut
CCTintTo
CCTintBy
CCShow
CCHide
2011年1月30日日曜日
How to learn?
•CCSequence, CCSpawn, CCRepeat...•What is this?
CCMoveTo
CCJumpTo
CCScaleTo
CCSequence
CCAction
CCAction
CCAction
CCSpawn
CCMoveTo
CCJumpTo
CCScaleTo
CCRepeat
CCMoveBy
CCMoveBy
CCMoveBy
2011年1月30日日曜日
How to learn?
•misc
cocos2d recommend autorelease object why?
Example)CCNode+ (id) node { return [[[self alloc] init] autorelease];}
CCSprite+ (id) spriteWithFile:(NSString *)filename return [[[self alloc] initWithFile:filename] autorelease];}
autorelease pool node
spritenext time
メモリリークが発生しづらい!!1回の処理で大量のautoreleaseオブジェクトは生成しないように気を付ける
2011年1月30日日曜日
One more thing....???
2011年1月30日日曜日
CCGaussianBlurSprite
CCGaussianBlurSprite *gbs;gbs = [CCGaussianBlurSprite blurSpriteWithFile:@"icon.png" blurCount:20];gbs.blurspeed = 2; // ブラー速度[gbs startAnimation]; // ブラーアニメーション開始
コード
実行結果
2011年1月30日日曜日
CCGaussianBlurSprite
元ネタ•manucorporat氏が作成•AbstractWarのために作った•ソースコードはgithubで公開済み•次期cocos2dに統合予定
スプライトにブラー処理をかけることができる!!
2011年1月30日日曜日
CCGaussianBlurSprite
特徴•ピクセル処理をCPUで行う( CCMutableTexture)•処理するピクセル数に依存(画面全体で10-15fps)
小さいスプライトなら、リアルタイム処理が可能
ならば作ってみる
2011年1月30日日曜日
CCGaussianBlurSprite
Source code is available today!!git://gist.github.com/801911.git
https://github.com/manucorporat/AWTextureFilter
GaussianBlur for cocos2d source
2011年1月30日日曜日
My book
Now on sale!!
iOS 4プログラミングブックAmazon プログラミング部門1位 !!
そのまま使えるiPhoneアプリプログラム
電子書籍版もあります!
2011年1月30日日曜日
Enjoy iOS game programming
2011年1月30日日曜日