3
$\begingroup$

Let's say I have a cylinder. When I turn on smooth shading and auto-smooth, the side edges are smoothed out like this:

enter image description here

So the question is, can I do that on wireframes? I mean I want to hide all the smoothed edges, leave the outline and sharp edges alone like this:

enter image description here
(photoshopped)

I guess some eevee shaders could do that but I don't know how.

$\endgroup$
3
  • $\begingroup$ Hello :). You might be confusing normals and geometry. Normals can be smoothed, but geometry stays the same. $\endgroup$ Commented Apr 1, 2021 at 6:41
  • $\begingroup$ Thanks for explaining...I know geometry won't be smoothed. I just want those "smoothed" edges to disappear in viewport or render result. $\endgroup$
    – Liuuzaki
    Commented Apr 1, 2021 at 6:59
  • $\begingroup$ @Liuuzaki In the viewport, you can play with the "Wireframe" threshold slider under the overlays menu. $\endgroup$
    – Will Chen
    Commented Apr 1, 2021 at 18:15

2 Answers 2

6
$\begingroup$

If you use Freestyle, one of its parameters is 'Crease Angle'.

enter image description here

If you set that high in Freestyle's general settings, and one of the discriminants for the Line Set is Edge Type > Crease, then Freestyle will pick up edges between faces where the internal angle between them is below the given threshold.

There is a 'Face Smoothness' checkbox for the Crease Angle. If it is unchecked, it will use the angle between face-normals in the underlying geometry. If checked, it will use the normals as interpolated by the smooth shading algorithm...

enter image description here

...above, with 'Face Smoothness' checked. The left cylinder is flat-shaded, and the right cylinder smooth-shaded, with Autosmooth set to split out its caps.

There is also a Crease Angle modifier available for attributes of the Line Style. So you can, for example, vary the color of the line, depending on the angle between the faces it separates:

enter image description here

You can always render out Freestyle as a separate pass, to composite with other components as you choose.

$\endgroup$
3
$\begingroup$

I've done some research and I found this nice free, non-photorealistic render engine. By using one of the sample materials, I got the following result and it's a realtime one!

enter image description here


In short:

  • Go to https://github.com/bnpr/Malt/releases, download BlenderMalt-[Your OS].zip and Shader-Examples.zip

  • Install BlenderMalt-[Your OS].zip as an addon

  • Unzip Shader-Examples.zip to wherever you like

  • Set render engine to Malt:

    enter image description here

  • Add a new material, select a sample material for "Shader Source". (advanced_line.mesh.glsl for this case)

    enter image description here

  • Then you can play with these material settings, they are quite self-explanatory

    enter image description here

$\endgroup$
3
  • $\begingroup$ Hi Liuuzaki. Thanks for this answer! Agree with @brockmann. if you could manage to flesh it out, I would appreciate the information, too. $\endgroup$
    – Robin Betts
    Commented Apr 1, 2021 at 10:28
  • $\begingroup$ Cheers for the update. +1. P.S. If you prefer your answer to mine, you can accept it instead! $\endgroup$
    – Robin Betts
    Commented Apr 1, 2021 at 12:09
  • $\begingroup$ Good one! Had no idea this renderer existed :) $\endgroup$ Commented Apr 1, 2021 at 20:00

You must log in to answer this question.

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