A 3D product viewer allows users to interactively explore a product from all angles directly in their web browser. This enhances the online shopping experience by providing a more comprehensive view than static images.
This example demonstrates a basic setup for a 3D product viewer using Three.js. It includes a simple cube as a placeholder, interactive orbit controls, and basic lighting. You would typically replace the cube with your actual 3D product model (e.g., a glTF file loaded with GLTFLoader).
To replace the placeholder cube with your own 3D model (e.g., a glTF file), you would use a loader like GLTFLoader:
import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js';
const loader = new GLTFLoader();
loader.load(
'path/to/your_product.gltf',
function (gltf) {
// Remove the placeholder cube
scene.remove(productMesh);
// Add your loaded model to the scene
scene.add(gltf.scene);
// Adjust position/scale of gltf.scene if needed
},
undefined,
function (error) {
console.error('An error happened loading the model', error);
}
);