Domain-Specific 3D Design Tools

From CS294-84 Spring 2013
Jump to: navigation, search

Reading Responses

David Burnett - 4/2/2013 17:38:54

"Fabricating Articulated Characters from Skinned Meshes"

This work automatically detects appropriate locations and sizes, and generates appropriate shapes, for articulation of limbed characters. It converts the most common type of character representation, a skinned mesh, into a movable toy with mechanical joints able to be created in a single 3D print. Prior work from the authors detects the best lateral locations for joints; sizing and centering of joints is performed iteratively to ensure no overlap; ball-and-socket and hinge joints are inserted to produce an appropriate 3D model for printing. This sytem allows rapid prototyping of toys, even without the automated place & size functions; once an artist has a model of the toy in question, joints can be inserted very rapidly and the only significant time increase is the duration of a 3D print. The models in the paper are generated in a game, further decreasing the time to having a custom toy. With the addition of position sensing through external reference, the virtual model could be animated on-screen by moving the printed model in reality. There are a few limiatations, but they seem minor. Best structural strength is an approximate guess instead of calculated optimum. Joint placement depends on cues from the mesh, and otherwise must be manually inserted. The authors claim their work to simply be a piecewise reproduction, and that a true reproduction would include a continuous unbroken surface. While technically true, given the non-existence of toys that carry this feature, it would be a serious undertaking to solve this drawback and the current solution seems to be long accepted by industry.

"SketchChair: An All-in-one Chair Design System for End Users"

This paper describes a system that allows users to design a chair capable of being created on a 3D printer. Concept furniture has been gaining popularity in recent years, and creating custom chairs with this system is a step toward making all home furnishings custom instead of size and style limitations imposed by a mass manufacturer. The software allows rapid prototyping through intuitive shape and support generation, followed by automatically generating slices for manufacture on a laser cutter. It also includes simulation, including weight to ensure the end result won't collapse under load and posture to give an idea of how a user of a particular size would be seated. Besides the user simulation, the paper doesn't seem to clearly differentiate itself from sliceform products like 123D Make. It also seems to focus too much on the UI of the design program and decoration of the end product, rather than the core functionality such a program enables. The paper includes a stool generated with the software, implying that tables and other structures are possible. I would have liked to see more custom furniture created, especially if it enabled a particular function like compact storage or ease of travel.

"Plushie: An Interactive Design System for Plush Toys"

This software is a way for amateur plush toy creators to design a toy virtually with real-time 2D and approximate 3D representations of the pattern and result. The UI is interactive and intuitive, allowing free-form modifications to 3D or 2D shapes. The approximate 3D result from the authors' stuffing algorithm is shown to be close enough to the final result to give the designer a much better idea of how the pattern will turn out while still being renderable in real-time (and in 2007, no less). Users tests demonstrated the effectiveness of the software, and children were able to produce representative toys of complex 3D models with surprising speed. The paper mentions a few limitations on geometry and sewing complexity, but given the significant plush toy design & implementation speedup it already offers, these shortfalls are minor at best. The paper probably should have spent more time focusing on the core achievement: real-time editing and simulation of corresponding 3D and 2D patterns.

Valkyrie Arline Savage, PhD - 4/11/2013 17:23:12

Today’s offerings are a series of domain-specific design tools for 3D design. They share the spirit of optimizing based on added information: we can do more for the user when we have some idea of what it is that he wants to do.

I love the Plushie paper. It’s adorable! But aside from that, it has some very interesting research in it. Having a real-time rendering engine showing a simulation of the actual generated pieces (and in general constraining users to things that can actually be fabricated) is a very powerful idea. In fact, it seems to have sort of inspired SketchChair. Anyway, Plushie includes a lot of neat physics simulations for mimicking the effect of sewing together and stuffing the generated 2D pattern pieces. They did a pretty nice evaluation, too, with kids who designed their own toys. I giggled a little at their reported simulation numbers, simply because hardware is so much better now, but I didn’t see any huge shortcomings in this paper. Maybe that’s just because I’ve read it so many times.... I guess I’ll come up with something: it would have been interesting for them to talk about the pros and cons of 2D mouse-based interaction compared to 3D pointer-based or something-else-based interactions. Since they are generating these 3D objects, why not do it in 3D? I can imagine a lot of reasons, but they don’t seem to be at all thoughtful about any other possible interactions than sketching.

SketchChair is also a neat project. I wonder what the authors would do differently if they started with a tool like 123D Make? To be honest, I still think that their physical simulation and insertion-of-proportioned-and-sized-person ideas would still be invaluable in the design of something like a chair. It would be neat to extend this analysis to do even more personalized stuff like range-of-motion analysis (to create chairs that a person would be physically able to get on to sit) or weight-distribution analysis (to avoid putting a lot of pressure on bodyparts while seated). That’s vaguely like something else that I think would be a cool research project, anyway, so maybe it’s best they didn’t do it.  :)

