Show HN: GPT image editing, but for 3D models

(adamcad.com)

174 points | by zachdive 1 day ago

32 comments

  • arberavdullahu 1 day ago
    Very cool! This reminds me of a use case I explored a few years ago—customizing furniture with different fabrics, wood finishes, and design options. In physical showrooms, furniture stores can usually only display a single version of each piece, but customers often want to visualize how the same item would look in various configurations. That’s where a digital tool could really shine.

    One concept I explored was creating an interactive app where users can experiment with different material options—essentially a real-time configurator. There’s a great example here [1], where if you model an object as a .obj file (possibly similar to Adam’s parametric models), you can tweak its materials and colors dynamically. IKEA seems to have something similar in production for some of their products [2].

    I experimented with Adam as well, and it did a surprisingly good job. The only catch: if you try to iterate too much, it tends to alter the form of the object. My ideal version of this would involve a professional photographer capturing high-resolution images of, say, a couch. Then I’d upload them into Adam, generate realistic renders with different fabrics or finishes, and download the final variants as high-quality images to use in catalogs or ecommerce.

    [1] https://angon.me/experiments/6/

    [2] https://www.ikea.com/gb/en/p/ektorp-2-seat-sofa-hakebo-grey-...

    [3] https://app.adamcad.com/share/2f1e68ad-2cdd-4613-8fdc-fc33f2...

    • zachdive 1 day ago
      super interesting! thanks for sharing your generations :)

      in that case wouldn't you bypass the 3d aspect altogether?

  • klaussilveira 1 day ago
    One thing no 3D AI tool has ever done is to focus on the concept of enhancing or restyling the textures of existing, UV-unwrapped 3D models. I had to build my own pipeline on ComfyUI and Blender scripts, exporting ID maps and black/white masks from the model UV, in order to get a Stable Diffusion to paint within the boundaries of the UV and consider it as means of painting. Using cavity maps also helped with the model create boundaries. But now I am able to quickly apply, let's say, comic-book style art into existing textures of existing models.

    Have you considered providing built-in tools for mesh decimation and UV unwrapping? I know it can be quickly done with meshlab, but I imagine not a lot of Adam users would even understand the need for decimation. Any possibility for also automating rigging?

    • nmfisher 1 day ago
      I suspect that generating textures directly in UV space is a bit of a dead end because UV maps are object-specific, so flux/SD/etc are going to have a hard time understanding the inputs.

      I've been experimenting with image-to-image (and video-to-video) for basic texture projection, which I think shows promise:

      https://bsky.app/profile/nickfisherau.bsky.social/post/3lqrl...

      I just started diving into this today too:

      https://github.com/YixunLiang/UniTEX

      which works with in "volumetric space" (for lack of a better word), which I think makes a lot more sense.

      • klaussilveira 20 hours ago
        It actually performs remarkably well with mask maps as Control Nets. You can use a simple black background and white UV shells, that will give you OK results. But then you expand and use curvature maps just like you would with line art control nets, and then you have a controlled painting.

        Even simple black/white shells work well, like here: https://x.com/_hackmans_/status/1644811607799738371

    • zachdive 1 day ago
      yeah you’re pretty much bang on. we haven’t exposed mesh decimation and more functionality mostly because a lot of Adam users are newer to 3d but that can change! the question is how to surface those kinds of features in a more user-friendly way.

      we were thinking of rigging for the creative mode. we want to create more fun ways for our users to share their generations and animations could be a step towards that. would you be interested in that feature?

      • klaussilveira 1 day ago
        Oh, I don't think you guys should even expose it other than in the export feature. "Export Optimized" or "Export for Game Engines".

        I think Mixamo nailed the autorigging years ago. Anything similar to that is good enough. If you guys want to go fancy, check out Cascadeur and what they are doing. For a cool skinning algo, you might want to check voxel heat difusing:

        https://github.com/meshonline/Surface-Heat-Diffuse-Skinning

        What about painting/iterating on the model, while respecting the UV constraints and boundaries of the original texture, is that on the roadmap?

        • zachdive 1 day ago
          will check out the skinning thanks! right now all iterations are done through prompts to make it feel as conversational as possible. some forms of in-painting could be cool though.
  • chmod775 1 day ago
    Well, this certainly exceeded my expectations.

    I asked for "something cute" and got a cute panda. I asked it to make its eyes bigger, and it did.

    It wasn't a clean model by any means, but damn, pretty good considering I can probably fix this up faster than I could create it from 0.

    • zachdive 22 hours ago
      thanks! steadily improving the creative mode
  • lucasoshiro 1 day ago
    Feature request: since it's using OpenSCAD under the hook, it would be great to be able to download the .scad file

    The "creative" mode seems to be ok, but my main interest (the parametric) failed in my first test: generate a bottle.

    But anyway, good job!

    • avipeltz 1 day ago
      The parametric editor take a few iterations to get to what you want, but heres an example of generating a simple bottle: https://app.adamcad.com/share/9e9412fb-2741-4513-ac2d-1f4e73...
    • zachdive 1 day ago
      would you be interested in us also exposing the underlying code or just being able to download the .scad file?

      also would love to know what your use case is and why you are more interested in parametric vs creative!

      • lucasoshiro 1 day ago
        Hi, thanks for answering!

        Only the generated .scad would be great! I mean, I see to use cases for that that would be helpful for me:

        1. Asking for a base model, download it as .scad and them improve it through OpenSCAD accordingly to my needs

        2. Starting modeling in OpenSCAD, them ask the AI for some boring task (e.g. generate honeycomb patterns, hooks, hinges, and so on)

        > also would love to know what your use case is and why you are more interested in parametric

        Most of my use cases of 3D printing is for tools, household utilities, spare parts, etc. Because of that, my favorite tool is OpenSCAD, and I use it a lot.

        But I reckon that it is sometimes really boring. Sometimes I need to spend a lot of time with trigonometry and other math tricks and less with modeling itself. For example, the aforementioned honeycomb patterns, I've spent some hours of my life playing with sines, cosines, apothems, etc while I think that it would be a job that an AI could do for me.

        • zachdive 1 day ago
          ok thanks for the feedback and consider it done! we'll add .scad for export!

          you can also use creative mode for functional single part objects. i've made cool cupholders, plant pots and desk ornaments with it

  • WillAdams 1 day ago
    I tried a couple of prompts and never got anything usable.

    Quite surprised that:

    >Create a gridfinity storage unit with dividers

    failed so badly (it created a vertically oriented wall-mount type thing with two extraneous recesses at the top)

    The thing is, OpenSCAD is dead simple for things which can be modeled using cubes, cylinders, and spheres (and mathematical transformations/positioning of such components) --- that's the great thing.

    The awful thing is one's ability to model in OpenSCAD is strongly limited by one's fluency with mathematics (and esp. trigonometry) --- if this tool could help with that latter aspect it would be far more interesting to me (but I'm obviously not the target audience).

    • busssard 4 hours ago
      i made the same experience. I tried to get a simple wall-mounted headphone holder. and both parametric and creative mode gave me a random thing. i guess i could have hung my headphones, but i had no way of really customizing it.

      it would be nice to be able to point on the model what should be changed. or to sketch a first draft. or to have the LLM to ask for clarifications to make the final model be more aligned with my needs

  • adenta 1 day ago
    I've had some success with openSCAD and this MCP, feel free to ping if that's helpful context

    https://github.com/jhacksman/OpenSCAD-MCP-Server

    • avipeltz 1 day ago
      definitely :)
      • avipeltz 1 day ago
        have you tried cadquery or build123d?
        • adenta 1 day ago
          nope, should I? Or should I try your thing?

          To me "parametric" features seem like a nice to have vs a hard requirement. I just want to be able to talk at my computer and get back an STL to spec that I can print out

          • avipeltz 1 day ago
            then our product is probs better, build123d and cadquery are more useful if you need the output format to be a STEP file or something in a BREP format. For 3d printing applications thats not really necessary because your are exporting to a mesh format to print it anyway
          • zachdive 1 day ago
            try our thing and use the "creative mode" then! let us know what you think
  • Valk3_ 20 hours ago
    This is not in my area of expertise, so I apologize if this question is bad, but can blender do more in terms of creating 3D models than OpenSCAD? If so, wouldn't it mean that if there was a blender equivalent of this, then the capabilities for 3D modelling would be even greater? I have to guess that it's harder to achieve something like this in Blender than in OpenSCAD?
  • ata_aman 1 day ago
    Somewhat related, but I'd love GPT enabled multi-physics simulations on objects. Designing in CAD, especially for intricate objects seems (currently) to be better when done by "hand", but I'd absolutely love to use speech-to-text to run different simulations on said objects.
    • zachdive 1 day ago
      i'm not convinced that speech is the best interface but neither is text. we will most likely converge towards a mix of text (ai) commands and gui (point-and-click)

      could you give me an example?

      • ata_aman 1 day ago
        Yeah, here's one[0]. Obviously long ways out but using speech to run through scenarios of different simulations from pre-defined parameters would be great. You're basically applying formulas to already designed objects. If the model could run the scenario and spit out a report when it's done with summaries, it would be great since some of these simulations take hours. Then adjust the model for better sim results and iterate accordingly.

        [0] https://doc.comsol.com/5.4/doc/com.comsol.help.heat/Introduc...

  • flippyhead 1 day ago
    I'm excited to try this with my 11-year old. We love 3d printing stuff, but have been mostly limiting ourselves to existing works on printables. I curious how well the output here works in our prusa.
  • protocolture 1 day ago
    I quite like the product and it has appeared just as I need it, I am struggling with designing a case for a project right now via fusion.

    I have noticed that the tool does not do quite what I want it to. It reminds me of MidJourney a couple years ago. I might have to build a workflow where I design parts in Adam and arrange them in other tools. As details I supply for arrangement appear to being applied to individual parts.

    Do you have any language that is getting better results than others?

    • zachdive 1 day ago
      Could you share your conversation with Adam so I can take a look?
      • protocolture 1 day ago
        Theres this one.

        https://app.adamcad.com/share/aa1a745c-a337-4ba6-a8c1-ca7298...

        Where I figured I had poisoned the context somehow and was getting nowhere.

        And here

        https://app.adamcad.com/share/8b3dd548-511f-4b96-a1dd-ed34d4...

        Where I got some traction but am working in the opposite direction. I am finding my language the barrier. I say "Apart" but how is it to know which way.

        Will it respond to X/Y coordinates properly?

        • HetengAaronLi 1 day ago
          It does respond to X/Y. You can also try to describe vertical and horizontal. I just looked at the prompts. Are you trying to create an enclosure for a desktop computer? Would love to help!
          • protocolture 1 day ago
            Its a modular project enclosure for messing about with electronics that have panel fit components. I need to be able to remove/replace pieces on the topside. I have a bunch of measurements that aren't with me right now, but 70x40mm panel sections worked out to be just right.

            My next move is probably going to be feeding it some cleaned up diagrams when I have access to them.

  • voidUpdate 1 day ago
    What's the topology like on Creative models? I spent a lot of time last night trying to fix up some awful topology on a model I downloaded from the internet, will I have to go through the same thing if I make a model with this?
  • gavmor 1 day ago
    Have you put any thought into accommodating self-supporting design to optimize for printing?

    Or parametric structural optimization / topology optimization with parametric constraints?

    Or, rather, if these are out of scope for your tool, then I'm wondering, like the other comment, how you'll slot into existing pipelines that do facilitate these techniques.

    I'm not in the industry, I'm just curious.

    • zachdive 1 day ago
      Great question and I don’t think it’s necessarily out of scope. Our goal for the web app product is to make the single best design tool for 3D printing! Right now, we don’t directly optimize for printability (like overhang minimization or support-free constraints), but it’s 100% something we’ve been thinking about. Eventually we could guide the model generation with real-time manufacturability feedback/constraints but tbd on how we’ll surface this
  • iancmceachern 1 day ago
    Very interesting, i will by trying it! How does the integration with CAD packages you mention work? If I wanted to use that with day, Solidworks, do I need the pro level subscription or do I get that in the base level?
  • b0a04gl 1 day ago
    super curious,how are you handling constraint resolution under the hood when user modifies via prompt vs direct manipulation? are you maintaining a shared parametric model or diffing against a scene graph? also how’s geometry validation handled postgen to avoid non-manifold trash?
    • zachdive 1 day ago
      For "parametric" everything ultimately updates the OpenSCAD code behind the scenes. Prompt edits and sliders both just modify the same parameters in that script, which we recompile into a new model.

      For "creative" its a little different.

  • bko 1 day ago
    This is great. I like the pattern of integrating LLMs into specific applications. Is there something similar to figma?

    There are a lot of tools to convert figma into code, but is there a reverse? Say you have code already and you neglected figma. Any way to create the figma and iterate on it through an LLM?

    • zachdive 1 day ago
      i believe i've seen a figma mcp posted on a HN recently! have you tried any specific tools?
  • hoakiet98 1 day ago
    This is super interesting! Cursor CEO mentioned in interviews that they initially started with building AI for 3D models, but pivoted because they couldn't get enough data for the models to be effective.

    I wonder if you think this is still true given how much better the foundation models are now.

    • abe_m 1 day ago
      In all the commercial mechanical CAD packages I've seen, the default libraries are pretty weak. Each organization needs to dig in to build out the standard parts libraries to cover the basics of fasteners, bearings, etc. I think the data needed for CAD AI to work properly is going to be processing the various industrial standards from SAE, DIN, ISO, AGMA, etc to properly implement standard interfaces. I suspect it is going to be more of a tool matching AI, where there are library calls that have the explicit technical definitions of various mechanical items, and the AI is coordinating them.

      But a lot of the data needed to train an AI is probably locked up in user company product lifecycle management systems. Autodesk is probably going to be out front in any AI wave of CAD with all the data they are accumulating in their Fusion 360 cloud. The main question for me is whether they will pull a Kodak and not develop it for fear of cannibalizing their current market, or not.

    • zachdive 1 day ago
      yes i saw that! imho the latest foundation models have enabled a whole host of new possibilities. particularly improvements on SWE-BENCH and other software related benchmarks seem to translate fairly well to openSCAD as we're generating code. however there is still a lot of work to do, as these models struggle to reason spatially. gemini 2.5 is probably the best here rn.

      the future of cad generation will undoubtedly extend far beyond simple code-gen to generating human-readable features. this is where the data will be important!

  • TheonlyJem 1 day ago
    I think I saw a video of this on YouTube a while back, of them building this. Looks promising
    • zachdive 1 day ago
      haha really which one?
  • Fomite 1 day ago
    I was briefly excited, because "Can you take this file and make it solid" is a use-case I have for turning wargaming terrain meant to be at one scale to be more generally scalable.

    Sadly, this appears to be a no go.

    • zachdive 1 day ago
      could you help me I don't fully understand? you wanted to be able to upload a mesh and repair it using adam? thanks
      • Fomite 23 hours ago
        Wanted to be able to upload a mesh (or more precisely, wanted to upload an STL) that had internal space (a building with just the walls) and have it be filled so it's a solid object. That makes it easier to resize for printing, as you're not relying on wall thickness as the only structure.

        Is that any more clear?

  • JKCalhoun 1 day ago
    Having trouble trying to get a regular truncated tetrahedron. Maybe too .. obtuse? (Ha ha.)
    • avipeltz 1 day ago
      thats one that would be better for parametric mode. But parametric mode is definitely still in Beta so it might take a couple tries, but i was able to get it to generating a regular truncated tetrahedron after a couple prompts
      • JKCalhoun 1 day ago
        Cool. (Share the prompt if you could?)
        • avipeltz 1 day ago
          i just said "regular truncated tetrahedron", with the toggle switch to Parametric, wish i could drop a screenshot here
          • JKCalhoun 1 day ago
            Oh, did not see the parametric toggle. User failure. Thanks.

            Error Compiling Model — "Fix with AI?" — Okay — Hmmm.... only the top is truncated. (Seems to have done an "Optimized Tetrahedron"?)

            • zachdive 1 day ago
              share your conversation! and yeah we need to make that toggle more obvious lol or just remove the toggle entirely
        • HetengAaronLi 1 day ago
          checking in. any luck with parametric mode?
  • mdrzn 1 day ago
    This makes me wanna buy a 3d printer and play with it!
    • zachdive 22 hours ago
      yes! that's what most people have been using adam for!
  • timonoko 1 day ago
    You can insert scanned object into OpenSCAD, but it is just a surface map and very easily the model becomes too large. Is this problem now solved?
    • zachdive 1 day ago
      wdym?
      • timonoko 1 day ago
        For example: I scan a ball into STL-file. I can include it into my OpenSCAD design, but it is not a OpenSCAD-sphere, just a sphere-shaped surface with billions of facets.
  • dekuma 1 day ago
    will you expose an API/export beyond STL so teams can slot this into existing pipelines? Excited to see creative-mode evolve.
    • zachdive 1 day ago
      If enough people want it we will build it! For the parametric text-to-CAD generation we will have an API in the future and are actively exploring STEP export
  • raviriley 21 hours ago
    this is making me want to dust off the old 3D printer and start making stuff for fun again!
  • jasonliu0704 1 day ago
    wdyt about zoo.dev? they seems getting a lot resources like funding
    • zachdive 1 day ago
      i'm impressed by the work they're doing building a new kernel! although i don't currently really have a use case for which i'd ever use their tool over onshape or any other cad program. i return the question back to you wdyt of zoo and adam?
  • AIorNot 1 day ago
    Computer: tea, earl gray, hot
    • zachdive 1 day ago
      i'd like to think we're building a real life replicator. printing the generations on our bambu defo feels that way sometimes :)
  • moralestapia 1 day ago
    This is really good, congrats on shipping!

    Can you upload an existing model and start working from there?

    • ForzaAaRon 1 day ago
      It’s in the backlog of the list of things we wanna do for sure. Would that be something you wanna try?
    • HetengAaronLi 1 day ago
      also fyi we can do image upload to 3d!
  • hosolmaz 1 day ago
    Please make Adobe obsolete :)
  • westurner 1 day ago
    Build123d and Cadquery procedural CAD output and input support would be a cool feature.

    Copilot + GPT-4 can generate build123d Python code; procedural CAD genai. It's spatially incoherent sometimes like there's not much RLHF for 3d in the coding LLM model, but the code examples are close to compiling and helpful. There's also an ocp-vscode extension to render build123d and cadquery CAD models in a tab in the vscode IDE: https://build123d.readthedocs.io/en/latest/external.html#ocp...

    PartCAD is probably useful for your application as well.

    Are there metadata standards for CAD parts, assemblies, and scenes? For example in PartCAD or in a BIM Building Information Model that catalogs part numbers and provenance for the boardroom hinge screws and maybe also 3D-printable or otherwise fab-able CAD models?

    nething is an LLM with build123d output: https://nething.xyz/

    FWIU it's possible to transform B-rep (boundary representation) to NURBS with a different tool.

    B-rep: https://en.wikipedia.org/wiki/Boundary_representation

    NURBS: https://en.wikipedia.org/wiki/Non-uniform_rational_B-spline

    glTF 2.0 > Adoption of: https://en.wikipedia.org/wiki/GlTF#Adoption_of_glTF_2.0

    PartCAD > Features > Generative AI: https://partcad.readthedocs.io/en/latest/features.html#gener... :

    > Individual parts, assemblies and scenes can also can be exported into 3D model file formats, including: STEP, BREP, STL, 3MF, ThreeJS, OBJ, GLTF, IGES

    • avipeltz 8 hours ago
      Thanks! We've done a good amount of experimenting with cadquery and build123d and actually got it to the point where it can reliably generate compiling code, the problem is the generation quality is still more limited than openscad. We may still release it so that users can export to STEP/BREP formats but we have been going back and forth internally on how to highly to prioritize it. We definitely want to build about the ability to generate multiple parts in parallel and assemblies. Thanks for all this :)
  • iamnotsure 1 day ago
    do not steal names
  • TacticalCoder 1 day ago
    Advances in AI generating 3D models do get me really excited because there's an "old" tech we have, since the pre- AI craze, that works very well: and that's rendering photorealistic (or non-photorealistic but artistic, like in the "Flow" animated film) from 3D scenes.

    But then we need to fill these 3D scenes.

    Generating 2D pictures and 2D movies doesn't excite me much. But generating a 3D scene which I can then open from Blender or whatever, modify stuff, change the camera angle, lighting, models, etc. is going to open so many possibilities.

    It's exactly the same for audio: I don't want a wav file generated. I want all the individual tracks that I can open in a DAW.

    Both are coming. I'm 100% sure about it.

  • liesandxander 1 day ago
    [flagged]