Without using normal map, how do I make something look flatter in arbitrary direction?

model: Godette by Pablo Dobarro
Figure 1

Let’s say I want to smoosh character face to make lighting appear flatter while keeping the geometry. What kind of shader node setup can do this in a simple non-destructive way?

  • g6d3np81@kbin.socialOP
    link
    fedilink
    arrow-up
    3
    ·
    1 year ago

    Yup, probably watched the same video. Those are much more focused on flat shading… like dead flat.

    There is Abnormal addon but I find doing it with mesh data (beyond vertex weight / vertex color) is kinda cumbersome.

    After some fooling around, I find using normal form texture coord node is all I need.

    1. Take normal from texture coordinate node
    2. Rotate X to adjust up/down facing
    3. Map range Y axis to use as weight (or weight paint)
    4. Subtract result from true normal
    5. Transform vector from object to world (normalize first, maybe?)

    Not great but good enough, most importantly not ugly. Quite easy and fast to apply to different model too.
    Barbara from Genshin - Mihoyo
    Node