这个API里没有看到有定点数相关的接口啊
怎么解决的 我也碰到了…
没解决 
库要用@dimforge/rapier3d-compat 或@dimforge/rapier2d-compat
然后tsconfig.json要里的compilerOptions,添加"allowSyntheticDefaultImports": true
使用时直接
import RAPIER from ‘@dimforge/rapier2d-compat’;
或
import RAPIER from ‘@dimforge/rapier3d-compat’;
谢谢大佬,有时间我再试试 
感谢 安装也能读取到RAPIER 但是调用api就报错了 new RAPIER.World就undefined了. 是wasm的原因?
你是怎么用的~
TA的官方文档有写
要先调用Rapier.init().then(()=>{})
才行以进行其他api调用,init主要就是异步加库wasm
你好,请问打包成微信小游戏报以下错误,WebAssembly.instantiate: first argument must be a string。有办法解决吗?
https://forum.cocos.org/t/topic/152688
这个要去ta 的github项目里,找一下WebAssembly.instantiate 的处理改了再重新打包一个版本来用了
试了吗?为啥我还是不好使
没有,没排期。
你是不是直接调ta库里的东西?按我的import RAPIER from ‘@dimforge/rapier2d-compat’;设置后, 每次都必须是RAPIER.Rigidbody这様, 你不能用import {Rigidbody} from ‘@dimforge/rapier2d-compat’, 这様调会显示Rigidbody undefine
请问是rapier.js这个仓库吗
我是用@dimforge/rapier2d-compat 和 @dimforge/rapier3d-compat
这个包的wasm是base64的,是要先解析保存为wasm文件,然后再instantiate么,还是直接载入rapier_wasm2d_bg.wasm呢
不需要呀, 你调init就好了, 它都帮你处理好wasm文件的处理了
import RAPIER from '@dimforge/rapier2d-compat';
RAPIER.init().then(()=>{
const world = new RAPIER.World({x:0,y:-98});
});
微信小游戏也可以么,我这边有一个WASM的初始化报错ERROR: Error: WXWebAssembly.instantiate: only support file type .wasm or .wasm.br
我是发自家产品webview里的, 没在微信小游戏试过. 按你那报错, 估计 是微信限制了wasm实例方式
我猜你可以先源码里定义一个静态变量, 然后再把代码中这段WebAssembly.instantiate(第一个参数改为读取你定义的静态变量。
然后把.wasm文件放到resouces目录下, 再使用
比如你定在源码定义了一个wasmUrl静态变量
import RAPIER from '@dimforge/rapier2d-compat';
cc.resource.load( xxxx,cc.Asset,(err,asset)=>{
RAPIER.wasmUrl = asset.nativeUrl
RAPIER.init().then(()=>{
this.node.emit('rapier-inited');
});
}
不知能不能行, 但可以试试
测试后微信小游戏平台可以跑通,多谢大佬指点!

