Page MenuHome

Provide option to "preserve first edge" in mirror modifier
Needs ReviewPublic

Authored by David Swift (rococo) on Aug 2 2020, 7:02 PM.

Details

Summary

As described in T77575 and this devtalk post the orientation of "duplifaces" instances is confusing under mirroring.

Briefly, the Y axis is calculated to be perpendicular to the polygon normal and the first edge in the edge loop. Reversing the edge loop order (to flip the normal) results in the Y axis being perpendicular to the last edge.

This patch extends the mirror modifier with an option to preserve the first edge, which produces much more consistent results for quads and triangles used for face instancing.

Diff Detail

Repository
rB Blender
Branch
arcpatch-D8445_1 (branched from master)
Build Status
Buildable 9302
Build 9302: arc lint + arc unit

Event Timeline

David Swift (rococo) requested review of this revision.Aug 2 2020, 7:02 PM
David Swift (rococo) created this revision.

Updated using arcanist rather than manually submitting patch

Apologies, still learning how to use arc properly and accidentally pulled in a change to object_dupli.c. Let me see if I can undo that.

Remove accidentally submitted file

If the option leads to a more consistent results, why is not enabled by default and why is this even an option?

If the option leads to a more consistent results, why is not enabled by default and why is this even an option?

It produces more consistent results for instancing; unfortunately it also changes the way quads (and other ngons) get triangulated which would be undesirable in other situations.

If there's a way to control triangulation separately (is it precalculated?) I agree it would be better if this happened invisibly.