Ячейки генерируются с использованием трех экземпляров сетки,
Код: Выделить всё
const cellWidth = width / nCols;
const apparentCellWidth = cellWidth*1.01;
const cellHeight = height / nRows;
const cellGeometry = new THREE.PlaneGeometry(apparentCellWidth, cellHeight);
const redMaterial = new THREE.MeshBasicMaterial({ color: 0xff0000 });
const greyMaterial = new THREE.MeshBasicMaterial({ color: 0xc7c8c9 });
const whiteMaterial = new THREE.MeshBasicMaterial({ color: 0xffffff });
let redMesh = new THREE.InstancedMesh(cellGeometry, redMaterial, redCount);
let greyMesh = new THREE.InstancedMesh(cellGeometry, greyMaterial, greyCount);
let whiteMesh = new THREE.InstancedMesh(cellGeometry, whiteMaterial, whiteCount);
const heatmapGroup = new THREE.Group();
heatmapGroup.add(redMesh);
heatmapGroup.add(greyMesh);
heatmapGroup.add(whiteMesh);
scene.add(heatmapGroup);
Я уже пробовал следующее, но безрезультатно< /p>
Код: Выделить всё
redMesh.renderOrder = 999;
redMesh.material.depthTest = false;
redMesh.material.depthWrite = false;
redMesh.onBeforeRender = function (renderer) { renderer.clearDepth(); };
Подробнее здесь: https://stackoverflow.com/questions/793 ... n-three-js