Thursday, August 14, 2014

A Little Buggy

The "Morrow Project" XR311 has been ordered from the printer now.

One day, I'll take the 3d printer SBU at TechShop so I'll be able to run off small projects there instead. Except my current membership has less than three months to run...

Doing the wheels, gun ring, and seats this way is simpler than trying to manage their intersections (and make sure there are proper drain spaces for the support material). Other print compromises; omitted the protective covers on the headlights, the rail around the cargo area is just a flat shape, and of course the grill work on the engine cover is omitted. There is a square hole in the rear for inserting a piece of mesh, though. And obviously the end-user will add antenna mounts, 50 cal, jerry cans and the like.

The original (purchased) mesh was quite simple, and I've basically kept it. Tessellated in a few places to smooth edges, built headlights and wheels from scratch, and put in the tow hitch and rear marker lights from my V150 model.

On the "long" list (or maybe on the second page of the to-do list) is revising the V150 as a Poser vehicle. Unfortunately, the optimization for print is rather different. So I have to clean up the mesh, hollow it properly with in-facing walls (and build some inside detail), increase the detail level on items like hinges, vision blocks, bolt heads, and of course UV-map the hull so it can be painted properly.

I did not plan the model properly for this (too many go-arounds with print issues at Shapeways). If I'd optimized for rebuild, for instance, each vision block would be an instance of a master and all I'd need to do is revise the master.

However. Given that the market for such a vehicle in the Poser community is probably no better than that of the printing community (aside from the original client, there's been no interest in the model), I'm not exactly in a hurry on this.

I've been trying to transition from Carrara to Blender as a primary modeler. All 3d applications have a steep learning curve, and most seem to go out of their way to be obscure. They also generally break the UI -- Carrara, for instance, won't use the standard window area or allow the standard hide/quit commands. It also overrides fonts in such a way as to be essentially broken on 10.7 and above (aka, if you try to change font size or otherwise make them more readable, the ap crashes).

As I mentioned in the last post, there's something funny about Carrara's handling of standard interchange formats. So I've been using Poser as a filter; pushing a Wavefront OBJ file from Carrara through Poser without otherwise altering it in order to get MeshLab to open it.

I need MeshLab in the loop because Shapeways prefers STL as a format -- also, STL has implicit scale, which is not standardized in OBJ. Also, NetFab is a nice little utility to re-scale, re-orient, and do sanity checks on a mesh before printing. And it is freeware. And it runs on STL.

The fun thing is, import and export are handled different in each of these aps. The options appear in different menus, and in different forms, with a different train of option screens and similar. Which is nice and brain-straining when you are shuffling a file between all four aps in quick succession.

Previously, I was using Hexagon as the one-stop-shop between Carrara and Shapeways; Hex allows import of OBJ, and export of a STL with implicit scale. But it is also the buggiest piece of 3d software since the late unlamented Amapi, and I don't think I've even bothered installing it on my current computer.

And I'm really liking the checks in NetFab. It caught a bad weld in one mesh I was using, saving a lot of time going around with failed uploads to Shapeways. MeshLab is even more exciting in terms of functions, to the point where it looks a lot like the options in Audacity; you need a degree in advanced mathematics just to read the menu options.

(Both pieces of software, Audacity and MeshLab, offer hundreds of sophisticated options with no inline explanation of that they do. And they are both essentially command-line; if you understand that a little "third-order catmull/poisson stage filtering" is what is called for, then you dial up "fifteen percent third pole, wave center defined by aggregate surface normal," and...viola de gamba!)

(And, yes, I do understand some terms and concepts that many people would find equally mysterious. But this is still, to me, deep magic. Something I am not going to understand just by looking up a definition on Wikipedia.)

Anyhow, the problem is not so much that different 3d applications move the open and save dialog into unusual places, and change all the button colors. It is that each has a unique conception of the work process. And often, a different way of defining what a mesh is in the first place.

As a general rule, the simpler ones let you do steps manually to a mesh you are constructing. The more complex (and powerful) ones make everything possible an operation, with parameters, and generally those operations are stacked into a save file -- meaning you can go back at any point and change one item in the stack while preserving the rest.

My big stumbling block is I'm still result-oriented, not process-oriented. I am used to working with very small poly counts, and hand-designing, hand-tweaking the mesh. This supports printing as well, because I can personally verify all the closed volumes and walls to make sure they aren't intersecting and are watertight.

The way the better 3d applications want to work, however, is by applying processes that attempt to arrive at the same results algorithmically. Instead of manually inspecting a mesh and cleaning up intersections by hand, you run a tool. If you don't like the look of the final mesh, or if the tool didn't work properly, you try a different tool.

I can understand it, and respect it, but it isn't my preferred method. And that is the main reason I keep going back to Carrara. Because as broken as it is, it does do the basic things right.

No comments:

Post a Comment