@Mugen87 @prisoner849
Here is what I have so far - but still no texture appearing in my triangle:
const positions = intersect[0].object.geometry.getAttribute(‘position’);
const uvs = intersect[0].object.geometry.getAttribute(‘uv’);
const face = intersect[0].face;
var vA = new THREE.Vector3();
var vB = new THREE.Vector3();
var vC = new THREE.Vector3();
vA.fromBufferAttribute( positions, face.a );
vB.fromBufferAttribute( positions, face.b );
vC.fromBufferAttribute( positions, face.c );
var uv1 = new THREE.Vector2();
var uv2 = new THREE.Vector2();
var uv3 = new THREE.Vector2();
uv1.fromBufferAttribute( uvs, face.a );
uv2.fromBufferAttribute( uvs, face.b );
uv3.fromBufferAttribute( uvs, face.c );
let mesh = new THREE.BufferGeometry();
const vertices = new Float32Array([vA.x, vA.y, vA.z, vB.x, vB.y, vB.z, vC.x, vC.y, vC.z]);
mesh.setAttribute(
‘position’,
new THREE.BufferAttribute(vertices, 3).setUsage(THREE.DynamicDrawUsage)
);
const uvs_ = new Float32Array([uv1.x, uv1.y, uv2.x, uv2.y, uv3.x, uv3.y]);
mesh.setAttribute(
‘uv’,
new THREE.BufferAttribute(uvs, 2).setUsage(THREE.DynamicDrawUsage)
);
var mesh1 = new THREE.Mesh(mesh, new THREE.MeshBasicMaterial( { map:texture}) );