首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >A帧物理系统:自定义物理材料

A帧物理系统:自定义物理材料
EN

Stack Overflow用户
提问于 2017-06-16 13:16:44
回答 1查看 752关注 0票数 4

我使用“A帧物理系统”(https://github.com/donmccurdy/aframe-physics-system)在A帧中创建了一个场景:

代码语言:javascript
复制
<!DOCTYPE>
<html>
<head>

<script src="aframe.min.js"></script>
<script src="aframe-extras.min.js"></script>
<script src="aframe-physics-system-master/dist/aframe-physics-system.min.js"></script>
</head>

  <a-scene id="myscene" physics>
    <!--CAMERA-->
    <a-entity camera="userHeight: 1.6" look-controls></a-entity>

    <!--BALL1-->
    <a-sphere color="red" radius="0.3" position="5 5 5" dynamic-body></a-sphere>

    <!--BALL2-->
    <a-sphere color="green" radius="0.3" position="6 5 5" dynamic-body></a-sphere>

    <!--GROUND-->
    <a-plane id="ground" height="200" width="200" rotation="-90 0 0" position="0 0 0" metalness="0" roughness="1" static-body></a-plane>

  </a-scene>
</body>
</html>

场景由两个球体和一个平面组成。当一个球撞上飞机时,我想让它弹得比其他球多。我从文档中了解到,我们可以通过以下方法改变整个场景的摩擦和复原等属性:

代码语言:javascript
复制
<a-scene physics="friction: 0.1; restitution: 0.5">
    <!-- ... -->
</a-scene>

但我想要不同领域的摩擦和恢复价值。如果有可能,请让我知道。提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-16 16:54:53

根据物理构件文档:通过CANNON.js JavaScript API为不同对象指定不同的碰撞行为。

对于自定义行为,您需要深入到Cannon.js文档并找到所需的方法和类。尽管如此,实现定制材料的方式如下:

  • 加农炮物理是在他们自己的Cannon.world中计算/制造的。
  • 大炮有自己的材料
  • Cannon.ContactMaterial定义了物理,当这些对象相互碰撞/交互时。它需要添加到Cannon.world,因为它负责物理学。

有了这些,您可以首先执行以下操作:

  • 获取CANNON.world引用:var world = $('a-scene')[0].systems.physics.world;
  • 创建两个像这样的定制材料:var firstMaterial = new CANNON.Material("firstMaterial"); var secondMaterial = new CANNON.Material("secondMaterial");
  • 将材料应用于a帧对象:$('#cannon')[0].body.material=firstMaterial; $('floor')[0].body.material=secondMaterial;
  • 创建一个接触材料并将其添加到世界var secondCM = new CANNON.ContactMaterial(firstMaterial,secondMaterial, [restitution = 2]); world.addContactMaterial(secondCM);

这里你可以找到一把有用的小提琴。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44590227

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档