fix: bright colored court coverage, all white court lines

- Camera FOV coverage fills court with visible color (opacity 0.4)
- All court lines now white (no more red/grey)
- Lines raised above coverage so they stay visible

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Ruslan Bakiev
2026-03-07 11:37:45 +07:00
parent fedf46670a
commit d34c25a6d7

View File

@@ -730,7 +730,7 @@ function addStereocameras(scene) {
fanOrigin, points[i], points[i + 1] fanOrigin, points[i], points[i + 1]
]); ]);
scene.add(new THREE.Mesh(triGeo, new THREE.MeshBasicMaterial({ scene.add(new THREE.Mesh(triGeo, new THREE.MeshBasicMaterial({
color: color, transparent: true, opacity: 0.12, side: THREE.DoubleSide color: color, transparent: true, opacity: 0.4, side: THREE.DoubleSide
}))); })));
} }
@@ -759,12 +759,12 @@ function addStereocameras(scene) {
function drawCourtLines(scene) { function drawCourtLines(scene) {
var mat = new THREE.LineBasicMaterial({ color: 0xffffff }); var mat = new THREE.LineBasicMaterial({ color: 0xffffff });
function addLine(x1, y1, x2, y2, material) { function addLine(x1, y1, x2, y2) {
var geo = new THREE.BufferGeometry().setFromPoints([ var geo = new THREE.BufferGeometry().setFromPoints([
new THREE.Vector3(x1, y1, 0.01), new THREE.Vector3(x1, y1, 0.05),
new THREE.Vector3(x2, y2, 0.01) new THREE.Vector3(x2, y2, 0.05)
]); ]);
scene.add(new THREE.Line(geo, material || mat)); scene.add(new THREE.Line(geo, mat));
} }
// Outer boundaries // Outer boundaries
@@ -774,17 +774,15 @@ function drawCourtLines(scene) {
addLine(0, 6.1, 0, 0); addLine(0, 6.1, 0, 0);
// Net / center line // Net / center line
addLine(6.7, 0, 6.7, 6.1, new THREE.LineBasicMaterial({ color: 0xcccccc })); addLine(6.7, 0, 6.7, 6.1);
// Kitchen lines (NVZ) // Kitchen lines (NVZ)
var kitchenMat = new THREE.LineBasicMaterial({ color: 0xff6666 }); addLine(6.7 - 2.13, 0, 6.7 - 2.13, 6.1);
addLine(6.7 - 2.13, 0, 6.7 - 2.13, 6.1, kitchenMat); addLine(6.7 + 2.13, 0, 6.7 + 2.13, 6.1);
addLine(6.7 + 2.13, 0, 6.7 + 2.13, 6.1, kitchenMat);
// Center service lines // Center service lines
var svcMat = new THREE.LineBasicMaterial({ color: 0x888888 }); addLine(0, 3.05, 6.7 - 2.13, 3.05);
addLine(0, 3.05, 6.7 - 2.13, 3.05, svcMat); addLine(6.7 + 2.13, 3.05, 13.4, 3.05);
addLine(6.7 + 2.13, 3.05, 13.4, 3.05, svcMat);
} }
// ===================== Trajectory data polling ===================== // ===================== Trajectory data polling =====================