3
$\begingroup$

Hello beautiful artists,

I was wondering if I could clip a finished 3d model to view only a portion of the model without really messing with the object mesh directly. The idea is quite similar to the "Section plane" tool in Google SketchUp. Here is a screenshot of it.

enter image description here

The whole point of doing this is to be able to display the same object with two different design versions in the same position to more less achieve a before & After effect like the below-attached image. It would be great if I could animate the before model into the after model with a cool transition.

enter image description here

I am looking forward to hearing from you smart crowd. Thanks in advance. Ash

$\endgroup$
5
  • $\begingroup$ You could use boolean for this $\endgroup$
    – MikoCG
    Oct 21 at 9:23
  • $\begingroup$ If Boolean doesn't work you could do it in the Compositor $\endgroup$
    – moonboots
    Oct 21 at 9:30
  • $\begingroup$ Or very easy with shader nodes $\endgroup$
    – Chris
    Oct 21 at 9:43
  • $\begingroup$ Tutorial here: youtu.be/LbCKAlwxxmE $\endgroup$
    – Chris
    Oct 21 at 9:46
  • $\begingroup$ i updated my answer - now can can animate two objects. It is pretty much the same, just use two objects and instead of using two materials, just make one material with alpha = 0 and for the other object just the other object with alpha = 0 $\endgroup$
    – Chris
    Oct 21 at 14:29
2
$\begingroup$

I believe you want something like this:

AB Reveal

This accomplishes your first request, the slicer, by using a Boolean Difference operator. The techniques is fairly simple.

Slicer

  • Create the object you want to slice
  • Create a cube large enough to contain the object with the same origin
  • Move the cube to one side of the object along an axis.
  • Set the cube's Viewport Display to wire to make it easy to see.
  • Deselect the cube from rendering so that the result shows up in a render but not the cube.
  • Add a Boolean modifier to the object. Set the type to Difference and the object to the cube. You will probably have to set the Solver to Fast to avoid bugs in the exact solver:

The Boolean operator showing its settings

Note: You can angle the face of the cube that is the 'front' of the slicer if you want a slice that is at a diagonal to the movement of the slicer.

To accomplish the AB reveal effect you simply use two cubes, one slicing the object you want shown on the left, the other slicing the object you want shown on the right.

A trick for making the animation easy:

  • Place both objects at the same origin.
  • Create the first cube with the same origin.
  • Give the cube an array modifier.
  • Perhaps change the relative spacing to something slightly larger than 1 if you want a gap in the reveal.
  • In edit mode, separate the two cubes
  • Move the second cube's origin to its geometry.
  • Create the two Boolean operators. Use the original cube on object, the second cube on the other.
  • Parent the second cube to the first cube.

Now when you move the first cube the second cube follows it exactly.

Here's the blend file for my example, but if you want to render it, you do need to disable the cubes from the render and setup camera and lighting.

$\endgroup$
1
  • $\begingroup$ It's childish to downvote correct answers, especially if you're not willing to explain the downvote. $\endgroup$ Oct 21 at 15:30
11
$\begingroup$

*** UPDATE ***

ok, so you want 2 objects with that technique, looks like i missed that.

All you have to do is use another object with the same material setup and double the materials as well so that each object has 2 own materials.

Then you change one material to be alpha = 0 and for the other object the other material to be alpha = 0. Don't forget to change the blend mode, then you will get:

enter image description here

Here the explanation for 1 object:

Shader setup:

enter image description here

Just add a plane as a "divider" and make it invisible (by material or by render/viewport checkbox)

result:

enter image description here

or with 2 planes and 3 shaders:

enter image description here

enter image description here

blend file:

$\endgroup$
5
  • 2
    $\begingroup$ Dang, that works better than I thought it would. Good job :)) $\endgroup$ Oct 21 at 11:45
  • $\begingroup$ @JachymMichal: Thank you!!! $\endgroup$
    – Chris
    Oct 21 at 11:49
  • $\begingroup$ Except that the OP wants a technique for switching between two models, not for changing shading on one model. $\endgroup$ Oct 21 at 14:00
  • $\begingroup$ Still doesn't give the slicing effect that the OP asked about in the first part of the question. $\endgroup$ Oct 21 at 15:26
  • $\begingroup$ Your first solution was bad. You even changed it in response to my comment. How is that 'making solutions look bad' rather than pointing out bad solutions? Your transparency technique does not solve the slicer problem because it doesn't create a face at the boundary. I do understand it. It doesn't work. $\endgroup$ Oct 21 at 15:43
5
$\begingroup$

To expand my comment, you can easily achieve this effect with active bool using slice... You will technically slice your mesh into 2 with some 3rd object and 1 will use 1 material and second object will use 2nd material like this: enter image description here

enter image description here

Way to achieve this is simple as well, just use your mesh, add one cube (or any object) and you can use default addon called booltools that will give you this menu and you can select your cube, your object you want to cut and press this: enter image description here

Your cube will be transparent and by moving it you will cut your object... now go to your object (you can now select each cut separately and click on this button and select object: enter image description here

Do this for both objects and by moving your cube you will see that effect you want... If you want to make it better, you can but it will take additional steps

$\endgroup$
3
  • $\begingroup$ Also geometry nodes are becoming more and more better and I saw already some people swap one object with another like this with geometry nodes $\endgroup$
    – MikoCG
    Oct 21 at 9:36
  • $\begingroup$ There are literally multiple ways to achieve this and probably thousands of different tutorials $\endgroup$
    – MikoCG
    Oct 21 at 9:56
  • $\begingroup$ I think the OP wants to switch between models, not change shading. $\endgroup$ Oct 21 at 14:01
3
$\begingroup$

In 3D-view, set the orthographic view, and press Alt+B. You will got a frame like in selection box:

enter image description here

Everything outside this box will be hidden. Now you can rotate the view to reveal cuts.

enter image description here

You can also make Alt+B cuts in perspective view, but in this case you will get pyramidal cut

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.