cocos2d-x 3.0 新しい物理演算クラスの利用
Upcoming SlideShare
Loading in...5
×
 

cocos2d-x 3.0 新しい物理演算クラスの利用

on

  • 3,229 views

cocos2d-x 3.0 新しい物理演算クラスの利用

cocos2d-x 3.0 新しい物理演算クラスの利用

Statistics

Views

Total Views
3,229
Views on SlideShare
3,132
Embed Views
97

Actions

Likes
4
Downloads
12
Comments
0

5 Embeds 97

http://frogegg.jp 90
http://s.deeeki.com 2
https://www.chatwork.com 2
http://feedly.com 2
https://kcw.kddi.ne.jp 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

cocos2d-x 3.0 新しい物理演算クラスの利用 cocos2d-x 3.0 新しい物理演算クラスの利用 Presentation Transcript

  • cocos2d-x 3.0 新しい物理演算クラスの利用 株式会社TKS2 清水友晶
  • 清水 友晶 —  株式会社TKS2 スマートフォンアプリ開発 Webコンテンツ開発 —  日本cocos2d-xユーザ会代表 講演活動 執筆活動 —  チラ裏開発メモ: http://tks2.net/memo —  SlideShare: http://www.slideshare.net/doraemonsss
  • —  6/25発売 —  6/18発売 —  2,800円 + 税 —  2,980円 + 税 —  400ページ —  312ページ —  日経ソフトウェア 2014年2月号 View slide
  • —  日本cocos2d-xユーザ会 http://cocos2d-x.jp —  cocos2d-x開発元Chukong Technologies社公認 —  cocos2d-xのための自由なコミュニティー —  入門者から上級者まで誰でもOK!!ぜひご参加を! (1100人以上参加) —  cocos2d-xに関することなら何でも投稿できます!! —  https://www.facebook.com/groups/cocos2dxjp/ View slide
  • —  1/23 第16回 shinjuku.cocos2d-x —  2/20 第17回 shinjuku.cocos2d-x —  3/M 第18回 shinjuku.cocos2d-x
  • 目次 —  cocos2d-xの物理演算エンジンについて —  Chipmunkについて —  物理空間の基本 —  新しい物理演算用クラスについて —  —  —  —  PhysicsWorld PhysicsBody PhysicsContact PhysicsJoint
  • cocos2d-xの物理演算エンジンについて —  cocos2d for iPhoneやcocos2d-x (C++)では、次の2D向 け物理演算エンジンが利用できることが知られている —  Box2D —  Chipmunk —  JavaScript Bindings(JSB)においては、Box2Dでのパ フォーマンスが悪いため、Chipmunkのみが利用されていた —  cocos2d-x 3.0 betaでは、3種類の物理演算エンジンの利 用方法がある —  物理演算エンジンを直接利用する (Box2D, chipmunk) —  PhysicsSpriteクラスの利用 (Box2D, chipmunk) —  こちらの方法は、日経ソフトウェア2014年2月号で紹介 —  PhysicsWorld, PhysicsBodyクラスなどの利用(chipmunk) —  今日のハンズオンで紹介
  • Chipmunkについて —  http://chipmunk-physics.net —  C言語で開発された2D向け物理演算エンジン —  無償で利用可能 —  有償版もある —  Unity向け(C#) —  PRO版
  • 物理空間の基本 —  物理空間(world)を用意する —  オブジェクトに対して、物理構造(body)を用意する World(Space) それぞれに物理構造(body)を与える
  • 新しい物理演算用クラスについて —  cocos2d-x 2.x系までは、Box2DやChipmunkが用意して いるメソッド・構造体などを直接(CCPhysicsSpriteクラス を含む)利用する必要があった(3.x系でも利用可能) —  cocos2d-x 3.x系より、Chipmunkを知らなくても物理演算 用のクラスを利用することで、物理エンジンを利用するこ とが可能になった —  Sceneクラスには、標準で物理空間(world)を用意できるメ ソッドが追加された —  Spriteクラスには、標準で物理構造(body)を設定できるメソッ ドが追加された —  その他、便利なクラスが多数用意されている
  • 今日使う画像 —  ボール http://goo.gl/gfCcL3
  • PhysicsWorld —  物理空間に相当する —  worldは、Sceneクラスが保持する —  Sceneクラスのインスタンスを生成するとき、次のメ ソッドを実行する —  Scene::createWithPhysics() —  そのインスタンスに対して、getPhysicsWorld()メ ソッドを実行することで、PhysicsWorldを取得できる —  重力は、PhysicsWorldに対してsetGravity()メソッド により設定する
  • PhysicsBody —  物理構造に相当する —  PhysicsBody::create()メソッドの他に、次のような メソッドが用意されている —  createCircle() —  createBox() —  createEdgeBox() —  createPolygon() —  SpriteクラスのsetBodyメソッドの引数に、 PhysicsBodyクラスのインスタンスを渡すことで、オ ブジェクトに対して物理構造を与えることができる
  • PhysicsContact —  物理構造を持ったオブジェクト同士が、衝突したときのイベ ントを受け取ることができる —  イベントリスナーを利用する —  EventListenerPhysicsContact —  受け取るイベントは次の4つ —  —  —  —  onContactBegin onContactSeperate onContactPreSolve onContactPostSolve —  特定のオブジェクト同士が、衝突したときのイベントのみを 受けることも可能
  • PhysicsJoint —  2つのオブジェクトを連結することができる —  PhysicsJointクラスを利用することで様々な連結を行 うことができる —  ただし振る舞いを想像しにくい。。。&説明しにくい —  サンプルを見たほうが、理解しやすい —  cocos2d-x TestCPP - PhysicsTest
  • おわり —  次回、CocoStudioとcocos2d-xの連携2