Update terrain brush state to support foliage layers and masks
This commit is contained in:
@@ -3310,13 +3310,25 @@ export function App({ store, draftStorage = null, initialStatusMessage }: AppPro
|
|||||||
strength: terrainBrushSettings.strength,
|
strength: terrainBrushSettings.strength,
|
||||||
falloff: terrainBrushSettings.falloff
|
falloff: terrainBrushSettings.falloff
|
||||||
}
|
}
|
||||||
: {
|
: armedTerrainBrushTool === "foliagePaint" ||
|
||||||
terrainId: selectedTerrain.id,
|
armedTerrainBrushTool === "foliageErase"
|
||||||
tool: armedTerrainBrushTool,
|
? activeFoliageLayer === null
|
||||||
radius: terrainBrushSettings.radius,
|
? null
|
||||||
strength: terrainBrushSettings.strength,
|
: {
|
||||||
falloff: terrainBrushSettings.falloff
|
terrainId: selectedTerrain.id,
|
||||||
};
|
tool: armedTerrainBrushTool,
|
||||||
|
foliageLayerId: activeFoliageLayer.id,
|
||||||
|
radius: terrainBrushSettings.radius,
|
||||||
|
strength: terrainBrushSettings.strength,
|
||||||
|
falloff: terrainBrushSettings.falloff
|
||||||
|
}
|
||||||
|
: {
|
||||||
|
terrainId: selectedTerrain.id,
|
||||||
|
tool: armedTerrainBrushTool,
|
||||||
|
radius: terrainBrushSettings.radius,
|
||||||
|
strength: terrainBrushSettings.strength,
|
||||||
|
falloff: terrainBrushSettings.falloff
|
||||||
|
};
|
||||||
const resolvedTerrainPaintLayerIndex = clampTerrainPaintLayerIndex(
|
const resolvedTerrainPaintLayerIndex = clampTerrainPaintLayerIndex(
|
||||||
activeTerrainPaintLayerIndex
|
activeTerrainPaintLayerIndex
|
||||||
);
|
);
|
||||||
@@ -3329,6 +3341,15 @@ export function App({ store, draftStorage = null, initialStatusMessage }: AppPro
|
|||||||
: (editorState.document.materials[
|
: (editorState.document.materials[
|
||||||
selectedTerrainActivePaintLayer.materialId
|
selectedTerrainActivePaintLayer.materialId
|
||||||
] ?? null);
|
] ?? null);
|
||||||
|
const selectedTerrainActiveFoliageMask =
|
||||||
|
selectedTerrain === null || activeFoliageLayer === null
|
||||||
|
? null
|
||||||
|
: (selectedTerrain.foliageMasks[activeFoliageLayer.id] ?? null);
|
||||||
|
const selectedTerrainActiveFoliageMaskPaintedSampleCount =
|
||||||
|
selectedTerrainActiveFoliageMask === null
|
||||||
|
? 0
|
||||||
|
: selectedTerrainActiveFoliageMask.values.filter((value) => value > 0)
|
||||||
|
.length;
|
||||||
const [ambientLightIntensityDraft, setAmbientLightIntensityDraft] = useState(
|
const [ambientLightIntensityDraft, setAmbientLightIntensityDraft] = useState(
|
||||||
String(editorState.document.world.ambientLight.intensity)
|
String(editorState.document.world.ambientLight.intensity)
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user