The articulated characters paper was pretty hard to follow, since I was learning a lot of conventions behind graphics papers as I read it as well as learning their project. They had a lot of cool ideas even beside their (obviously large and awesome) idea of calculating joints to create appropriately deformable characters. The idea of little balls to make posed joints stay in place is cool, and probably something I will actually use in my own work. Their figures were not that clear in all cases, which is my main complaint, and they also had a lot of vague and unfounded “user interface would be good” comments that they made no attempt to evaluate (oh, boy, the user only needs to specify 5 joints and 3 numbers per joint! but what does that mean?). However, they did a good job of showing the power of their system by creating various characters that had a wide range of geometries and intended poses. Also, I have here in my bullet-pointed reading notes the following:

  • HAHAHAHAHAHAHA 5.5 hours

elliot nahman - 4/15/2013 17:40:37

Plushie: Plushie is a system which allows the user to draw a 2D sketch and creates a 3D object with 2D sewing pattern.

It seems like a really neat and useful idea. I question the usability of it when sketching. They show a lot of mockups of how it works—the 3D model with a line drawn, but never the actual interface for sketching. What does this look like? How do they constrain what axis you are drawing on when modifying the 3D model or performing actions like adding seams? If it works, great, but I wonder if these interactions are not as intuitive as they want us to believe. Especially since they don't show that interface/interaction at all and they do for other screens.

Also, the sewing portion seems like it could be refined. The connector view is completely illegible. The number view, legible, but I think I would find it confusing once I had these pieces cut out and they no longer were stiff/looked exactly like the screen. So I wonder if the cutting patters help with that or are blank.

SketchChair SketchChair is very similar to Plushie, but for making chairs instead of dolls. Based on a simple 2D sketch and a controlled set of manipulations, the user can create a 3D buildable object. The addition of the manikin is a nice feature to help ground a design in ergonomic and Newtonian reality. I do wonder about weight and the structural capabilities of the chair. Is any structural analysis occurring to make sure the chair can support x weight? The addition of braces would be part of this; maybe it should help figure out where bracing is needed.

I also wonder about output. It doesn't seem to optimize the layout at all, based on the few examples they show. This could lead to a lot of material waste and should be easy to fix. The part mentioning the ability to add a felt cover is weird too. Their system doesn't seem to support an integrated cover addition, so why mention it?

Fabricating Articulated Characters from Skinned Meshes This paper does not fit with the other two. Whereas the other two are about making manufacturing 3D designs approachable to the lay person. This project, although still lowering the bar, is still aimed at a much higher skilled user. It provides an automated way to add moveable joints to a 3D model which can be 3D printed.

Their system seems quite automated, but there are instances where user input is needed. I am unclear on how effectively the system communicates what a problem is and possible ways of solving it. Also, allowing a user to specify a joint seems like an important feature, for objects such as their hand which should have the thumb be opposable. I guess I also begin to wonder exactly how useful this is for mass production. In the end, in the video, they seemed to handle their models very gingerly, which implies a delicacy, meaning it is useful for prototyping, but not for production. Where the previous two papers were about helping your average person with small scale production; this paper doesn't quite seem to specify who their user group is or for what purpose. They also don't run a user study, so who knows how user friendly they system is, though it seems like it would be quite userful.

Ben Zhang, PhD - 4/15/2013 21:57:52

  • Plushie (Mori) & SketchChair (Saul)

Plushie aims to help people with sewing toys. The system targets at non-professionals who would like to design a 2D cloth pattern and have the sewn product both simulated and realized. The key implementation in this work is a software that enables user to model the target with little pain. One particular strong part of this system is not only the 3D view that can provides, but also the simulated results that tries to match what users have sketched. For this task, it requires domain specific knowledge to assist newbies for designing toys. The system is evaluated with a group of children, and they can successfully design their new toys.

SketchChair is from the same group, while targeting at another interesting object to design. The significance of chair is obvious, and customization might not only bring fun to designers, but even a huge benefit on everyday life. Again, similar to Plushie, the work's contribution is not only the software that people can use to design their chair; though that's the direct outcome. SketchChair combines the design and fabricate process together such that the generated CAD file will guarantee some properties. Though from the paper, their design might still not be able to be used as real chair (for all scenarios), but they do consider the effect of person sitting on the chair and how gravity, human's body shape matter in this context. Embedding these complex modeling into the software simplifies end-users a lot and from the evaluation, we can see those positive feedback. People comments on the example chairs and modification approach, and that would well be possible if the designed file is crowd-sourced.

Putting these two work together, they share a lot in common. Designing each requires some domain knowledge, while the public may just want to play with something, get started first and then delve. Such systems would provide a huge benefit in bootstrapping people's learning process for various design subjects. However, it still seems to be too much ad hoc. If a common platform can be built such that people from various fields can create such "model" so that end users can just simply sketch without too much consideration on many details first, that might be super powerful to motivate personal prototyping. Though some common characteristics of these two works are easy to identify, how to effectively incorporate tons of professionals to create "extensions" for such a platform is unknown. But that might be interesting to consider.

  • Fabricating Articulated Characters from Skinned Meshes (Bacher)

