2016-07-04 1 views
0

私はlove2dの物理モジュールを使ってゲームを始めています。ボディードローイングとコリジョンゾーンがシフト

私は、歩いていくために(横の)壁オブジェクトを作成しようとしましたが、問題があります:
プレーヤーは壁の描画の部分を通過することができます壁の左側に「空気」のように見えるものの上に。

衝突ゾーンと図面が完全に重ならないようです。

これは私が(Wallクラスの)壁を構築しています方法です:これはどのようにある

function Wall:new(x, y, w, h, world) 
    self.x = x 
    self.y = y 
    self.w = w 
    self.h = h 

    self.body = love.physics.newBody(world, self.x, self.y, "kinematic") 
    self.shape = love.physics.newRectangleShape(self.w, self.h) 
    self.fixture = love.physics.newFixture(self.body, self.shape, 100) 
end 

と私は

objects.wall = Wall(40, height - 60, 200, 5, world) 

main.luaで)これらの変数とコンストラクタを呼んでいます私はそれを描いています(Wallクラス内)

私は使用していますクラスを作るにはrxi/classic

壁が描かれているだけで、それはプレイヤーと奇妙なやり取りをするだけです。

ここにスクリーンショットhttps://imgur.com/sbLIY8v

+0

マインドスクリーンショットを投稿できますか? – user6245072

+0

@ user6245072 doneそれは –

+0

あなたが使用したメーターに問題がありますか? – user6245072

答えて

0

私は、xとyは左上隅の座標であることを考慮したためnewRectangleShapeは、矩形の中心のためのx、y座標を必要とし、自分のドロー機能が間違っていたが判明。