green hack coronahandson#2

13
ColonaLabs.com Coronaでスマホアプリ開発Corona HandsOn #2 CoronaSDK Ambassador 小野 哲生

Upload: tetsuo-ono

Post on 02-Jul-2015

245 views

Category:

Education


3 download

DESCRIPTION

Green HackさんでのCoronaHandsOnの午後の内容

TRANSCRIPT

Page 1: Green Hack CoronaHandsOn#2

ColonaLabs.com

~Coronaでスマホアプリ開発~

  Corona HandsOn #2

CoronaSDK Ambassador      小野 哲生

Page 2: Green Hack CoronaHandsOn#2

ColonaLabs.com

Corona SDK でのアニメーション・物理

二限目。。。キーンコーン♪

カーンコーン♪

Page 3: Green Hack CoronaHandsOn#2

ColonaLabs.com

!

• アニメーション(再描画・API利用) !

• 物理演算(開始・衝突判定)

Corona SDK でのアニメーション・物理

Page 4: Green Hack CoronaHandsOn#2

ColonaLabs.com

• 再描画アニメーション

local rect = display.newRect( 100, 100, 100, 100 )

!

local function mR( event ) rect.x = rect.x + 1 rect.rotation = rect.rotation + 1 end Runtime:addEventListener("enterFrame", mR )

Corona SDK でのアニメーション・物理

Page 5: Green Hack CoronaHandsOn#2

ColonaLabs.com

local rect = display.newRect( 100, 100, 100, 100 )

local function moveRect( event ) if( event.phase == "ended" ) then

transition.to( rect, { time = 1000, y = 400, } )

end end rect:addEventListener( "touch", moveRect )

• CoronaAPIでアニメーション

Corona SDK でのアニメーション・物理

Page 6: Green Hack CoronaHandsOn#2

ColonaLabs.com

• 物理演算の開始local physics = require ( ”physics” ) physics.start( ) !

local land = display.newRect( 160, 360, 320, 10 )

physics.addBody( land, “static”, { friction = 0.3 } )

!

local circle = display.newCircle( 50, 50, 25 ) physics.addBody( circle, { bounce = 0.6, radius = 25 } )

Corona SDK でのアニメーション・物理

Page 7: Green Hack CoronaHandsOn#2

ColonaLabs.com

Corona SDK でのアニメーション・物理

• 衝突判定 -1local physics = require ( ”physics” ) physics.start( ) !

local land = display.newRect( 160, 360, 320, 10 )

physics.addBody( land, “static”, { friction = 0.3 } ) !

local circle = display.newCircle( 50, 50, 25 ) physics.addBody( circle, { bounce = 0.6, radius = 25 } )

Page 8: Green Hack CoronaHandsOn#2

ColonaLabs.com

Corona SDK でのアニメーション・物理

• 衝突判定 -2!

!

local function onCollision( ) land:setFillColor( 1, 0.5, 0.04 )

end !

land:addEventListener( “collision”, onCollision )

Page 9: Green Hack CoronaHandsOn#2

ColonaLabs.com

• work #1( 重力方向 )

Corona SDK でのアニメーション・物理

オブジェクトと実体の違いを見よう 重力の方向を変えてみよう

※書く場所は考える !

表示モードの変更 physics.setDrawMode( “hybrid” ) 重力方向の設定 physics.setGravity( x, y )

Page 10: Green Hack CoronaHandsOn#2

ColonaLabs.com

• work #2( センサー )

Corona SDK でのアニメーション・物理

衝突の判定だけをするセンサー作り

※ 質量、摩擦、反発を設定しない !

オブジェクトをセンサーにする { isSensor = true } 見えないセンサーにする obj.isVisible = false ※余裕があれば、音も鳴らしてみよう!

Page 11: Green Hack CoronaHandsOn#2

ColonaLabs.com

  Corona SDK #2 まとめ

Page 12: Green Hack CoronaHandsOn#2

ColonaLabs.com

  Corona SDK #2 まとめ

!

• アニメーション(再描画・API利用) !

• 物理演算(開始・衝突判定)

Page 13: Green Hack CoronaHandsOn#2

ColonaLabs.com

お疲れさまでした~♪

#アプリ作成へ

つづく。。。