A-рамка Raycaster не работает (нужна точка пересечения с a-небом) - PullRequest
0 голосов
/ 06 июня 2018

Хорошо, поэтому я пытаюсь найти координаты пересечения заклинателя лучей с a-небом, но проблема в том, что а) я не могу видеть заклинатель лучей, хотя я добавляю showline: правда б) к слушателю пересечения никогда не обращаются (пересеченияникогда не срабатывает)

<html>
    <head>
        <script src="https://aframe.io/releases/0.8.0/aframe.min.js"> </script>
        <script src="https://npmcdn.com/aframe-animation-component@3.0.1"></script>
        <script src="https://npmcdn.com/aframe-event-set-component@3.0.1"></script>
        <script src="https://npmcdn.com/aframe-layout-component@3.0.1"></script>
        <script src="https://npmcdn.com/aframe-template-component@3.1.1"></script>

        <script type="text/javascript">
            AFRAME.registerComponent('collider-check', {
                dependencies: ['raycaster'],
                init: function () {
                this.el.addEventListener('raycaster-intersected',
                                         function (evt) {
                    alert(evt.detail.intersection.point);
                    console.log('Player hit something!');
                    });
                }
            });
        </script>
    </head>
    <body>
        <a-scene>
            <a-sky class="collidable"  src="{{asset('img/3_Entree_2.jpg')}}"> </a-sky>
            <a-camera look-control collider-check>     
                <a-entity raycaster="objects: .collidable" position="0-0.9 0"
                          rotation="90 0 0" showLine= "true"></a-entity>
            </a-camera>
        </a-scene>
    </body>
<html>        

Ответы [ 2 ]

0 голосов
/ 07 июня 2018

Моя проблема была с синтаксисом Ray Caster, он должен был выглядеть примерно так:

    <a-entity raycaster="showLine: true; far: 100" line="color: orange; 
    opacity:0.5"></a-entity> 

Документация по фреймам еще слабая, а использование синтаксиса неясно

0 голосов
/ 06 июня 2018

Попробуйте отрегулировать, чтобы raycaster мог достичь неба.

raycaster="far: 10000" или <a-sky radius="100">

...