Faster boolean cross section? I'm trying to animate a cross section for a complicated object. I'm doing this by using a difference boolean modifier on the object and then sliding a cube into the object. The results look very nice, but blender basically grinds to a halt when trying to calculate the boolean. 

This is easily reproducible: just create a cube, add a subdivision surface, increase to 6 subdivisions (makes a sphere), add another cube, and add a boolean modifier to the first cube. Try to move one of the objects across the other one and observe the incredible slowness. 

I've tried to decrease the number of vertices and faces in my scene, but it's a complicated object, so I cannot get much below 100k vertices. 

There are some other methods of generating a cross section (using nodes, or camera clipping plane), but I like the look of the boolean which produces nice, closed objects instead of open ones. 

Is there any way to speed up the boolean?

EDIT: to be more specific, I'm not really looking for a cross section, but more of a "cutaway view", as described in this post.
You can achieve a much much faster cross section effect (almost real time) by using a simple mesh circle with a Shrinkwrap Modifier.



To set this up:


Add a mesh circle (Add > Mesh > Circle) with at least 64 verts.
Scale the circle so it's bigger than object you want to slice, and position it so that the center of the circle is at the center of your object more or less.
Add a Shrinkwrap modifier to the circle object and set the Target to the object you want to slice into cross-sections.
Set the Shrinkwrap mode to Project, and toggle both the Negative and Positive Direction on.


That's about it. You can move the circle up and down to see the cross section effect. You can hide the target object or move it to another layer to see only the cross section.

You can add depth to the circle and make it renderable by adding a Skin Modifier.

If the Shrinkwrap modifier is misbehaving, try to scale the circle or change its center position.

Here's how it looks with Skin and Subsurf modifiers added, played in real time in OpenGL: