Why are the shadows on my mesh rendering straight lines?

Hi, I’m relatively new to Blender and I would like to know why the shadows on my Buster Sword mesh here aren’t smoothly moving past the edges and are instead creating these unnatural straight edges when they reach the next set of vertices.

I tried using Shade Auto Smooth, and while that made the edges marginally less pronounced, it still isn’t ideal.

Here’s how the shadows look:

The shadows only have these straight lines when they approach the “inset” edges (I don’t really think calling them inset is the right word since they weren’t made with the “Inset Faces” button but I’m not sure how to describe it).

Render engine is Eevee btw, should’ve mentioned that

Welcome!

Do you mean this part where there is a sudden change?

If yes, that’s to be expected with the shape of the object and the material you are using.

Your shader uses a color ramp to turn the light gradient from the point light into a hard circle. However, that light gradient will have a different brightness on the slanted part of the blade, as it’s oriented more towards the light than the flat surface on top. There are no shadows there, that’s just the brightness of the light that’s varying because of the surface’s angle.

Are you planning on using this material and this lighting? That seems like a peculiar setup to use. What are you trying to get as a result?

Yes, I am referring to the parts you outlined, and what I’m trying to get out of this material is something that matches the aesthetic of Mega Man Legends, so I tried to set up cel-shading as that seemed to match the style of those games the best. That got me to where I am now.

As for the lighting, I just positioned it there for the time being to get an idea of how the cel-shading would look.

Hi, have you tried to use deferent interpolation in the color ramp?

No, how do I do that?

Here:

Deferent isn’t one of the options that pops up, it’s just Ease, Cardinal, Linear, B-Spline, and Constant

It looks like shading issue caused by mesh topology. I’d check the normals first then try adding Weighted Normal modifier or a few supporting edge loops around that inset area.

Just for testing and elimination: What does the shadow look like in Cycles?

Restating @etn249 for emphasis:

If yes, that’s to be expected with the shape of the object and the material you are using.

Your shader uses a color ramp to turn the light gradient from the point light into a hard circle. However, that light gradient will have a different brightness on the slanted part of the blade, as it’s oriented more towards the light than the flat surface on top. There are no shadows there, that’s just the brightness of the light that’s varying because of the surface’s angle.

There is nothing wrong here- OP modelled it to have this behavior and now it does

Alright, so adding the Weighted Normal modifier did solve the shadow problem (enough to my liking anyway), but now there is a bit at the top of the sword that is now rendering as if it is always under light.

Yes, because it is. You have a light directly above a surface that has an angled part at the top (angled on the depth plane, I’m not talking about the shape). This is how light works. It seems like you would get better results by texturing painting what you want

Ah, yeah, that makes sense to me now, I rotated it once and it moved out of the light, the light’s just an effect of how it’s positioned. At least that’s how I perceive it.

Well.. let’s look at this with science… here we see our main actor “Default” Cube depicted as “Buster Sword” :

and because the sides of the sword has not only one planar plane.. we see different reflections of any light source on the left and the right side. So now when we restrict the light to only full light or shadow.. then we will see different “images” on both sides.

And now some little applause for the one seen in different disguises for a long time now, the one and only well know actor “Deafult” Cube :clap: :clap: