Cocos Creator3D:物理材质

推荐:将NSDT场景编辑器加入你的3D工具链
3D工具集:NSDT简石数字孪生

物理材质

在 Cocos Creator 3D 中物理材质是一种资源,它记录了物体的表面信息,这些信息用来计算碰撞物体受到的摩擦力和弹力等。

属性

物理材质属性如下图所示:

物理材质
属性解释
friction摩擦系数
restitution回弹系数

当与其它表面接触时,这些系数用于计算相应的摩擦力和弹力。

创建

物理材质可以通过两种方式创建:

  1. 编辑器内创建
  2. 代码实例化

用编辑器创建的方式如下图所示:

创建物理材质

代码中实例化:

let newPmtl = new PhysicMaterial();
newPmtl.friction = 0.1;
newPmtl.restitution = 0.1;

应用

目前物理材质以碰撞体为单位进行设置,每个Collider都具有一个material的属性(不设置时,Collider将会引用物理系统中的默认物理材质)。 应用到Collider同样也分编辑器操作和代码操作两种方式。

编辑器内操作,只需要将资源拖入到cc.PhysicMaterial属性框中即可,如下图所示:

应用物理材质

代码中操作:

const collider = this.node.getComponent(Collider);
collider.material = newPmtl;

因为材质共享的设计,实际在代码中可以直接这样操作(因为在获取 material时会创建一个实例)

collider.material.friction = 0.1;
collider.material.restitution = 0.1;

3D建模学习工作室 翻译整理,转载请注明出处!

上一篇:Cocos Creator3D:碰撞组件 (mvrlink.com)

下一篇:Cocos Creator3D:刚体组件 (mvrlink.com)

NSDT场景编辑器 | NSDT 数字孪生 | GLTF在线编辑器 | 3D模型在线转换 | UnrealSynth虚幻合成数据生成器 | 3D模型自动纹理化工具
2023 power by nsdt©鄂ICP备2023000829号