Saya menggunakan three.js dalam proyek Angular dengan webpack sebagai bundler.
Saat mencoba memuat file GLTF, ReferenceError muncul:
ERROR Error: Uncaught (in promise): ReferenceError: THREE is not defined
ReferenceError: THREE is not defined at GLTFLoader.js:2715
Mengacu pada baris kode ini:
Dalam kode TypeScript saya, saya mengimpor loader dengan cara ini:
import { GLTFLoader} from 'three/examples/jsm/loaders/GLTFLoader';
Saya kira untuk memperbaikinya, baik _BufferGeometryUtils_ harus diekspor dalam _three.module.js_ atau blok kode harus dihapus dari GLTFLoader versi jsm, karena objek _THREE_ global tidak ditentukan.
Saya juga menemukan bahwa _BufferGeometryUtils_ adalah pengecualian dalam skrip _modularize_:
Sayangnya modul examples/jsm
belum berfungsi sepenuhnya, maaf. Masih mengerjakan ini.
Pengguna lain melaporkan masalah yang sama di sini:
Menggabungkan # 15582 seharusnya menyelesaikan masalah ini, bukan?
Saya sudah mencoba GLTFLoader yang diperbarui di cabang dev dan berfungsi dengan baik, menunggu rilis.
Terima kasih atas perbaikannya!
Bagi siapa saja yang membutuhkan perbaikan segera, gunakan paket npm 'three-gltf-loader':
import GLTFLoader from 'three-gltf-loader';
Komentar yang paling membantu
Saya sudah mencoba GLTFLoader yang diperbarui di cabang dev dan berfungsi dengan baik, menunggu rilis.
Terima kasih atas perbaikannya!
Bagi siapa saja yang membutuhkan perbaikan segera, gunakan paket npm 'three-gltf-loader':
import GLTFLoader from 'three-gltf-loader';