Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ three.js Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ Angular Ρ Π²Π΅Π±-ΠΏΠ°ΠΊΠ΅ΡΠΎΠΌ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ±ΠΎΡΡΠΈΠΊΠ°.
ΠΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΠ°ΠΉΠ» GLTF Π²ΡΠ΄Π°Π΅ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠ° ReferenceError:
ERROR Error: Uncaught (in promise): ReferenceError: THREE is not defined
ReferenceError: THREE is not defined at GLTFLoader.js:2715
Π‘ΡΡΠ»Π°ΡΡΡ Π½Π° ΡΡΡ ΡΡΡΠΎΠΊΡ ΠΊΠΎΠ΄Π°:
Π ΠΌΠΎΠ΅ΠΌ ΠΊΠΎΠ΄Π΅ TypeScript Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΡ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
import { GLTFLoader} from 'three/examples/jsm/loaders/GLTFLoader';
Π― Π΄ΡΠΌΠ°Ρ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΡΡΠΎ, Π»ΠΈΠ±ΠΎ _BufferGeometryUtils_ Π½ΡΠΆΠ½ΠΎ ΡΠΊΡΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π² _three.module.js_, Π»ΠΈΠ±ΠΎ Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π° Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠ΄Π°Π»Π΅Π½ ΠΈΠ· jsm-Π²Π΅ΡΡΠΈΠΈ GLTFLoader, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ _THREE_ Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½.
Π― ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ», ΡΡΠΎ _BufferGeometryUtils_ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π² ΡΠΊΡΠΈΠΏΡΠ΅ _modularize_:
Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΠΌΠΎΠ΄ΡΠ»ΠΈ examples/jsm
Π΅ΡΠ΅ Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½Ρ, ΠΈΠ·Π²ΠΈΠ½ΠΈΡΠ΅. ΠΡΠ΅ Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Ρ Π½Π°Π΄ ΡΡΠΈΠΌ.
ΠΡΡΠ³ΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΎΠΎΠ±ΡΠΈΠ» ΠΎΠ± ΡΡΠΎΠΉ ΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ Π·Π΄Π΅ΡΡ:
Π‘Π»ΠΈΡΠ½ΠΈΠ΅ # 15582 Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ΅ΡΠΈΡΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π²Π΅ΡΠ½ΠΎ?
Π― ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π» ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΉ GLTFLoader Π² Π²Π΅ΡΠΊΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΈ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ, ΠΎΠΆΠΈΠ΄Π°Ρ ΡΠ΅Π»ΠΈΠ·Π°.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅!
ΠΠ»Ρ ΡΠ΅Ρ , ΠΊΠΎΠΌΡ Π½ΡΠΆΠ½ΠΎ ΡΡΠΎΡΠ½ΠΎΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠ°ΠΊΠ΅Ρ npm 'three-gltf-loader':
import GLTFLoader from 'three-gltf-loader';
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
Π― ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π» ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΉ GLTFLoader Π² Π²Π΅ΡΠΊΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΈ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ, ΠΎΠΆΠΈΠ΄Π°Ρ ΡΠ΅Π»ΠΈΠ·Π°.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅!
ΠΠ»Ρ ΡΠ΅Ρ , ΠΊΠΎΠΌΡ Π½ΡΠΆΠ½ΠΎ ΡΡΠΎΡΠ½ΠΎΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠ°ΠΊΠ΅Ρ npm 'three-gltf-loader':
import GLTFLoader from 'three-gltf-loader';