#12004/5/10 22:44:48
我在Director8.5中做一个房间与室内桌椅的碰撞检测。我把整个封闭房子定义成了一个模型,而怎么也实现不了,桌子仍然能穿墙而入。代码如下:
on beginSprite me
member("kitchen").model("fangzi").addModifier(#collision)
member("kitchen").model("fangzi").collision.mode=#box
member("kitchen").model("fangzi").collision.enabled=true
member("kitchen").model("yizi01").addModifier(#collision)
member("kitchen").model("yizi01").collision.mode=#box
member("kitchen").model("yizi01").collision.enabled=true
member("kitchen").model("zuozi01").addModifier(#collision)
member("kitchen").model("zuozi01").collision.mode=#box
member("kitchen").model("zuozi01").collision.enabled=true
member("kitchen").model("fangzi").collision.resolve=true
member("kitchen").model("yizi01").collision.resolve=true
member("kitchen").model("zuozi01").collision.resolve=true
member("kitchen").model("yizi01").collision.setCollisionCallBack(#collision, me)
member("kitchen").model("zuozi01").collision.setCollisionCallBack(#collision, me)
member("kitchen").model("fangzi").collision.setCollisionCallBack(#collision, me)
end
问题1:象我这种情况:一个模型在另一个模型里面要做碰撞检测可不可以?可以的话,怎么实现?不可以的话,是不是就得把房子模型的每堵墙分开定义,这可不可以在direcor中修改,还是需要重新建模,重新导入(我是用3ds建模的)?
问题2:是不是对房间内的所有物体都要进行如上那样的定义,这样太麻烦了,因为房间内物体很多。有没有其他的办法?
请多多指教!!
万分感谢!!