unity3d怎么添加碰撞体
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了unity3d怎么添加碰撞体相关的知识,希望对你有一定的参考价值。
1、首先,打开Unity,创建一个圆球和一个平面。
2、将球的高度调高一点,让它位于平面上空。
3、给球体添加刚体,输入rigidbody,如下图所示。
4、点击运行,带有刚体组件,可以看到小球自然下落到平面上。小球、平面上自带碰撞器,所以小球不能穿过去。
5、可以自己给平面一个碰撞器,点击添加碰撞器,如下图所示。
6、添加好后,可以调整碰撞器的大小,由于是规则图形,所以创建出来的碰撞器与平面非常贴合,改变一下碰撞器的大小为x、y大小为11。
7、可以看到碰撞器已经出现在我们的视野中,可以调整大小以适合物体或角色,这样可以完美模拟现实中的碰撞效果。
参考技术Aunity3d添加碰撞体步骤如下:
1、打开unity3d场景在里面导入一个相对更复杂的模型。
2、首先我们给这个模型添加Rigdibody刚体组件。
3、接着在Compont给其添加Mesh Collider组件。
4、勾选里面的 Convex,会默认根据自己的模型生成一个碰撞范围,但是不是很精确。
5、如果要更精确的碰撞,我们可以根据模型对应的部分,创建多个碰撞网格模型。
6、然后我们展开模型,把里面的网格ear1拖放到Mesh中,然后勾选Convex就可以在对应的位置建立碰撞范围,比如这里的右边的耳朵。
7、接着我们可以再次添加一个Mesh Collider把模型的另一个耳朵ear也添加上碰撞范围ear2。
8、同样的方式我们可以把模型需要添加碰撞的地方都添加上去,然后运行就可以得到更真实的物理效果了。
参考技术B unity3d添加碰撞体方法:1、碰撞体分为几种:球、立方体、网格、圆柱、胶囊等。
2、选中对象。
3、在U3D上方菜单component->Physics->BoxCollider就是立方体碰撞器。
4、你也可以在此处选择其他类型的collider。 参考技术C 1.碰撞体分为几种:球、立方体、网格、圆柱、胶囊等
2.你选中对象,在U3D上方菜单component->Physics->BoxCollider就是立方体碰撞器,你也可以在此处选择其他类型的collider来自:求助得到的回答本回答被提问者采纳 参考技术C 选中所要添加的对象,然后在菜单栏的component中选择相应的碰撞器就添加上了
在cocos creator中使用代码给TileMap地图块添加碰撞体
cc.Class({
extends: cc.Component,
properties: {
tiledMap:cc.TiledMap
},
// LIFE-CYCLE CALLBACKS:
onLoad () {
//开启物理效果
cc.director.getPhysicsManager().enabled = true;
cc.director.getPhysicsManager().debugDrawFlags = true;
},
start () {
let tiledSize = this.tiledMap.getTileSize();
let layer = this.tiledMap.getLayer("这里填需要添加碰撞体的组名");
let layerSize = layer.getLayerSize();
for(let i = 0;i < layerSize.width;i++){
for (let j = 0; j < layerSize.height; j++) {
let tiled = layer.getTiledTileAt(i,j,true);
if (tiled.gid != 0) {
tiled.node.group = "这里填需要添加碰撞体的组名";
let body = tiled.node.addComponent(cc.RigidBody);
body.type = cc.RigidBodyType.Static;
let collider = tiled.node.addComponent(cc.PhysicsBoxCollider);
collider.offset = cc.v2(tiledSize.width/2,tiledSize.height/2);
collider.size = tiledSize;
collider.apply();
}
}
}
},
// update (dt) {},
});
以上是关于unity3d怎么添加碰撞体的主要内容,如果未能解决你的问题,请参考以下文章
unity3d 怎么检测碰撞?比如主角碰撞到物体之后销毁被撞到的物体