Функция hypeDocument.queryIntersections
дополняет Hype API функцией проверки пересечений между исходным элементом (Node
) и списком целевых элементов (NodeList
) с использованием элементов Physics в Hype 4.
Одновременное использование физики и обнаружения перекрестков
Итак, в комнате есть слон. Как насчет использования этого подхода, когда вы уже используете физический движок для чего-то другого, а статические элементы, необходимые для обнаружения пересечений, взаимодействуют с игрой нежелательным образом. Существует простое решение под названием collisionFilter
в Matter.js, и его можно использовать для удаления элементов из физической симуляции, запущенной Hype, при этом они остаются активными для обнаружения пересечений и других форм запросов (таких как точка, луч и т. д.).
Следующая функция удаляет все элементы из обычной области взаимодействия физики Hype:
Одним интересным побочным продуктом обнаружения пересечений является то, что оно работает исключительно в Matter-Engine. Следовательно, если вы отключите видимость (display:none
), она все равно будет работать для обнаружения пересечения. Если в вашей игровой логике необходимо учитывать статус видимости, просто отфильтруйте элементы, возвращенные из проверки пересечения.
Вот пример файла, созданный с помощью Tumult Hype 4, и не забудьте проверить ветку форума по этой теме для дальнейшего развития.