{"repo":"EmmetOT/IsoMesh","free":true,"listed":false,"github":"https://github.com/EmmetOT/IsoMesh","clone":"git clone https://github.com/EmmetOT/IsoMesh.git","description":"IsoMesh is a group of related tools for Unity for converting meshes into signed distance field data, raymarching signed distance fields, and extracting signed distance field data back to meshes via surface nets or dual contouring.","language":"C#","stars":333,"topics":["isosurface-extraction","signed-distance-fields","sdf","meshes","surface-nets","unity","unity3d"],"license":"MIT","category":"game-templates","readme_excerpt":"IsoMesh IsoMesh is a group of related tools for Unity for converting meshes into signed distance field data, raymarching signed distance fields, and extracting signed distance field data back to meshes via surface nets or dual contouring. All the work is parallelized on the GPU using compute shaders. My motivation for making this was simple: I want to make a game in which I morph and manipulate meshes, and this seemed like the right technique for the job. Isosurface extraction is most often used for stuff like terrain manipulation. Check out No Man's Sky, for example. I decided to share my code here because it represents a lot of trial and error and research on my part. And frankly, I just think it's cool. The project is currently being developed and tested on Unity 2021.2.0f1. Signed Distance Fields A signed distance field, or 'SDF', is a function which takes a position in space and returns the distance from that point to the surface of an object. The distance is negative if the point is inside the object. These functions can be used to represent all sorts of groovy shapes, and are in some sense 'volumetric', as opposed to the more traditional polygon-based way of representing geometry. If you're unfamiliar with SDFs, I would be remiss if I didn't point you to the great Inigo Quilez. I'm sure his stuff will do a much better job explaining it than I could. Signed Distance Fields + Meshes While SDFs are really handy, they're mostly good for representing primitive shapes like s","default_branch":null,"files":null,"tree":[],"storefront":"/r/EmmetOT","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/EmmetOT/IsoMesh/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}