Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

34
Cocos2d-x(JS) ハハハハハ #3 ハハハハハハハハハハハハ ハハハハ TKS2 ハハハハ

Transcript of Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

Page 1: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

Cocos2d-x(JS) ハンズオン #3複数あるボタンの使い分け

株式会社 TKS2 清水友晶

Page 2: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

清水 友晶株式会社 TKS2

アプリ開発コンサルCocos2d-x サポートスマホアプリ開発

プライベートでもCocos2d-x に関するゲーム開発講演活動執筆活動

マイブーム : ゲームエンジン調査

チラ裏開発メモ : http://tks2.net/memoSlideShare: http://www.slideshare.net/doraemonsssFacebook: http://www.facebook.com/doraemonsss

Page 3: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」
Page 4: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

http://line.me/S/sticker/1085672

Page 5: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

もくじおさらい

Cocos2d-x(JS) の開発環境構築

ボタンの紹介cc.Menu クラスcc.ControlButton クラスccui.Button クラス

実際にさわってみるccui.Button クラスcc.Menu クラスcc.ControlButton クラス

Page 6: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

ボタンの紹介

Page 7: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

新しい画像ファイルの追加新しい画像は「 res 」フォルダに配置する

button.png と buttonHighlighted.ong を配置しよう

http://goo.gl/KIRgN4       ↑      ( 大文字のアイ )

Page 8: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

新しい画像ファイルの追加新しい画像ファイルパスを「 resource.js 」に登録

Page 9: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

ボタンの紹介cc.Menu クラス

cc.ControlButton クラス

ccui.Button クラス

Page 10: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

cc.Menu クラス概要

Cocos2d-x 初期より存在したボタンcc.MenuItem クラスがボタンcc.Menu クラスがボタンを管理するクラス

メリットメニューで利用するときに便利

デメリット1 つのボタンとして利用するには不便ボタンのイベントが 1 種類のみ (TouchEnded)

Page 11: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

cc.MenuItem クラス文字のボタン

cc.MenuItemLabel クラスcc.MenuItemFont クラスcc.MenuItemAtlasFont クラス

画像のボタンcc.MenuItemSprite クラス

cc.MenuItemImage クラス

トグルボタンcc.MenuItemToggle クラス

Page 12: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

cc.ControlButton クラス概要

Cocos2d-x v2 系の頃に追加されたクラスcc.Control クラスは従来より高機能なオブジェクト

メリットボタンのイベントが豊富ボタンの背景画像の自動調整機能があるボタンの各状態に対して、ラベル・画像を変更可能

デメリット必ずラベル (cc.Label) が必要

Page 13: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

イベントの種類 TOUCH_DOWN イベント

TOUCH_DRAG_INSIDE イベント

TOUCH_DRAG_OUTSIDE イベント

TOUCH_DRAG_ENTER イベント

TOUCH_DRAG_EXIT イベント

TOUCH_UP_INSIDE イベント

TOUCH_UP_OUTSIDE イベント

TOUCH_CANCEL イベント

Page 14: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

ccui.Button クラス概要

Cocos Studio のために用意されたボタン

メリットccui.Button クラスのみで完結

するシンプルなボタン

デメリットボタンのイベント取得時

に、 type による分岐が必要

Page 15: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

実際にさわってみるccui.Button クラス

cc.ControlButton クラス

cc.Menu クラス

Page 16: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

ccui.Button クラスボタンを利用する準備

テンプレートプロジェクト - project.json

Page 17: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

ccui.Button クラスボタンの表示

テンプレートプロジェクト - app.js

Page 18: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

ccui.Button クラスボタンのイベント

テンプレートプロジェクト - app.js

Page 19: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

ccui.Button クラス

ソースコードはこちらhttps://goo.gl/o6bJO1

Page 20: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

ccui.Button クラス

Page 21: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

cc.ControlButton クラスボタンを利用する準備

テンプレートプロジェクト - project.json

Page 22: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

cc.ControlButton クラス画像の表示に利用

テンプレートプロジェクト - app.js

Page 23: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

cc.ControlButton クラスボタンのイベント

テンプレートプロジェクト - app.js

Page 24: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

cc.ControlButton クラスボタンのイベント

テンプレートプロジェクト - app.js

Page 25: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

cc.ControlButton クラス

ソースコードはこちらhttps://goo.gl/2i14At

Page 26: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

cc.ControlButton クラス

Page 27: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

cc.Menu クラス画像の表示に利用

テンプレートプロジェクト - app.js

Page 28: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

cc.Menu クラスボタンのイベント

テンプレートプロジェクト - app.js

Page 29: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

cc.Menu クラス

ソースコードはこちらhttps://goo.gl/5FnH0t

Page 30: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

cc.Menu クラス

Page 31: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

作業はここまで

Page 32: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

参考になるサイト

Cocos 公式 Wikihttp://www.cocos2d-x.org/wiki/Cocos2d-JS

Cocos2d-JS API リファレンスhttp://cocos2d-x.org/wiki/Reference

Qiita( tag: cocos2d-js )https://qiita.com

Page 33: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

Cocos2d-x (JS) ハンズオンCocos2d-x (JS) を学ぶチャンス!

PC を持参し実際に手を動かし、 Cocos2d-x (JS) が難しくないということが実感できます!

2/5( 金 ) Cocos2d-x (JS) ハンズオン #4日時 : 2/5( 金 ) 19:00 〜 21:00場所 : イベント & コミュニティスペース dots.内容 : Cocos2d-x (JS) の

   タッチイベントの使い方   ( iOS, Android, ブラウザ)

Page 34: Cocos2d-x(JS) ハンズオン #03「複数あるボタンの使い分け」

おわり

ありがとうございました