# Adding THREE-CSGMesh or three-csg-ts made by manthrax to the examples folder

**URL:** <https://discourse.threejs.org/t/adding-three-csgmesh-or-three-csg-ts-made-by-manthrax-to-the-examples-folder/16806>\
**Category:** Discussion\
**Tags:** csg\
**Created:** [July 6, 2020, 7:27am UTC](https://discourse.threejs.org/t/adding-three-csgmesh-or-three-csg-ts-made-by-manthrax-to-the-examples-folder/16806 "2020-07-06T07:27:07Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Deel96](https://avatars.discourse-cdn.com/v4/letter/d/b4bc9f/32.png) [@Deel96](https://discourse.threejs.org/u/Deel96)\
**Post date:** [July 6, 2020, 7:27am UTC](https://discourse.threejs.org/t/adding-three-csgmesh-or-three-csg-ts-made-by-manthrax-to-the-examples-folder/16806/1 "2020-07-06T07:27:07Z")

</div>

While searching for a csg solution for three I noticed that there is no built in functionality to do CSG in three.  
After some research the libs, mentioned above, from @manthrax seem to be the most recent.  
Are there any plans to add this or another lib to three?  
Coming from Babylon I miss this feature.

Best Regards

---

<div class="post-metadata">

**Author:** ![Mugen87](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/mugen87/32/5645_2.png) [@Mugen87](https://discourse.threejs.org/u/Mugen87)\
**Post date:** [July 6, 2020, 8:49am UTC](https://discourse.threejs.org/t/adding-three-csgmesh-or-three-csg-ts-made-by-manthrax-to-the-examples-folder/16806/2 "2020-07-06T08:49:09Z")

</div>

Adding an existing external lib like `THREE-CSGMesh` only means it is copied in `examples/jsm/libs` and then a new example is added. Similar was done for the physics examples that you `ammo.js` or `cannon.js`.

In any event, there is an ongoing discussion at GitHub about this topic:

> <https://github.com/mrdoob/three.js/issues/16099>
>
> CSG is a very important feature… other 3D frameworks have support for CSG built-in ( Babylon.js ), the only CSG I...

---

<div class="post-metadata">

**Author:** ![Deel96](https://avatars.discourse-cdn.com/v4/letter/d/b4bc9f/32.png) [@Deel96](https://discourse.threejs.org/u/Deel96)\
**Post date:** [July 7, 2020, 9:22am UTC](https://discourse.threejs.org/t/adding-three-csgmesh-or-three-csg-ts-made-by-manthrax-to-the-examples-folder/16806/3 "2020-07-07T09:22:41Z")

</div>

Would adding to `examples/jsm/libs` “guarante” that it works always with the current version of three?

---

<div class="post-metadata">

**Author:** ![Mugen87](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/mugen87/32/5645_2.png) [@Mugen87](https://discourse.threejs.org/u/Mugen87)\
**Post date:** [July 7, 2020, 9:28am UTC](https://discourse.threejs.org/t/adding-three-csgmesh-or-three-csg-ts-made-by-manthrax-to-the-examples-folder/16806/4 "2020-07-07T09:28:10Z")

</div>

Yes since changes to the library are always verified with the examples. If a demo breaks during development, it’s normally fixed before the next release.
