Remix.run Logo
aclindsa an hour ago

One of the best things about openscad is the ability to immediately see the results of a code change in the 3D view (all I do is save the file with :w in neovim and openscad re-renders it). Being able to interact like this makes it much quicker and easier to iterate on a design.

I read through the ucad website and book for 10 minutes and haven't been able to figure out if there is an analogue to this for ucad?

There are several things that look neat about ucad's language, but I would need to recreate something like openscad's workflow to consider switching.

don-bright 37 minutes ago | parent [-]

That immediacy is mostly thanks to OpenCSG which is essentially a magic trick to quickly fake 3d rendering of booleans between 3d objects using stencil buffer of gpu. http://opencsg.org/

In other words it renders the cylinders cubes spheres etc and their unions differences etc, to a 2d screen without actually calculating the intersection of those meshes / solids in 3d space.

This is the special thing about OpenSCAD design is they figured out how to build an abstract syntax tree that could either be sent to OpenCSG, CGAL (old engine), Manifold (new engine), or even the bare bones 'ThrownTogether' renderer (ancient engine on machines with no gpu that just draws 'negatives' as green blobs iirc).

It should be theoretically possible for any CAD program to do this. its just a lot of work.

beeflet 10 minutes ago | parent [-]

wow, this is really neat. I always noticed how, when panning around with ortho view, it didn't need to re-render