10 ms·
OpenSCAD: The Programmer's Solid 3D CAD Modeller
- timschmidt 2y agoDon't miss the https://github.com/nophead/NopSCADlib https://github.com/nophead/NopSCADlib library for OpenSCAD, which includes a tremendous amount of useful shapes, functions, and the ability to produce exploded diagrams, assembly instructions, etc.
- spiritplumber 2y agothank you!
- derkades 2y agoI use this library in almost all of my projects: https://github.com/BelfrySCAD/BOSL2 https://github.com/BelfrySCAD/BOSL2
- aeonik 2y agoAnd here I thought BOSL2 was the pinnacle of OpenSCAD libraries. Great library, thanks for sharing! https://github.com/BelfrySCAD/BOSL2 https://github.com/BelfrySCAD/BOSL2
- zimpenfish 2y agoI've made a bunch of stuff in OpenSCAD and it can be really nice to work with but... it does have a bunch of weirdnesses like not being to find the size of a compound object, having to micro-manage your objects to avoid the spinning beach ball render, fillets/chamfers/rounded edges/etc. are dark arts, etc. If you're basically sticking simple shapes together or cutting simple shapes out of other shapes, it's fine enough.
- arghwhat 2y agoYeah, it has its charms but... Good luck making a filet or a chamfer between two faces whose intersection has a non-trivial placement. Being able to easily reference existing edges and faces for future operations is one of the things that make other CAD so simple.
- traverseda 2y agoI have an openscad-alike that supports fillets/chamfers, but unfortunately getting it to support importing any third party file formats (DXF, SVG, STL) is a bit beyond me right now. https://github.com/traverseda/PySdfScad https://github.com/traverseda/PySdfScad I'd also love to find the time to rewrite the geometry kernel in something like taichi (python DSL running on GPU) or maybe JAX instead of numpy. And of course it doesn't yet pass most of openscad's test cases.
- zimpenfish 2y ago> Being able to easily reference existing edges and faces for future operations God, yes. Allegedly the BOSL library has some support for this kind of thing but I've not got around to trying it yet.
- janice1999 2y agoWow, looks like the project might still be alive. Hopefully we get a new release year.
- ta988 2y agoit is still alive yes the repo is active.
- janice1999 2y agoThere hasn't been a release in 3 years and no news updates in 2 years until the recent GSoC announcement. Modern linux distros are still shipping a version from 2021 on a older version of Qt, unless you get a nightly unofficial release from the snap store. That's not a great sign even if there are commits happening. I used OpenSCAD a lot in college and I really hope it has a future. I'm glad to see it's getting sponsors now.
- ta988 2y agoI understand that but a project can still be active even if there are no releases. A lot of software doesn't even get published as packages in distros.
- h2odragon 2y agothe "manifold" renderer makes possible some stunts that couldn't be done before. for example, i made this "usa counties" outline from a png: https://www.printables.com/model/895723-usa-counties https://www.printables.com/model/895723-usa-counties its under the "features" preference, doesn't work for everything yet, but is worth investigating if you haven't.
- derekp7 2y agoI ran into rendering limitations when modeling a multi cyclonic add on for my shop vac, and manifold saved this project. I used one of the nightly builds for this.
- le-mark 2y agoThe manifold geometry kernel library is a truly impressive piece of work imo; well worth checking out; https://github.com/elalish/manifold https://github.com/elalish/manifold
- randomghost1 2y agoWhat are people's thoughts on CAD generation with LLMs for OpenSCAD and other proprietary GUI-based softwares? I imagine soon we will also be able to "autocomplete" or "semantically edit" feature trees in SolidWorks, Fusion, etc.
- stavros 2y agoI made some simple stuff using Claude with OpenSCAD, it was eminently decent. LLMs really have made the start of all learning curves flat.
- seveibar 2y agoThe problem with most CAD tools is they don't represent "design intent" or high-level components well, and I believe this is mostly due to the language's not being sophisticated enough e.g. a human says "these holes need to be separated by 2mm", but when we program in OpenSCAD and other CAD languages we usually specify x={-1} for one component and x={1} for the other (just an example of how design intent is being lost) When we can represent design intent well, we'll have something that LLMs can really grab hold of and build higher level components
- throwgfgfd25 2y ago> e.g. a human says "these holes need to be separated by 2mm", but when we program in OpenSCAD and other CAD languages we usually specify x={-1} for one component and x={1} for the other (just an example of how design intent is being lost) What you mean there is constraints, I suppose? And yes -- there's some work to add constraints to CadQuery sketches/cqparts, but it's early. https://cadquery.readthedocs.io/en/latest/assy.html https://cadquery.readthedocs.io/en/latest/assy.html https://cadquery.readthedocs.io/en/latest/sketch.html#constraint-based-sketches https://cadquery.readthedocs.io/en/latest/sketch.html#constr... I suppose the logic has always been that if you control the placement of parts in code, you can build your own quasi-constraint logic to make reactive, parametric designs. And you might argue that "having complete control over this in code" is its own kind of "design intent" with its own potential justifications. Specifying constraints in the way the CadQuery development does may not be natural. But both CadQuery and Build123D have kernel-based tools like face finders, vertex finders etc., that are capable of things that OpenSCAD definitionally cannot do at kernel level. Replicad (a JS OpenCascade environment) has face and vertex finders, face-based sketching, etc.
- pbronez 2y agoOpenSCAD has been great for simple projects. It’s very easy to get productive with if you know basic programming concepts. However, I’ve run into frustrating limitations on more complex projects. The core geometry engine is skittish. I still use OpenSCAD, but I’m diving into the OCCT ecosystem. It has a steeper learning curve, but seems to be significantly more robust. https://dev.opencascade.org/ https://dev.opencascade.org/
- kiba 2y agoI think if you want to do complex things in OpenSCAD, you have to use someone's library or write your own. For example, I wrote centering code that basically work for arbitrary length, which then become a frequently used part of the codebase. Then when I faced the limitation of the centering code, I wrote more code for arbitrary subdivision of elements. I haven't extracted the new arbitrary subdivision of elements out into a module for my library, but I will eventually.
- dgroshev 2y agoIf you find yourself doing a lot of OpenSCAD, you might want to check out what you're missing from more traditional CAD systems: A few examples of simple fillets in SOLIDWORKS: https://www.youtube.com/watch?v=f78gblpqxHc https://www.youtube.com/watch?v=f78gblpqxHc Higher level continuity: https://www.youtube.com/watch?v=h5QN40d02cw https://www.youtube.com/watch?v=h5QN40d02cw A good example of nontrivial surfacing: https://www.youtube.com/watch?v=cujS1icUTtg https://www.youtube.com/watch?v=cujS1icUTtg (the entire channel is a goldmine of surfacing tutorials) Not every part needs G3 smooth curves, but being able use those tools when appropriate is a superpower.
- fn-mote 2y agoYes, it’s a wonderful tool. This post kind of upset me; it’s comparing totally different classes of program. SolidWorks is subscription based, so your $50 buys access this year and probably you won’t want to use the model again next year, right? OpenSCAD is free software, and that matters. Hopefully readers know it’s decades behind and very rough to use. Your example of “superpower modern CAD” could have been a whole lot simpler... probably some simple 2D geometric construction would be enough to show a big gap. SolidWorks is locked to Windows - out in the real world that might be 95% of the users but here it’s probably 50%. To finish my defense of OpenSCAD: there’s a place and an upside to all-text source and coding parameterized with traditional variables that you can change in your editor and recompile just like any other code. No GUI is only 80% bad.
- wlesieutre 2y agoYour $50 buys you nothing from Solidworks, expect to pay multiple thousands for that
- dgroshev 2y agoSOLIDWORKS for Makers includes a full copy of SOLIDWORKS and costs $48/year https://www.solidworks.com/solution/3dexperience-solidworks-makers https://www.solidworks.com/solution/3dexperience-solidworks-...
- lowkey 2y agoI work out of a local Hackerspace here in Austin and we happen to have one of the core contributors to OpenSCAD here. He re-wrote much of the code in C++ to optimize the core algorithms and significantly improve performance using OpenGL. He is actively looking for gig-work or potentially something more significant, so if anyone on HN is looking to get something 3D-cad related or even some advanced training, please reach out to me (email is on my profile). I will happily make an intro. OpenSCAD is an ideal tool for adding flexible 3D wizardry to a website or app programatically.
- deleted 2y ago[deleted]
- throwgfgfd25 2y agoIf you want to do code-CAD for anything substantial and you haven't yet developed a significant dependency on OpenSCAD, do your brain a favour and spend at least some time with CadQuery, Build123D or (if you prefer JS to Python) Replicad. As impressive as NopSCADlib and BOSL2 are (and OMG they are, when you consider what they have to work with!), OpenSCAD is a one-way, declarative CSG environment that essentially only outputs mesh formats. It's really not that much better than working with three-dimensional pixels. You won't really be able to analyse, iterate over or measure your models, easily build on faces, do easy chamfers or fillets, export STEP files, make use of constraint-based designs, model assemblies, or so many other things that "CAD" means in the 21st century. All the tools that help you do this on OpenSCAD are layers and layers of task-specific hacks and clever bodges. I totally get wanting to make models with version-controlled text files instead of GUI CAD (which can be a sort of weird battle to learn for a programmer), and I get wanting to avoid FreeCAD. I just don't really get wanting to limit oneself to such a limited concept of a 3D "model"! The three alternative systems I mention are all based around bindings to (or in Replicad's case, cross-compilation of) OpenCASCADE, which is a bRep CAD kernel capable of much richer interactions. It is not without its faults, but arguably code-CAD spares you from some of the inscrutability that trips up FreeCAD's interactive model.
- ajross 2y agoThat is... a weird post to be making from a throwaway account. Do you work for Big OpenSCAD or something? :) But that said, this is all correct. OpenSCAD is actually an extremely limited environment and much more expressive tools exist in the same "code-based 3D modelling" space.
- IBCNU 2y agoThat's my experience trying to use OpenSCAD from the cli for some home remodeling projects, there I was, neo-vim open, trying to do 3d with pure text files. But at the end of the day the platform felt very limited. Also "Big OpenSCAD" is hilarious.
- abetusk 2y agoThe operative word being "open". Much more expressive tools exist but the condition on libre/free/open reduces the size of that list substantially. OpenSCAD also has a lower barrier to entry in that the programming language and environment is familiar without needing a lot of training or context.
- nanolith 2y agoI've never been comfortable drawing or drafting with GUIs. This is true for "drawing" graphics, laying out boards, or building 3D models for printing or CNC. OpenSCAD has been invaluable to me. Usually, I'll hand draw what I need, then work out the equations, then build the models. No need to figure out what certain icons mean or to learn accelerator commands. I've built some fairly intricate designs with OpenSCAD. CSG is quite intuitive.
- seveibar 2y agoYou might like the PCB constraint system we're building at tscircuit for laying out boards, the biggest issue with most systems imo is that you can't cleanly specify constraints. In tscircuit you can just use a <constraint /> component to lay out PCB elements https://github.com/tscircuit/cli/blob/main/example-project/src/SwitchShaft.tsx https://github.com/tscircuit/cli/blob/main/example-project/s...
- nanolith 2y agoThat is really cool. I've been threatening to do something like this for years. Thanks for this!
- WillAdams 2y agoOne notable new development is the Python-enabled OpenPythonSCAD: https://pythonscad.org/ https://pythonscad.org/ which finally made it possible for me to finally have the ability to write out G-code (allowing one to use OpenSCAD as a CAM tool) and DXFs (allowing one to have fully control and to create not-closed/unconnected geometry, and to write out arcs rather than only polylines): https://github.com/WillAdams/gcodepreview https://github.com/WillAdams/gcodepreview For the current state see the latest preview of the current unit test: https://forum.makerforums.info/uploads/default/original/3X/1/0/10f513578706e694ae159c115f7a1ef04283091c.png https://forum.makerforums.info/uploads/default/original/3X/1...
- wiw2 2y agoThank you! I have seen your posts in the PythonSCAD subreddit. They have been very helpful!
- WillAdams 2y agoMy pleasure! I just hope we can get more folks using PythonOpenSCAD (or ideally, get it merged into the main branch). Just finished up unit tests for the current state of gcodepreview: https://raw.githubusercontent.com/WillAdams/gcodepreview/main/gcodepreview_unittests.png?raw=true https://raw.githubusercontent.com/WillAdams/gcodepreview/mai... as part of my reading https://www.goodreads.com/book/show/39996759-a-philosophy-of-software-design https://www.goodreads.com/book/show/39996759-a-philosophy-of... and applying what I learn from each chapter to it --- a bit more than a third of the way through, and it has already helped immeasurably.
- seveibar 2y agoFor people interested in coding CAD in React, my team built a react fiber layer over jscad and are investing heavily into building an MIT-licensed 3d electronics library: https://github.com/tscircuit/jscad-fiber https://github.com/tscircuit/jscad-fiber I don't think you need a custom language to declare CAD, typescript/python have heavily invested in type systems so I hope the world moves more toward using existing languages. The biggest limitation with code-CAD today is the lack of a constraint system (e.g. a clean way to say "these edges are 3mm apart") without X/Y coordinates everywhere. We're slowly building higher-level components that allow you to specify constraints so that you can write CAD in a way that more closely mimics the design intent, rather than a bunch of calculations. OpenSCAD started it all so we're very grateful, but it's also time for some innovation to bring the language closer to design intent
- leptons 2y agoI've been using jscad for years. Love it, still using it actively almost every day. I also use React/JSX every day for work and personal projects. That said, I'm not sure I like the mash-up of jscad-fiber after taking a look at the github page. Maybe it just doesn't fit my use-case of building several complex parts that have to interface with each other. I'm sure there is a use case for it though. It doesn't seem like jscad-fiber supports things like measureBoundingBox or any lower level stuff. There's a lot of depth to jscad, it's an amazing project.
- spacecadet 2y agoA few years ago I worked with some fellow artist to design a rubiks cube around a large steel ball bearing using OpenSCAD. We machined the pieces out of aluminum (using a sweet 5-axis mill) and glued magnets into them. https://vimeo.com/322284709 https://vimeo.com/322284709
- joewalnes 2y agoLove OpenSCAD! Here’s a little library for generating “toy brick” compatible models for a 3D printer. Also written to be a follow along example to help understand how to think about writing OpenSCAD programs. https://github.com/joewalnes/toybrick https://github.com/joewalnes/toybrick
- jlarocco 2y agoAs cool as OpenSCAD is, it's just one way of writing code to work with CAD. The commercial CAD systems all have APIs to do the same kind of stuff, but they also have sophisticated UIs on top to make them easier to use visually. NX even lets the user record UI interactions as a function to make creating initial code faster. In fact, there's a whole niche of CAD programming.
- syntaxing 2y agoI made macros for Solidworks and Catia v5 during my Mechanical Engineering days and Visual Basic for applications + most Windows program is so powerful. But at the same time, VBA can be such a painful language because some language behavior is not typical.
- WillAdams 2y agoI bought into Plasticity in the hope that it would gain such facilities, but the dev said that that sort of thing was being pushed off to v3. Tried Dune3D and was moderately successful, but couldn't see where in the U.I. such numeric/programmatic access would be afforded and it doesn't seem to be on the roadmap there either. I suppose I should break down and buy Rhino 3D and use Grasshopper, or Moment of Inspiration and use its Node Editor, but for now, I've been using: https://github.com/derkork/openscad-graph-editor https://github.com/derkork/openscad-graph-editor
- whiterknight 2y ago> recording ui interactions, etc This is a sign that the software has grown to become its own operating system. They also have to add their own version control… remote editing, etc. Unix style versions of tools are interesting in their own right (photoshop vs imagemagick).
- jlarocco 2y ago> This is a sign that the software has grown to become its own operating system. They also have to add their own version control… remote editing, etc. Not really, though most of the commercial CAD systems are comparable in size to an operating system already. NX just spits out the journal file, it's assumed the dev will take the code and modify it to their needs using their normal dev workflow and their own version control, IDE, etc..
- omeid2 2y agoImplicitCad is a competing project which I think is a lot more robust. https://news.ycombinator.com/item?id=41545100 https://news.ycombinator.com/item?id=41545100
- at_a_remove 2y agoI haven't touched it in years. I didn't have problems, uh, thinking in parametrics, but lordy was the rendering slow. I might try it again.
- WillAdams 2y agoThe new Manifold library is blindingly fast for most things --- even things which bring the previous renderer to its knees complete in a reasonable timeframe for Preview(ing), though Render(ing) can require a measurably long wait.
- exe34 2y agoi always thought I'd love openscad, being from a more coding background, but it turns out I'm not too fond of it. I eventually used freecad after watching some YouTube videos when I needed to make something.
- manbitesdog 2y agoOpenSCAD is amazing for thinking of 3d design as a coding workflow. Here's my minimal intro to it: https://jcarlosroldan.com/post/151/parametric-design-with-openscad https://jcarlosroldan.com/post/151/parametric-design-with-op...
- dschroer 2y agoFor those who are interested. I have been working on a similar CAD Modeler. I think of it as a spiritual successor to OpenSCAD. It has support for bidirectional modeling (ex: get the height and width of an object and use it later) and multi part workflows to design more complex works. https://www.dslcad.com/ https://www.dslcad.com/
- Qwertious 2y agoThis is really cool, does it fix OpenSCAD's need to spam epsilons everywhere to avoid Z-fighting?
- dschroer 2y agoTBH I am not sure but I suspect the answer is yes. I use OpenCascade as the base CAD kernel and it handles things like Z-fighting a lot better. I built DSLCAD after completing porting OpenSCAD to wasm because I wanted a better programmatic CAD platform. It's development is really "as I need it" from then on.
- Rygian 2y agoDiscovering OpenSCAD via its official tutorial: > On the example above, the second cube sits exactly on top of the first cube. This is something that should be avoided as it’s not clear to OpenSCAD whether the two cubes form one object together. This issue can be easily solved by always maintaining a small overlap of about 0.001 - 0.002 between the corresponding objects. This goes against the whole point of doing parametric design and should be logged as a bug. If the CAD software is unsure whether object spanning [0 to 1] and object spanning [1 to 2] are physically fused, that should be a bug. Mathematically they are fused.
- mkoubaa 2y agoWrong. Objects can overlap in computational geometry.
- Rygian 2y agoPerhaps you misunderstand my comment. I am referring to the specific case of the tutorial, where second box is exactly on top of first box. By design, there is no overlap and there is no gap, just a continuum of solid. However, such continuum of solid can't be declared with exact coordinates in OpenSCAD, and instead one has to add intentional error to coordinates so that the solids overlap and the continuity is guaranteed.
- throwgfgfd25 2y agoIt's really a floating-point rounding issue. It is a bug (well, a limitation), but AFAIR from my own designs, it generally only affects the low-precision, "fast" preview; in the final calculation it won't be an issue. Nevertheless it is one of the things that is annoying as hell with the OpenSCAD previewer; constantly having to over-join to avoid it just makes the code more painful. Coplanarity is generally a challenge in fast CAD previews.
- smartmic 2y agoWhat should definitely be mentioned in this series is BRL-CAD, an Oldie but Goldie in solid modeling: https://brlcad.org/ https://brlcad.org/
- mglz 2y agoOpenSCAD is amazing, especially for highly detailed geometry. Fusion360 was crashing when I modelled a honeycomb structure of ~2000 cells, while OpenSCAD easily handeled a similar model.
- rcarmo 2y agoNice to see this here. If anyone’s interested, I collected a bunch of resources for it over the years: https://taoofmac.com/space/apps/openscad https://taoofmac.com/space/apps/openscad
- WillAdams 2y agoNice! Great to see (Open)PythonSCAD listed! (I know this sort of thing is hard to keep up with --- I was trying for a long while on the old Shapeoko wiki (see link elsethread)). (below has been edited to reflect my reading the entire page) A tool which I didn't find and thought wasn't included is: https://github.com/derkork/openscad-graph-editor https://github.com/derkork/openscad-graph-editor (which I was expecting would fall under "GUI", but is instead near the end under "Wrappers")
- bvrmn 2y agoI don't say it's impossible but I believe it's quite near to impossible for most of OpenSCAD users to model this relatively simple drawing[1]. It's a breeze in CAD with constraint solver. Also it's viable in code-first systems with access to shape coordinates (build123d) using only construction geometry and projections. OpenSCAD requires hard trigonometry and math skills to pull it out. OpenSCAD has amazing community though and part libraries celebrates human ingenuity despite tool restrictions. [1]: https://build123d.readthedocs.io/en/latest/_images/ttt-23-t-24-curved_support.png https://build123d.readthedocs.io/en/latest/_images/ttt-23-t-...
- timonoko 2y ago13 minutes. And I am very much at the lower end of the CAD skill scale $fn=100; difference(){ union(){ cylinder(d=55,h=60); translate([125,0,0]) cylinder(d=30,h=32); linear_extrude(11) polygon([[0,25],[125,15],[125,-15],[0,-25]]); translate([0,5.5,0]) rotate([90,0,0]) linear_extrude(11) polygon([[0,50],[125,40],[125,0],[0,0]]); } cylinder(d=35,h=70); translate([125,0,0]) cylinder(d=20,h=40); translate([110,8,98]) rotate([90,0,0]) cylinder(r=66,h=20); }
- throwgfgfd25 2y agoThis is good -- but they aren't quite the same? [0] And the way they are not the same is (as the GP is saying) rather telling about the challenge of getting really precise things working in OpenSCAD without a pretty solid grasp of maths. [0] they might be functionally equivalent in application, which is not nothing, of course
- WillAdams 2y agoWorking on this in OpenSCAD (well, BlockSCAD) now: https://www.blockscad3d.com/community/projects/1814083 https://www.blockscad3d.com/community/projects/1814083 Trying to work out the triangles/chords to get the radiuses positioned --- a workable approach should be to: - use a triangle to determine the position of the 8 degree rotation and position elements which define the top of the web offset by that distance - use a chord/triangle to determine the position of the circle for the smaller radius - chain another calculation from that to determine the position of the circle for the larger radius - chain one final calculation to get the flat element which makes the end of the web co-planar with the flat top of the small cylinder I need to go work in the yard for a bit, but I'll keep thinking this through and hopefully will finish it up this evening.
- lucasoshiro 2y agoNice to see OpenSCAD getting relevance. Last January I offered a course on OpenSCAD in my university, perhaps the first one in Brazil or even in Portuguese. The lectures are available here (but it's in Portuguese, perhaps someday I'll translate it to English...): https://lucasoshiro.github.io/posts-en/2024-03-24-openscad/ https://lucasoshiro.github.io/posts-en/2024-03-24-openscad/
- lucasoshiro 2y agoOpenSCAD of course is not as powerful as other tools, but it has a lot of pros (depending on what you consider a pro): - Free, unlike other tools such as Fusion or SolidWorks - Open Source, unlike other tools such as Tinkercad or OnShape - 100% based on a programming language: compared to others is like comparing plain HTML with HTML + JS - Parameterizable (as a consequence of being based on a programming language), makes it a lot easier to adjust the model in a second iteration - Lightweight (it runs ok in my 12 year old desktop) - It can be used in CLI to generate STL files, makes it easier to automate the model generation But of course it has a lot of cons: - It isn't multithreaded, so, it doesn't matter if you have an 32-core CPU or a single core. It also doesn't matter if you have a GPU. So, there's no "best machine" for running it - You can't compute the size of a shape, unless you know a formula for it. It's specially bad if you are dealing with texts, as you can't predict their shapes unless you're using a monospace font - It has some bugs in visualization - Even though it's on active development (you can see that in their Git), its latest release was in 2021
- throwgfgfd25 2y ago> But of course it has a lot of cons: - It isn't multithreaded, so, it doesn't matter if you have an 32-core CPU or a single core. It also doesn't matter if you have a GPU. FWIW these don't have massive benefits for CAD modelling either. Most CAD kernels, even commercial ones, are sort of stubbornly single-threaded. Sure, multi-threading can really help make the wider application feel more responsive, and a GPU is enormously useful for high-level photorealistic rendering as an end product. But it doesn't bring that much to bear on geometry solving, and the kind of 3D you need for CAD modelling and viewing is pretty old hat in OpenGL terms, I think?
- WillAdams 2y agoAt one point in time I was looking into: - writing out a text from OpenPythonSCAD - reading it into LaTeX to measure it[1] - re-setting the text using METAPOST embedded in LuaLaTeX so as to write out an SVG - reading the SVG back into OpenPythonSCAD Bailed when it looked as if the latter step would require using Inkscape to convert to paths (at that point it seemed it would just make more sense to do it all in Inkscape) 1 - https://graphicdesign.stackexchange.com/questions/31088/any-automated-system-to-compute-the-linear-length-of-a-letters-in-a-word-or-ph/31094#31094 https://graphicdesign.stackexchange.com/questions/31088/any-...
- msephton 2y agoI'm a big fan of OpenSCAD. I first used it to model a Wii Wheel sort of thing that I could put an Apple TV remote in. But my main use of it was creating a few dozen cars for a video game. Really great fun to model things. If you know CSS and HTML you know enough to create a 3D model in next to no time. https://blog.gingerbeardman.com/tag/openscad/ https://blog.gingerbeardman.com/tag/openscad/
- skhameneh 2y agoI'm wondering why I appear to be in the minority questioning how this is news and why it was shared? I've been noticing a general increase in low effort link shares of, what I consider to be, well known projects. These shared links contain no news or anything that appears to be related to updates or recent development, just links to home pages of relatively popular projects.
- wrycoder 2y agoAt this point, there are 138 comments, which, as is often the case on HN, are much more informative than the link itself and show that the topic is hardly worn out. If it was, it wouldn’t have made the front page.
- thelastparadise 2y agoAnyone try plugging this into an LLM for text -> 3d model generation?
- WillAdams 2y agoThere is a blind user on /r/openscad on Reddit who has been trying to do that.
- scoofy 2y agoI used this software over a decade ago. I loved it.
- lambdaone 2y agoOpenSCAD feels awesome to start with, but is ultimately a disappointing experience because it lacks parametric solver capacity; data flow is one way, from the script, to shape generation, to CSG operations, and you cannot do quite reasonable things like extracting dimensions from a CSG-constructed shape and feeding them back into the script. A better system would enable true constraint-based parametric design, but I think doing so would involve an order of magnitude more complexity in the implementation, and quite probably infeasable compute times.
- _chimmy_chonga_ 2y agoWe used openSCAD in college for our 3D printing class. I think it was a good introduction to modeling in a 3d space since you really have to know what you're doing and the math you want to do, especially for CS majors. But, making anything complex in it is a GIANT pain. Once we got past the few introductory assignments we were allowed to chose what we wanted and at that point no one in the class was still using it. Its great for simple things but you'll find it tedious for anything complex, unless of course you like the challenge