XRLightProbe: событие reflectionchange
Ограниченная доступность
Эта функция не относится к Baseline, так как она не работает в некоторых из наиболее широко используемых браузеров.
Экспериментально: Это экспериментальная технология
Перед использованием в рабочей среде внимательно проверьте таблицу совместимости браузеров Таблица совместимости браузеров.
Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах поддерживающих браузерах.
Событие WebXR reflectionchange срабатывает каждый раз, когда изменяется оценка куба отражения. Это происходит в ответ на перемещения пользователя в разных условиях освещения или на прямые изменения освещения. Это событие не может быть отменено.
Синтаксис
Используйте имя события в методах, таких как addEventListener(), или установите свойство обработчика событий.
addEventListener("reflectionchange", (event) => {});
onreflectionchange = (event) => {};
Тип события
Примеры
Использование события reflectionchange
Всякий раз, когда событие reflectionchange срабатывает на датчике света, вы можете получить обновлённый куб карты, вызвав XRWebGLBinding.getReflectionCubeMap(). Это менее затратно, чем получение информации об освещении с каждым XRFrame.
const glBinding = new XRWebGLBinding(xrSession, gl);
const lightProbe = await xrSession.requestLightProbe();
let glCubeMap = glBinding.getReflectionCubeMap(lightProbe);
lightProbe.addEventListener("reflectionchange", () => {
glCubeMap = glBinding.getReflectionCubeMap(lightProbe);
});
Свойство обработчика событий onreflectionchange
Событие reflectionchange также доступно с помощью свойства обработчика событий onreflectionchange.
lightProbe.onreflectionchange = (event) => {
glCubeMap = glBinding.getReflectionCubeMap(lightProbe);
};
Спецификации
| Спецификация |
|---|
| WebXR API по оценке освещения Уровень 1 # eventdef-xrlightprobe-reflectionchange |
| WebXR API по оценке освещения Уровень 1 # dom-xrlightprobe-onreflectionchange |
Совместимость браузеров
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
reflectionchange_event |
90 | 90 | Нет | 76 | Нет | 90 | Нет | 64 | Нет | 15.0 | Нет |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/XRLightProbe/reflectionchange_event