Three js на React: модель не отображается

Я новичок в Three js. Моя задача - рендерить модель формата glb на странице браузера. Приложение написано на React. На данный момент мне удалось поставить канвас в нужном месте, и он присутствует в dom-дереве, имеет физический размер, но внутри него ничего нет. Посмотрите пожалуйста код, где ошибка?

import React, { useEffect } from 'react';
import { WrappedViewport } from './viewportStyle';
import { Scene, PerspectiveCamera, WebGLRenderer, AxesHelper } from 'three';
import { GLTFLoader } from 'three-stdlib';

const scene = new Scene();
scene.add(new AxesHelper(5));
const camera = new PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000);
const renderer = new WebGLRenderer();
renderer.setSize(600, 450);
const loader = new GLTFLoader();

const Viewport: React.FC = () => {

  useEffect(() => {
    const dom = document.querySelector('#render');
    if (dom) {
      dom.appendChild(renderer.domElement);
      loader.load('../../assets/models/jersey_rugby_fire/jersey_rugby_fire.fbx.glb', glb => {
        scene.add(glb.scene);
        renderer.render(scene, camera);
      });
    }
  }, [])

  return (
    <WrappedViewport>
      <div id='render'/>
    </WrappedViewport>
  );
}

export default Viewport;

Ответы (0 шт):