auto-git:

[change] tests/geometry/terrain-brush.test.ts
This commit is contained in:
2026-05-01 17:44:21 +02:00
parent 5cd88e181f
commit 3fca98baae

View File

@@ -8,6 +8,7 @@ import {
import {
applyTerrainBrushStampInPlace,
applyTerrainBrushStamp,
createTerrainBrushPatchFromTerrains,
getTerrainBrushWeight,
sampleTerrainHeightAtWorldPosition
} from "../../src/geometry/terrain-brush";
@@ -148,6 +149,42 @@ describe("terrain brush geometry", () => {
expect(terrain.heights[2 + 2 * 5]).toBeCloseTo(0.5);
});
it("creates sparse terrain brush patches from dirty sample bounds", () => {
const before = createTerrain({
id: "terrain-sparse-patch",
position: { x: 0, y: 0, z: 0 },
sampleCountX: 4,
sampleCountZ: 4,
cellSize: 1,
heights: new Array(16).fill(0)
});
const after = createTerrain(before);
after.heights[5] = 2;
after.heights[15] = 9;
after.paintWeights[15] = 0.4;
const patch = createTerrainBrushPatchFromTerrains({
before,
after,
dirtyBounds: {
minSampleX: 1,
maxSampleX: 1,
minSampleZ: 1,
maxSampleZ: 1
}
});
expect(patch.heightSamples).toEqual([
{
index: 5,
before: 0,
after: 2
}
]);
expect(patch.paintWeights).toEqual([]);
});
it("paints terrain layer weights toward the active layer while preserving a normalized blend", () => {
const terrain = createTerrain({
id: "terrain-paint",