Given the fact that there have been a lot of skinned models around, the power of automatic turning them into articulated deformable characters will be huge. The product of this system will not only be the toys, but may also play roles in industry like movie making. The technical details behind requires some computer graphics background, but the more important thing is how to combine graphics with the fabrication. Since the output of this system has to be processed then in the 3D printer in order to create a real object. The ball-and-sockets model with user-configurable parameters seem to be a right design. The paper also discusses a lot of modeling knowledge to avoid mistakes such as collision. Even though automation is something preferred, users might have their design considerations, and the system enables users to specify joint types and ranges for joints where defaults are not as natural. The final results look pretty good, and especially the "hand" model, which looks so flexible. I am not having enough background on graphics, but generally it looks awesome.

Joey Greenspun - 4/16/2013 8:48:33

Plushie: An Interactive Design System for Plush Toys This system is a novel means of turning computed simulated creations into 2D layouts that can be cut out of a material and sewn together to form a plush toy. The system utilizes a sketching interface for the 3D design and constantly analyzes the 3D design to ensure it can be programmatically turned into a 2D cutout that can be sewn together to create the 3D design. This is really where Plushie differentiates itself from other tools. There are many other systems out there that can turn 3D designs into a corresponding series of 2D shapes that can be combined to make the desired model, however there are many 3D topographies that are impossible to create like this. These other programs would allow the user to make such a design, only to find out at the end that there is no possible way to make it. Plushie is constantly simulating the transition from the 3D design to the 2D design so that every alteration to the 3D design is ensured to be a possible creation from 2D fragments. This makes the design more intuitive by showing the user what can be done. The user gets a feel for the system constraints that are specific to this problem. When the user starts to understand the relationship between their 3D model and what they will eventually be sewing together, they get a feel for which shapes are best and turn into the fewest 2D pieces. Something else I really enjoyed is how the researcher immediately identify their design niche, i.e. they are not trying to be incredibly precise and find the optimal layout for their 3D design. They want to make a robust and simply 2D cutout from their 3D design. I do think their system could have benefitted from having the ability to copy and paste parts. That’s one of the huge benefits of doing things in a programmatic 3D space. And the users stated that they would have liked to be able to create symmetric designs. This doesn’t seem like it’s be all that difficult to implement either.

SketchChair: An All-in-one Chair Design System for End Users These researches propose a design tool that is capable of using a user’s sketch of a chair to fully create a chair in 3D using slices of material cut from sheet of material using a laser cutter or CNC milling machine. They mention this trend in that the consumers are sort of becoming the creators with all this advance in digital design tools. However, there is also still a big divide when it comes to 3D modeling software. CAD tools are complicated and not easily learned by a layperson. So they have created a sketch based system to make this design process easier. One thing I was worries about when first reading this paper was that every chair would sort of be the same thing. How much novel detail could you really get out of a 2D sketch of a chair? However, I was pleased to see how much alterations could be done and how wildly different the chair could actually be. I think the main thrust here was the ability to change the height of planes in the z-direction; making curved surfaces led to the creation of very bizarre and interesting chairs. Additionally, the researchers mentioned the lack of being able to sketch a lot of designs in standard CAD tools. And again, they filled this hole in the design space. Being able to create a gallery of chairs in minutes all based on very simple sketches allows the designers to quickly run through a ton of different designs very quickly and compare them side by side. Two big things I thought were very helpful to the design process were the virtual human figure and the reference geometry. The researchers were able to add these very useful design tools because of how specific their tool chain is. They know the end result is to create a chair, so they give you the option to have a virtual person (whose physiology can be modified to mimic the user’s exactly) sit in the chair and make sure it still stands up and serves it purpose. Additionally, they allow you to import other objects that a char needs to interface with, such as a piano or a table. This makes sure that the chair will fit everywhere it needs to fit. I would have liked to see them implement what one of the users suggested, that is, a model chair, or even a few model chairs, to build your design off of. Many new users might feel overwhelmed by the freedom of the design tool, and having a seed to start with could be highly beneficial. Also, I found it shocking that they would not do some sort of material stress simulation to determine how much the chair made of x-material could hold. That seems like it would be a simple statics problem, and also highly beneficial to the end user.

Fabricating Articulated Characters form Skinned Meshes

These researchers created a system that can take a skinned mesh as an input and create a posable figure from it. The algorithm determines where joints should be and what their dimensions should be. One really compelling aspect of their design was how they incorporated that material properties of what they were eventually going to print the figures out of, into the design of where the joints were and what they looked like. If a joint was determined to have a minimum cross section that was smaller than the material could handle, the joint was rejected. I also really enjoyed how much SPORE was used and mentioned in the article. I used to play the game a lot and never realized how much went into creating those new fantastic creatures. Additionally, adding friction to the joints is something that was completely unnecessary in the 3D modeled case, however couldn’t be more important when considering actually fabricating these figures. With no friction in the joint, the figure would never retain its pose. I thought this was a very key design parameter to include.