Я не программист, базовые = нулевые понимания js и синтаксиса react. С помощью библиотеки react three залепил свою модельку в браузер, разобрался как настроить материал и добавил эффектов, однако сейчас решил залезть туда, где все за гранью моего интеллекта и понимания , а то есть - заняться оптимизацией.
Нашел
готовое решение по адаптивной регрессии рендера.
Как я понял и что сделал:
1. Объявил функцию
function AdaptivePixelRatio() {
const current = useThree(state => state.performance.current)
const setPixelRatio = useThree(state => state.setPixelRatio)
useEffect(() => {
setPixelRatio(current * 2)
document.body.style.imageRendering = current === 1 ? 'auto' : 'pixelated'
}, [current])
return null
}
2. У компонента (моей модельки)
const regress = useThree((state) => state.performance.regress)
useEffect(() => {
ref.current?.addEventListener('change', regress)
3. А в сцене вызываю
<AdaptivePixelRatio />
Однако на это все я получаю ошибку
setPixelRatio is not a function
---
Помогите, пожалуйста, исправить это.