Three.js使用Threebsp进行模型处理

    ThreeBSP是一个为了方便对Three.js中的模型进行交集、并集、差集的开源库,最近又要用Three.js开发一些东西,需要使用最新版Three.js(R126)结合ThreeBSP进行两个模型的组合,不过使用npm直接安装threeBSP,发现用不了,从github上找到了两个关于ThreeBSP的项目,一个是使用caffeine写的,另一个是对ThreeBSP进行了模块化处理,我没用过caffeine,所以理所当前就选择了后者https://github.com/fox19920726/threebsp

    直接代码拷贝到本地,还是运行不了,遇见困难总是要挣扎一下的,读源码吧。然后发现ThreeBSP是通过Geometry的faces来读取点数据、法向量和UV数据的,但是新版的Three.js基本已经废弃了Geometry,转而使用BufferGeometry了,BufferGeometry中已经没有了faces了,点数据、法向量和UV数据都存储在attributes里,看来是用不了了,自己写一个库又觉得麻烦,最后决定改造一下。

    首先感谢原作者的开源,给了我改造的机会。Fork源码到自己的github中,然后开始了修改,结合BufferGeometry进行数据处理,改造完以后,可以运行了,但看到结果让我一个踉跄,模型乱七八糟的。没有什么头绪,只能一点一点排查问题,从开始到结束,耗时三天,最后初步改造完成,模型的交集、并集、差集简单测试了一下都能用,把代码提交到了github,地址为https://github.com/Jafeyyu/threebsp,并同步到了码云(https://gitee.com/jafey/threebsp),为了方便npm安装,发布到了npm仓库中,起名为jthreebsp(https://www.npmjs.com/package/jthreebsp),感兴趣的可以试一下。

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值