I am currently continuing our long-running game project and now the need for a post-processor of babylon files as part of the build pipeline is overwhelming. Loading files from the server and then changing half the stuff again on the client is just stupid. I have expressed my thoughts on this in another thread already:
So I decided to be a good sport and build a generalized and open-source solution that others can use as well. Maybe this could even become part of the babylon project itself some day (if you are interested), so I wanted to do it in Typescript (and also just to finally learn it). My approach will be to have a node app that creates a NullEngine, do all the post-processing (for example substituting materials, applying optimizations) there and export the file as babylon again.
So as a TypeScript n00b I just googled and googled until I found solutions to every issue. But this one leaves me stumped now. I get the following message:
TSError: ⨯ Unable to compile TypeScript: src/index.ts:6:8 - error TS2307: Cannot find module '@babylonjs/core/Engines/nullEngine'. 6 } from "@babylonjs/core/Engines/nullEngine"; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [... long stacktrace] [nodemon] app crashed - waiting for file changes before starting...
The repo is here:
And yeah, there is basically no code, just the import. The first roadblock to solve before starting to code.
npm start you should get the same message. Is this a misconfiguration issue? Or do I need an additional npm package? The
@types package for babylonjs is ancient and deprecated, so that can’t be it, and
ts-loader is only for webpack right?
BTW the reason we need this is we are modelling all of our creatures now and a lot of them have fur, which the blender exporter doesn’t/can’t support. So we’d have to check for a special material name on the client every time and apply the right fur material (possibly a ShaderMaterial, possibly a NodeMaterial, possibly a FurMaterial) for the creature after it’s already loaded. That’s just dumb. So I want to do things like that in the build phase. I imagine I am not the only one with this type of need. Or maybe I am, but anyway I’m putting it out there…