【问题标题】:unknown Ammo.btHeightfieldTerrainShape. using ammo.js with npm and webpack in browser. how to initialize ammo properly?未知 Ammo.btHeightfieldTerrainShape。在浏览器中使用 ammo.js 和 npm 和 webpack。如何正确初始化弹药?
【发布时间】:2020-02-10 16:11:50
【问题描述】:

我正在尝试在 webpack 项目(es6,目标环境:浏览器)中使用 ammo.js。我通过npm安装了“ammo.js”,并在webpack中添加了如下配置来解决“fs”未知模块问题:

  // Issue: https://github.com/kripken/emscripten/issues/6542.
  plugins: [new webpack.IgnorePlugin(/(fs)/)],

我的问题是在运行时,在尝试使用 Ammo.btHeightfieldTerrainShape 类时,出现“未定义”错误,而 Ammo 的其他方法似乎在那里。 我正在像这样导入弹药:

import * as Ammo from 'ammo.js';

(也尝试过这样的: import Ammo from 'ammo.js';)

我的问题是:我缺少一些额外的步骤来初始化库,以便缺少的类可用?在浏览器中,您似乎必须等待 Ammo 全局方法的承诺,然后使用该库,但我所需的 Ammo 是一个对象,而不是一个函数。

【问题讨论】:

    标签: npm webpack ammo.js


    【解决方案1】:

    终于解决了..万一其他人有同样的问题:确保npm包安装为:

     npm init --save "kripken/ammo.js"
    

    我刚刚做了:

    npm init --save ammo.js
    

    那个不是正确的回购。这就是为什么它不是最新的。 要与模块一起使用,我必须使用:

    import * as Ammo from 'ammo.js';
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-08
      • 1970-01-01
      • 2020-09-25
      相关资源
      最近更新 更多