A-Frame статическое тело на a-объекте

Я пробую на физике кадра

Я могу применить свойства static-body к объекту формы:

<a-sphere color="red" width="2" height="2" depth="2" position="2 1 -5" rotation="45 0 0" static-body></a-sphere>

Но не на объекте a-entity, я все еще могу перемещаться через объект:

<a-entity static-body obj-model="obj:models/lamp_mesh.obj;mtl:images/lamp_mesh.mtl" rotation="0 90 0" position="5.46 0 0" animation></a-entity>

Можно ли применять статические / динамические свойства только к объекту фигуры?

Или я где-то сделал что-то не так

Я видел много уроков физики по объекту формы, но не по объекту-сущности.

Пожалуйста посоветуй. Заранее спасибо.

1 ответ

Решение

Там не должно быть никаких проблем с использованием static-body с любым <a-entity> элементы. Здесь у вас есть ссылка, где я использую его с <a-entity> с моделью GLTF.


Есть полезный флаг debug: true для physics составная часть:

<a-scene physics="debug: true">

Если вы не видите каркас вокруг вашего объекта, то, возможно, к нему не прикреплено физическое тело.


Убедитесь, что ваша модель загружена правильно, проверьте каркас вокруг него, если его нет, вы можете:

1) конвертировать ваши .obj модель для веб-стандарта .gltf (официальный конвертер здесь)
2) Создать physics тела вручную. Из документов:

<a-entity gltf-model="src: mug.glb"
      body="type: dynamic; mass: 5; shape: none;"
      shape__main="shape: cylinder;
                   height: 0.36;
                   radiusTop: 0.24;
                   radiusBottom: 0.24;"
      shape__handle="shape: box;
                     halfExtents: 0.15 0.18 0.04;
                     offset: 0.4 0 0;">
</a-entity>
Другие вопросы по тегам