javascript - 为 CannonDebugRenderer 导入 Javscript 文件与 Webpack 构建包
问题描述
我正在尝试为我在 Three.js 和 Cannon.js 之上构建的应用程序设置 CannonDebugRenderer 的实例化和实例。我正在看这个涉及同时使用 Cannon.js 和 Three.js 的示例
https://github.com/schteppe/cannon.js/blob/master/tools/threejs/example.html
此示例似乎在运行脚本标记中的主脚本之前运行了许多脚本。
到目前为止,我一直在使用 Three.js,通过使用 NPM 将其保存为依赖项,我假设它是从 github 存储库 https://github.com/mrdoob/three.js/中提取的
我可以使用我已经了解的常见 ES6 语法将它导入到我的脚本中,并使用 webpack 进行转换
import * as THREE from "three"
我的理解是,这取决于几件事
- Webpack 理解“三”实际上是 node_modules/three/build/three.min.js 所以它知道在转译时从哪里提取
- NPM 跟踪允许 webpack 找到它的正确元数据(可能在 package.json 中)
Mu 的困惑在于我上面列出的来自 cannon.js 的这个示例如何适合这个打包和捆绑构建周期。
第一个问题是示例使用的 Cannon 存储库的 lib 目录中似乎有一个 three.js,而不是 node_modules/three 中的官方 NPM 管理目录中的 three.min.js
https://github.com/schteppe/cannon.js/blob/master/libs/Three.js
第二个问题是 CannonDebugRenderer 似乎包含在这个 Cannon.js 打包版本的 Three.js 中,而不是官方的 Three.js 本身。
Cannon 是否意味着要像 Three.js 那样捆绑?repo 上的 README 似乎表明它与 NPM 兼容,但也许这仅包括从存储库中获取它的能力,而不是像 Three.js 那样捆绑它与 Webpack 捆绑的能力?
如何使用 ES6 语法导入 CannonDebugRenderer 并将应用程序捆绑到单个 Javascript 文件中?
解决方案
推荐阅读
- react-native - 嵌套的 TapGesture 处理程序 React Native
- php - GenerateUrl 不尊重 Symfony4.4 中的本地化路由
- python - 额外的文本被添加到 tkinter 中的 GUI
- python - Pandas DataFrame:根据组平均值填充 NA 值
- html - bootstrap v4.5 导航栏(带有超级菜单)从透明到实心
- go - 如何在golang中将值从处理程序传递到中间件?
- javascript - 血糖生成器
- python - 当调整包含的图形大小时,纠正 FigureCanvasTkAgg 画布小部件的滚动/调整大小行为
- html - 删除导航面包屑中 li 标签左侧的空格
- oauth-2.0 - 使客户端机密可配置