Vixen
dd8b0a81
csharp
public sealed class MeshMapBakeSettings

What a mesh-map bake is set to measure, and how finely.

Read the guide page for this →

Remarks

⚠ The project's, and the machine-preference argument loses — #701. A ray count is a cost paid on this workstation, which is the argument for EditorPreferences; what settles it the other way is where the output goes. These numbers decide the bytes of nine PNGs that land in Assets/ and are committed, so two artists baking the same model on one project have to agree about them the way they agree about an import setting. A resolution that was a field on the application was back at 1024 every session, which is the half nobody defended.

⚠ The measurements are stored as usage names and never as the flags integer. ViewportPreferences records why in one line: a bitset written as a number comes back meaning something else the moment somebody inserts a member into the enum, and it looks like the editor forgetting rather than like a defect. Maps is derived from Measure and is deliberately not itself a stored member.

⚠ SearchRadius is a fraction of the source's bounding-box diagonal and never a distance — BakeSettings's own remark, restated here because this is where a person types the number. A cage in metres is a claim about how big a model is, and the same character exported in centimetres finds nothing.

⚠ The panel asks in MeshMapUsage and this answers in the bake's flags, and that seam is here on purpose. They are two enums for the reason MeshMapUsage's own remarks give — one says what to spend rays on, the other names one file — and a panel that spoke the bake's flags would be a panel that has to know which two of the nine are not in them.

Fields and properties (9)

  • public int Resolution

    How big a map, on a side.

  • public int Gutter

    How many texels the gutter is dilated by, past the charts' edges.

  • public float SearchRadius

    How far a ray looks for the source, as a fraction of its bounding-box diagonal.

  • public int OcclusionSamples

    How many rays the hemisphere at a texel is sampled with.

  • public List<string> Measure

    Which of § D12's seven to measure, by Suffix.

  • public MeshMaps Maps

    Which of § D12's seven to measure. The normal and the displacement are not optional.

  • public bool Overwrite

    Whether a bake may replace a map somebody has painted over.

  • public static IReadOnlyList<MeshMapUsage> Optional

    The seven a person can turn off, in the order § D12's table lists them.

  • public int Count

    How many maps a bake with these settings would write.

Methods (3)

  • public bool Wants(MeshMapUsage usage)

    Whether a bake would measure one of the seven.

  • public void Want(MeshMapUsage usage, bool on)

    Turns one of the seven on or off.

  • public BakeSettings ToBake()

    These settings as the bake's own.

Used by (4)

  • EditorApplicationVixen.Editor.App
  • MeshMapBakePanelTestsVixen.Editor.App.Tests
  • MeshMapBakeViewVixen.Editor.App
  • TypeRegistrationVixen.Editor.App