A-Frame Kinemati c - проблема с высотой камеры - PullRequest
0 голосов
/ 06 марта 2020

У меня проблема с тем, что мне нужно, чтобы моя камера была телом Kinemati c и сталкивалась с элементами стены, однако я не могу заставить ее оставаться на фиксированной высоте оси y, равной 1,6. Мне нужен способ держать камеру на такой высоте, сохраняя при этом ее атрибут kinemati c -body, потому что мне нужны столкновения со стенами для работы. Я приложил код, на котором я застрял до сих пор.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <script src="https://aframe.io/releases/1.0.3/aframe.min.js"></script>
    <script src="//cdn.rawgit.com/donmccurdy/aframe-physics-system/v4.0.1/dist/aframe-physics-system.min.js"></script>
    <script src="https://cdn.jsdelivr.net/gh/donmccurdy/aframe-extras@v6.1.0/dist/aframe-extras.min.js"></script>
    <script src="https://rawgit.com/rdub80/aframe-gui/master/dist/aframe-gui.min.js"></script> <!--GUI Library-->
    <script src="https://unpkg.com/aframe-environment-component@1.1.0/dist/aframe-environment-component.min.js"></script> <!--Environment extension-->
    <title>Courtyard and Entrance Scene</title>

</head>
<body>
    <a-scene physics="debug: true">
        
            <a-entity id="camera" position="0 1.6 0" camera look-controls wasd-controls="acceleration: 400" kinematic-body>
                <a-cursor></a-cursor>
                <a-gui-label 
                        id="playerLocation"
                        width="1" height="0.2"
                        font-size="4.5rem"
                        padding="1rem 2rem"
                        position="2 1.5 -2"
                        value="gui label"
                >
                </a-gui-label>
            </a-entity>
            
            <!-- Floor -->
            <a-plane static-body material="color: grey" width="15" height="15" rotation="-90 0 0" position="0 0 0"></a-plane>
            
            <a-box width="10" height="5" depth="0.5" static-body material="color: red" position="0 0 -5"></a-box>
            
    </a-scene>
</body>
</html>

Любое понимание этой проблемы будет с благодарностью!

1 Ответ

1 голос
/ 06 марта 2020

Смещения рассчитываются правильно при использовании буровой установки:

<a-entity id="rig" movement-controls kinematic-body>
    <a-entity id="camera" camera position="0 1.6 0" look-controls></a-entity>
</a-entity>

Проверьте это в этой скрипке.

...