物理演算Sample

物理エンジンにオブジェクトを追加する

addBody(オブジェクト, 物理エンジン上の振る舞い, 物理的条件)
physics.addBody(circle, "static", {density = 1, friction = 0.3, bounce = 0.4})

circle(円だと仮定します)を "static"(動かないオブジェクト) で物理エンジンに登録します。
動くオブジェクトの場合は "dynamic" を指定します。

参考 CoronaSDK Reference[physics.addBody]

https://docs.coronalabs.com/api/library/physics/addBody


物理エンジンを開始

local physics = require("physics")
physics.start()

物理エンジンを開始します。

参考 CoronaSDK Reference[start]

https://docs.coronalabs.com/api/library/physics/start


重力を設定する

physics.setGravity(x、y)

デフォルトの (0, 9.8) から重力を変える時に使います。

参考 CoronaSDK Reference[setGravity] https://docs.coronalabs.com/api/library/physics/setGravity


物理エンジンを一時停止する

physics.pause()

CoronaSDK Reference[pause]

https://docs.coronalabs.com/api/library/physics/pause


物理エンジンに入れたオブジェクトを取り除く

physics.removeBody(object)

参考 CoronaSDK Reference[removeBody] https://docs.coronalabs.com/api/library/physics/removeBody


オブジェクトの速さを設定する

object:setLinearVelocity(x、y)

x軸の速さとy軸の速さをかっこに入れて速さを設定します。

参考 CoronaSDK Reference[setVelocity]

https://docs.coronalabs.com/api/type/Body/setLinearVelocity


オブジェクトがスクリーンに出るか

rect.isVisible = true

ブーリアンでコントロールします。

参考 CoronaSDK Reference[isVisible]

https://docs.coronalabs.com/api/type/DisplayObject/isVisible


衝突判定

function onCollision(event)
    event.other.isVisible = false
end

ball:addEventListener("collision", onCollision)

ball と衝突したオブジェクトを見えなくします。
衝突したオブジェクトは event.other で取ることができます。

参考 CoronaSDK Reference[collision]

https://docs.coronalabs.com/api/event/collision/index

results matching ""

    No results matching ""