Skip to content

Numerically stable normal computation #1352

@elalish

Description

@elalish

Is there a canonical way to compute the limit surface normal using your API? I've seen in one of your examples N = normalize( cross( dPu, dPv) );, but this is numerically unstable at rounded corners, since dPu and dPv become parallel. I would imagine there are other places it struggles as well, e.g. examples from #947. I was a little surprised your evaluate API doesn't return a surface normal, so I'm hoping you have some guidance for a reliable solution?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions