sdf
polygonjs
sdf | polygonjs | |
---|---|---|
18 | 173 | |
1,485 | 545 | |
- | - | |
0.0 | 9.6 | |
3 months ago | 4 days ago | |
Python | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
sdf
- Sdf – Generate 3D meshes based on SDFs
-
FreeCAD User Book (2019)
I used to like OpenSCAD for its simple approach but then I discovered SDF-based modelling with Python made possible with this neat library: [1]. This is perfect if you are a programmer that doesn't know anything about CAD-Software.
1.: https://github.com/fogleman/sdf
-
CAD Sketcher, free and open-source project bringing CAD like tools to Blender3d
>these the the central core that understands BREP and implements the geometric operations.
I've seen people quote a good modern CAD kernal as a 100 man year project. It's probably not going to happen, maybe there's some avenue for government funding?
Alternatively Signed-Distance-Functions are pretty nice. They're not BREP, but they're a lot easier to implement, and it might be possible to shove them into a BREP-shaped hole.
Here's a signed-distance-function based CAD kernal written in a few thousand lines of python+numpy, that seems to be about as fast as openscad. Maybe faster. https://github.com/fogleman/sdf
-
Signed distance functions in 46 lines of Python
Excellent. You might be interested in a Python library that I wrote for generating 3D meshes (STL files) from SDFs : https://github.com/fogleman/sdf
It just uses marching cubes for triangulation but the SDFs are all numpy'd and the SDF is evaluated in batches on multiple threads so it's relatively fast.
-
Plot of triangle mesh with py5
I used the SDF repo by Michael Fogleman. Check out his website, there's a ton of useful stuff on there. He contributes a lot to the open source community and has been mentioned in r/PlotterArt before.
-
10 ways to get the best out of OpenSCAD
Try out fogleman/sdf[1]. It is like OpenSCAD in many ways but the distance field model gives you offsets and fillets more easily.
[1] https://github.com/fogleman/sdf
-
Is it possible to 3d print signed distance functions?
https://github.com/fogleman/sdf this python project can create mesh from sdf
- Curated Code CAD
-
Guerrilla guide to CNC machining, mold making, and resin casting (2015)
> https://github.com/fogleman/sdf
Holy crap, why have I not seen this before?!?!!? I was even planning to start coding something like this myself. This is awesome!
- I am planning on creating a programming language for my Informatics Bachelor Thesis. What are your ideas for such a project?
polygonjs
-
On the importance to make games during the game engine's development
That's the path I took with Polygonjs ( https://polygonjs.com ), and a game I've just released ( https://polyreplay.com/minesweepertwist ), with more coming shortly.
But it didn't start like that. It only started as a tool I could use to deliver client projects, as I was trying to become a freelance for interactive 3D scenes for the web.
Project after project ( some examples here: https://polygon-lab.com/ ), I could improve Polygonjs. Then I found clients who would be interested enough to buy licenses, and would give valuable feedback which would help the project grow even more.
And a few clients asking for not just interactive sites, but also games. This pushed Polygonjs further, and after several games released, it definitely qualifies as a game engine.
So this is generally an advice I give to people who want to become freelancers. Build a tool that solves a problem in your space, as this gives you an edge, and you'll also get the chance to confront that tool to reality, which will help it - and you - grow. This becomes a virtuous circle very quickly.
- Threestudio – A unified framework for 3D content generation
-
how can I convert a 3D model into an SDF, a signed distance field
You can have a look how I do it in Polygonjs (which is a node-based design tool based on threejs), in this example scene.
-
ThreeJS capabilities
If you're familiar with Houdini, I invite you to try Polygonjs, which is based on threejs and inspired by Houdini. You can basically build threejs in a procedural way, with just nodes.
-
I’m starting to get into generative media and visual making and I want to know what software to use other than touchdesigner.
You could try Polygonjs. It's inspired by Houdini, so has a lot in common with TouchDesigner (it's fully node-based, you can create audio reactive apps), and it works on the web, which makes scenes very easy to share.
-
Help me out ya’ll. Spline 3D vs Dora 3D?
Can I invite you to try Polygonjs as well?
-
Sdf – Generate 3D meshes based on SDFs
you can generate an SDF from a mesh with [Polygonjs](https://polygonjs.com). Here is an [example scene](https://polygonjs.com/examples/bynode:mat:raymarchingbuilder...).
It won't generate a function, though. Instead it creates a 3D texture which is used inside the raymarching material. In my experience this is much more performant, and also art-directable.
(disclaimer, I'm building Polygonjs)
-
Need help for job
It sounds like you need a dynamic system that runs in the browser. Maybe try Polygonjs ( https://polygonjs.com )? The the 3rd interactive scene on the front page gives an idea of a dynamic model. I run it, if that of interest, happy to give more examples
-
Vegetation modelling tool
If you ever wanted to do a vegetation modelling tool for the web, I invite you to try it on Polygonjs, it has a lot of similarities with Houdini (node-based, procedural modeling, HDA system, etc) and is all web/realtime. And open source.
-
Image Synthesis Libs in JS (ideally canvas)
This is extremely interesting: https://github.com/polygonjs/polygonjs/blob/master/src/engine/nodes/cop/SDFBlur.ts uses a 3D construct and implements the blur using a fixed matrix.
What are some alternatives?
meshlab - The open source mesh processing system
Spector.js - Explore and Troubleshoot your WebGL scenes with ease.
trimesh - Python library for loading and using triangular meshes.
three.js - JavaScript 3D Library.
sdfx - A simple CAD package using signed distance functions
nodes-io - A new way to create with code.
meshio - :spider_web: input/output for many mesh formats
lume - Create 3D web applications with HTML. Bring a new depth to your DOM!
vedo - A python module for scientific analysis of 3D data based on VTK and Numpy
react-three-fiber - 🇨🇭 A React renderer for Three.js
opencascade-emscripten-port - Open CASCADE - Emscripten / Webassembly port
lume - 🔥 Static site generator for Deno 🦕