利用者:Survivor6666/Boolean Modifier
目次
Boolean Modifier
Description
Boolean operations are a method of combining or subtracting solid objects from each other to create a new form, a new object. Boolean operations in Blender only work on two Mesh type objects, preferably ones that are solid, or closed, with a well defined interior and exterior surface. If more than two mesh objects are selected only the active and previously selected object are used as operands. The boolean operations also take materials and UV-textures into account, producing objects with material indices or multi UV-mapped objects. Ensure that both meshes have enough vertices on the overlapping faces. Subdivide if necessary.
Boolean Modifier
Options
Apply, Apply as Shape, Copy
what is 'Apply To Shape' ??
Operation
- Intersect
- Creates a new object whose surface encloses the volume common to both original objects.
- Union
- Creates a new object whose surface encloses the total volume of both original objects.
- Difference
- The only operation in which the order of selection is important, the active object is subtracted from the selected object. That is, the resulting object surface encloses a volume which is the volume belonging to the selected and inactive object, but not to the active one.
Object
It is mandatory to select an obeject here. The boolean operation is performed with this object and the modifier target object.
Usage Hints
The downside of using the direct boolean commands is that in order to change the intersection, or even apply a different operation, you need to remove the new object and redo the command. In contrast, one can use a Boolean modifier for great flexibility and non-destructive editing. As with all modifiers, the booleans can be enabled/disabled or even rearranged in the stack.
Warning
|
To get the final, “definitive” object from this modifier you need to “apply” the modifier using the modifier’s Apply button. To to see the result you need to move the remaining operand away or make the operand invisible in the Outliner Window. Until you apply the modifier, the object’s mesh will not be modified.
Examples
Intersect
The cube and the sphere have been moved to reveal the newly created object (“A
”). Each face of the new object has the material properties of the corresponding surface that contributed to the new volume based on the Intersect operation.
Union
The cube (“A
”) and the sphere (“B
”) have been moved to reveal the newly created object (“U
”). “U
” is now a single mesh object and the faces of the new object have the material properties of the corresponding surface that contributed to the new volume based on the Union operation.
Difference
The Difference of two objects is (as the “standard” subtraction) not commutative in that the inactive object minus the active object (behavior of this operation) does not produce the same as active minus inactive. The active cube (“A
”) has been subtracted from an inactive sphere (“B
”), and both have been moved to reveal the newly created object (“D
”). “D
” is now a single mesh object and the faces of the new object have the material properties of the corresponding surface that contributed to the new volume based on the Difference operation. D
’s volume is less than B
’s volume because it was decreased by subtracting part of the cube’s volume.
Multiple modifiers
(The process to model the complex object shown to the right) illustrates how to model quite a complex mesh object, using only three basic forms, and several modifiers. As usual, click on the picture to enlarge.
(A complex object modeled using multiple Boolean modifiers) is the result of this modeling process. You can download the demo blender file here.
Animation
(An animated boolean deformation) shows some key-frames of the boolean-deformation of a “force field” sphere penetrated by a sort of space swallow. It tries to demonstrate the possibilities of Boolean modifiers in animations.
(The schema of the effect) summarizes the key points of the boolean-deformation effect. There is one small trick here: one of the boolean operands (“SpaceShip_ext
”) is not rendered (the third toggle control, at the right of the Outliner window, in Outliner display), which allows us to keep the “FField
” surface a bit away from the real “SpaceShip
” (else, we would have a lot of artifacts!). “SpaceShip_ext
” is a linked-duplicate (AltD) of the “SpaceShip
” object, just slightly up-scaled and parented to the “original”.
You can download the blender file here.
And here is the complete video of this anim (Media:manual-modifiers_boolean_exvideo.avi):
Technical Details
The boolean operations rely heavily on the surface normals of each object and so it is very important that the normals are defined properly and consistently. This means each object’s normals should point outward. A good way to see the object’s normals is to turn on the visibility of normals: 3DView → Right Properties Shelf (N) → Mesh Display. (Visible normals) is an example of a cube with its normals visible.
In the case of open objects, that is objects with holes in the surface, the interior is defined mathematically by extending the boundary faces of the object to infinity. As such, you may find that you get unexpected results for these objects. A boolean operation never affects the original objects, the result is always a new object.
Warning
This is not true with the Boolean modifiers: when they are applied, they modify their owner object, and do not create a new one!
|
Limitations & Workarounds
The number of polygons generated can be very large compared to the original meshes, especially when using complex concave objects. Furthermore, the polygons that are generated can be of poor quality, for example, very long and thin and sometimes very small. Try using the Decimate modifier (Editing context to fix this problem.
Is this still valid for 2.5x ?? I have not seen it (yet)
Sometimes the boolean operation can fail with a message saying “An internal error occurred -- sorry
”. If this occurs, try to move or rotate the objects just a very small amount and try again.