Я использую Three.js Raycaster
для сбора объектов. Мой HTML-код состоит из двух основных частей: панели навигации вверху (глава) и нижней части, где происходит рендеринг (раздел тела).Ограничьте Raycaster от Tri.js до определенной части HTML. Избегайте смещений
Моя проблема заключается в том, что с этим «созвездием» я получаю раздражающее смещение для Raycaster
, о размере высоты навигационной панели. Поэтому я подумал, что это проблема. Когда я попытался вытащить навигационную панель, я получил хорошие результаты без смещения.
Очевидно, я хочу, чтобы этот код работал на нескольких устройствах (может быть строгим для определенного браузера, но не для устройства), поэтому «подсчет пикселей вручную» не является вариантом.
Я попытался поставить часть рендера внутри , это уменьшило смещение, но все же - оно есть (любой знает почему?). Я подумал о том, чтобы вытащить высоту навигационной панели и принять ее во внимание при raycasting, но мне кажется, что это патч. Я предпочитаю его универсальным, надежным способом.
Я также пробовал frameborder="0" scrolling="no"
в моих настройках , не помог.
Я новичок в HTML/js/Three.js, так что ответ может быть простым, я не обижаюсь.
См. Http://stackoverflow.com/questions/13542175/three-js-ray-intersect-fails-by-adding-div – WestLangley
http://stackoverflow.com/a/40106019/6521116 –