auto-git:
[change] src/document/migrate-scene-document.ts
This commit is contained in:
@@ -1071,30 +1071,66 @@ function readBoxBrushVolumeSettings(
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
const defaults = createDefaultBoxBrushFogSettings();
|
if (mode === "fog") {
|
||||||
|
const defaults = createDefaultBoxBrushFogSettings();
|
||||||
|
|
||||||
if (value.fog !== undefined && !isRecord(value.fog)) {
|
if (value.fog !== undefined && !isRecord(value.fog)) {
|
||||||
throw new Error(`${label}.fog must be an object.`);
|
throw new Error(`${label}.fog must be an object.`);
|
||||||
|
}
|
||||||
|
|
||||||
|
const fog = (value.fog ?? {}) as Record<string, unknown>;
|
||||||
|
|
||||||
|
return {
|
||||||
|
mode: "fog",
|
||||||
|
fog: {
|
||||||
|
colorHex:
|
||||||
|
fog.colorHex === undefined
|
||||||
|
? defaults.colorHex
|
||||||
|
: expectHexColor(fog.colorHex, `${label}.fog.colorHex`),
|
||||||
|
density: readOptionalNonNegativeFiniteNumber(
|
||||||
|
fog.density,
|
||||||
|
`${label}.fog.density`,
|
||||||
|
defaults.density
|
||||||
|
),
|
||||||
|
padding: readOptionalNonNegativeFiniteNumber(
|
||||||
|
fog.padding,
|
||||||
|
`${label}.fog.padding`,
|
||||||
|
defaults.padding
|
||||||
|
)
|
||||||
|
}
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
const fog = (value.fog ?? {}) as Record<string, unknown>;
|
const defaults = createDefaultBoxBrushLightSettings();
|
||||||
|
|
||||||
|
if (value.light !== undefined && !isRecord(value.light)) {
|
||||||
|
throw new Error(`${label}.light must be an object.`);
|
||||||
|
}
|
||||||
|
|
||||||
|
const light = (value.light ?? {}) as Record<string, unknown>;
|
||||||
|
|
||||||
return {
|
return {
|
||||||
mode: "fog",
|
mode: "light",
|
||||||
fog: {
|
light: {
|
||||||
colorHex:
|
colorHex:
|
||||||
fog.colorHex === undefined
|
light.colorHex === undefined
|
||||||
? defaults.colorHex
|
? defaults.colorHex
|
||||||
: expectHexColor(fog.colorHex, `${label}.fog.colorHex`),
|
: expectHexColor(light.colorHex, `${label}.light.colorHex`),
|
||||||
density: readOptionalNonNegativeFiniteNumber(
|
intensity: readOptionalNonNegativeFiniteNumber(
|
||||||
fog.density,
|
light.intensity,
|
||||||
`${label}.fog.density`,
|
`${label}.light.intensity`,
|
||||||
defaults.density
|
defaults.intensity
|
||||||
),
|
),
|
||||||
padding: readOptionalNonNegativeFiniteNumber(
|
padding: readOptionalNonNegativeFiniteNumber(
|
||||||
fog.padding,
|
light.padding,
|
||||||
`${label}.fog.padding`,
|
`${label}.light.padding`,
|
||||||
defaults.padding
|
defaults.padding
|
||||||
|
),
|
||||||
|
falloff: readOptionalAllowedValue(
|
||||||
|
light.falloff,
|
||||||
|
`${label}.light.falloff`,
|
||||||
|
defaults.falloff,
|
||||||
|
isBoxBrushLightFalloffMode
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user