Я веду радиопередачу против сцены.
Геометрия пересекаемого объекта - "BufferGeometry".
Часть Пересекаемого объекта составляет
{
distance: 494.77924415158327
face: Face3 {a: 732, b: 733, c: 734, normal: Vector3, vertexNormals: [], …},
faceIndex: 732,
index: 732,
object: Mesh {id: 16, uuid: "F1E299F1-927D-4CD8-ACF6-3A5AA528EACD", name: "collide_main", type: "Mesh", parent: Group, …},
point: Vector3 {x: -3.025193341955971, y: 2.63172597487887, z: -4.237102099257478, isVector3: true, …},
uv: Vector2 {x: 0.46554459963387684, y: 0.6888516128730314, isVector2: true, …}
}
Мне нужно узнать лицо этого объекта. Я делаю это для этого.
var geometry = new THREE.Geometry().fromBufferGeometry( INTERSECTED.object.geometry );
var faces = geometry.faces;
var intersectedFace = faces[INTERESECTED.faceIndex];
Но много раз лицо INTERSECTED содержит индекс, которого нет в лицах. Например, в приведенном выше случае значение INTERSECTED.faceIndex равно 732, но получаемые мной грани содержат массив только из 200 граней.
Как я могу получить пересеченное лицо.