Add boundary checks for top edge key collection
This commit is contained in:
@@ -56,11 +56,19 @@ function collectTopEdgeKeys(options: {
|
|||||||
options.level.positions[positionOffset + varyingOffset]! /
|
options.level.positions[positionOffset + varyingOffset]! /
|
||||||
options.terrain.cellSize;
|
options.terrain.cellSize;
|
||||||
const roundedVaryingSample = Math.round(varyingSample);
|
const roundedVaryingSample = Math.round(varyingSample);
|
||||||
|
const maxVaryingSample =
|
||||||
|
options.axis === "x"
|
||||||
|
? options.terrain.sampleCountZ - 1
|
||||||
|
: options.terrain.sampleCountX - 1;
|
||||||
|
|
||||||
if (Math.abs(varyingSample - roundedVaryingSample) > epsilon) {
|
if (Math.abs(varyingSample - roundedVaryingSample) > epsilon) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (roundedVaryingSample === 0 || roundedVaryingSample === maxVaryingSample) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
const sampleX =
|
const sampleX =
|
||||||
options.axis === "x"
|
options.axis === "x"
|
||||||
? options.sampleCoordinate
|
? options.sampleCoordinate
|
||||||
|
|||||||
Reference in New Issue
Block a user