Берите высоту этого элемента, "высоту" скролла, небольшие математические операции и готово.
Так как высота Вашего элемента всегда равна высоте окна браузера можно использовать
screen.availHeight
let element = document.querySelector("Ваш элемент");
document.onscroll = () => {
let percent = ( screen.availHeight - window.pageYOffset / 2 ) / screen.availHeight;
if(percent <= 0) element.style.opacity = 0;
else element.style.opacity = percent;
console.log(percent);
};
На счет производительности посмотрите
Debounce