fix(satellites): fix back-facing detection with proper coordinate transform
This commit is contained in:
@@ -423,10 +423,11 @@ export function isSatelliteFrontFacing(index, camera) {
|
||||
const satPos = positions[index].current;
|
||||
if (!satPos) return true;
|
||||
|
||||
const worldSatPos = satPos.clone().applyMatrix4(earthObjRef.matrixWorld);
|
||||
const toCamera = new THREE.Vector3().subVectors(camera.position, earthObjRef.position).normalize();
|
||||
const toSat = new THREE.Vector3().subVectors(satPos, earthObjRef.position).normalize();
|
||||
const toSat = new THREE.Vector3().subVectors(worldSatPos, earthObjRef.position).normalize();
|
||||
|
||||
return toCamera.dot(toSat) < 0;
|
||||
return toCamera.dot(toSat) > 0;
|
||||
}
|
||||
|
||||
let earthObjRef = null;
|
||||
|
||||
Reference in New Issue
Block a user