Required Modules to load glTF models

Hi all, I am trying to use typescript to load a glTF2 model and had a quick question:

I am getting an error of:
BJS - [00:41:04]: Unable to find a plugin to load .gltf files. Trying to use .babylon default plugin. To load from a specific filetype (eg. gltf) see: http://doc.babylonjs.com/how_to/load_from_any_file_type
When I try and use
SceneLoader.ImportMesh("", “asets/models/dqp/”, “dqp.gltf”, scene, function (scene) {
});

It did work fine using the compiled babylon.js but with NPM you need to manually include all the right modules and that error is telling me I must not be.

The modules I am loading right now are:
import { Engine } from “@babylonjs/core/Engines/engine”;

import { Scene } from "@babylonjs/core/scene";

import { Vector3, Color3, Color4 } from "@babylonjs/core/Maths/math";

import { FreeCamera } from "@babylonjs/core/Cameras/freeCamera";

import { HemisphericLight } from "@babylonjs/core/Lights/hemisphericLight";

import { Mesh } from "@babylonjs/core/Meshes/mesh";

import { StandardMaterial } from "@babylonjs/core/materials/standardMaterial"

import { SceneLoader } from "@babylonjs/core/Loading/sceneLoader"

import { GLTFLoader} from "@babylonjs/loaders/glTF/2.0/glTFLoader"

I went through the list of modules but am having trouble finding the right one.

What modules are required to load a standard GLTF2 model with maps, keys, and bones?

How do I go about finding what modules are required in the future to enable a feature? I hate to ask every time. Most you can kind of guess as the compiler does not recognize the class if it is not imported. However, for some features, such as GLTF, the compiler says all required classes are loaded, but it still fails to load as likely something is missing.

Hey Calsa,
From what I know it should be enough.
Can you repo it somewhere?
Here is a working demo: BabylonJS ES6 - CodeSandbox
You can add maybe plugin extension in ImportMesh function, like

 SceneLoader.ImportMesh("", “asets/models/dqp/”, “dqp.gltf”, scene, function (scene) { }, undefined, undefined, '.gltf');

Thanks,

I sort of cheated and imported the entire SceneLoader module library of modules by doing a

import "@babylonjs/loaders"

and moved on for now. Though that is not correct form and ultimately I will need to tree shake this down by registering the missing classes only. So problem is still not solved as to me not knowing which is the correct gLTF module to load. But at least I got models to load for now.

Any idea where to find getMeshByName? Some fairly common things seem to be hiding, and I did not see it on an in file search of the entire libraryof babylon modules. It should have been part of scene but it did not register when I imported scene. It has to be somewhere :frowning:

Yes, it should be in the scene class (Scene - Babylon.js Documentation)