1
$\begingroup$

In the game Super Smash Bros. Melee, there is a stage called Flat Zone, which flattens every playable character along the z-axis, as if they are within the screen of the Game & Watch handheld. All of the characters still use their regular 3D models and their respective animations that were animated in a 3D space, but the stage permanently flattens all of it, making them appear paper-thin when you rotate the camera. The character Mr. Game & Watch, who also uses a normal 3D model, is permanently flattened in a similar manner, regardless of the stage he's on.

Here are examples taken from Super Smash Bros. Ultimate:

Normal 3D View

3D Front 3D Side

"2D" View

2D Front 2D Side

Is there a way to achieve such an effect in Blender in a non-destructive manner?

$\endgroup$

1 Answer 1

3
$\begingroup$

You can flatten a geometry on an arbitrary axis like this : create a new object, delete all geometry (in edit mode), and create a geometry nodes modifier like this :

Geometry nodes for flattening

This joins all the objects contained in your character, regardless of their own transformations, and flattens them on the X axis.

Setting the multiplying factor to 0 would have mesh elements overlap and cause z-fighting, so I advise setting it to a very low value instead (as pictured). This will also ensure the depth order is respected, so your character should more or less look like the original (when viewed from the side, at least).

Flattened animated character 01 Flattened animated character 02 Flattened animated character 03

$\endgroup$
12
  • $\begingroup$ I don't know if I did something wrong, but it doesn't quite work yet. It flattens the model alright, but the animation doesn't get translated into the flat plane properly. If part of the model is rotated for example, the previously flat model now deforms into the axis it's not supposed to be deformed into. $\endgroup$
    – Synn Ko
    Commented Oct 16, 2023 at 13:42
  • $\begingroup$ Modifiers work in object space, so any object-level rotation will change the "flattening plane". In order to solve this, I would have to know more about your particular use case. $\endgroup$
    – Hadriscus
    Commented Oct 16, 2023 at 17:05
  • $\begingroup$ I'll try to upload a GIF of an example when I have time and I'm at my PC, but the low upload size limit here is giving me trouble. $\endgroup$
    – Synn Ko
    Commented Oct 17, 2023 at 0:50
  • $\begingroup$ Apologies for the delay, I've finally added some example GIFs. I hope this gets my point across better than my words could. $\endgroup$
    – Synn Ko
    Commented Oct 21, 2023 at 23:52
  • 1
    $\begingroup$ Sorry for the late response, I didn't see the notification. You were right, I had the modifiers in the wrong order... such a stupid mistake, I apologize. Thank you for your help! $\endgroup$
    – Synn Ko
    Commented Oct 29, 2023 at 21:48

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .