如何在corona sdk中防止球漂浮在地面上

我有一张带有透明像素的图像(地面),因为地面有山丘和上下起伏的地形...问题是球没有根据山丘的高低移动上下...球只是漂浮在图像上。我该怎么办??

-- 使用相对中心点加载图像
local bg2 = display.newImage("images/ground.png",true)
bg2:setReferencePoint(display.CenterLeftReferencePoint)
-- 设置位置
bg2.x = 0; bg2.y = _H/1.25;

-- 加载物理引擎
local physics = require("physics")
physics.start()

-- 创建红色球
local redOrb = display.newCircle( 0, 0, 25)
redOrb:setFillColor(255,0, 0)
-- 设置重力
physics.setGravity(0,9.8)
-- 设置位置与旋转
redOrb.x = 180; redOrb.y = 190; redOrb.rotation = 5

-- 添加地面和红色球的物理属性
physics.addBody( bg2, "static", { friction=0.5, bounce=0.3 } )
physics.addBody( redOrb, { density=3.0, friction=0.5, bounce=0.3 } )
点赞
用户1605727
用户1605727

当您为一个带有透明度的图像添加身体时,它不会自动将身体设置为图像本身。

您可以使用这个工具来为物理身体添加

http://www.codeandweb.com/physicseditor

http://www.codeandweb.com/blog/2012/05/24/getting-started-with-coronasdk-and-physicseditor-tutorial

要查看实际的物理身体,您可以添加以下代码

physics.setDrawMode("hybrid")
2013-08-10 13:51:46