Код: Выделить всё
import * as THREE from 'three';
import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js';
const canvas = document.querySelector('#frontPageCanvas');
const scene = new THREE.Scene();
const camera = new THREE.PerspectiveCamera(75, window.innerWidth
window.innerHeight, 0.1, 1000);
const renderer = new THREE.WebGLRenderer({canvas, antialias: true});
renderer.setSize(window.innerWidth, window.innerHeight);
renderer.setClearColor( 0xffffff, 0);
function loadFiles(capsulesFiles, scene) {
const capsuleloader = new GLTFLoader();
capsulesFiles.forEach((capsulesFile) => {
capsuleloader.load(capsulesFile, (gltf) => {
scene.add(gltf.scene);
});
});
};
let capsulesFiles = ['../three.js/models/capsule_1.glb',
'../three.js/models/capsule_1.glb'];
loadFiles(capsulesFiles, scene);
//const geometry = new THREE.BoxGeometry(2, 2, 2);
//const material = new THREE.MeshBasicMaterial({color: 0x0000ff});
//const cube = new THREE.Mesh(geometry, material);
//scene.add(cube);
camera.position.z = 5;
console.log(scene);
function animate() {
requestAnimationFrame(animate);
// cube.rotation.x += 0.05
// cube.rotation.y += 0.05
scene.children[0].rotation.y += 0.05;
scene.children[1].rotation.x -= 0.01;
scene.children[1].rotation.y -= 0.01;
renderer.render(scene, camera);
}
animate();
Однако после небольшой задержки одна из моих моделей вращается (это не имеет смысла, поскольку весь код ротации не должен работать). Не знаю, как это исправить. Кроме того, было бы здорово, если бы у моих моделей была какая-либо дополнительная информация о том, почему в моих моделях нет текстуры/материала (я использовал Maya, чтобы создать их с помощью aiStandardSurface of Glass and Plastic для материалов и плагина Verge3D для экспорта их в файлы .glb).
Подробнее здесь: https://stackoverflow.com/questions/793 ... -the-scene