Описание
Событие, которое вызывается, когда количество загруженных в данный момент световых зондов изменяется из-за загрузки или выгрузки аддитивной сцены.
Для игровых объектов, визуализируемых с использованием данных световых зондов, Unity использует четырехгранное пространственное сопоставление, чтобы вычислить, какие световые зонды использовать при рендеринге каждого игрового объекта на основе положения объекта.
При добавлении новых данных световых датчиков или удалении существующих данных световых датчиков необходимо пересчитать четырехгранное пространственное отображение между положениями световых датчиков, чтобы учесть новые загруженные световые датчики или удалены зонды, которые принадлежали к выгруженной сцене.
Это событие needsRetetrahedralization
запускается, когда вы дополнительно загружаете или выгружаете сцены, содержащие данные светового зонда, что позволяет вам решить, когда вы должны сделать вызов LightProbes.Tetrahedralize или LightProbes.TetrahedralizeAsync для рететраэдрализации данных светового зонда.
Поскольку данные светового зонда считаются внешними данными, на которые ссылается сцена, но которые не являются частью самой сцены, они загружаются асинхронно и иногда могут загружаться после завершения операции загрузки/выгрузки сцены.
Поэтому, если вы загружаете или выгружаете сцены, которые содержат данные светового зонда, вы должны использовать это событие, чтобы определить, когда выполнять рететраэдризацию, а не полагаться на SceneManager.sceneLoaded, так как при вызове события sceneLoaded новые данные светового зонда могут быть еще неактуальными.
Кроме того, если вы загружаете несколько сцен, каждая из которых содержит дополнительные данные светового зонда, вам следует дождаться соответствующего количества событий needsRetetrahedralization
перед рететраэдрализацией данных светового зонда, потому что пересчет его после каждого события был бы трудоемким и ненужным. Например, если вы должны аддитивно загрузить пять сцен, каждая из которых содержит данные светового зонда, вам следует дождаться всех пяти событий needRetetrahedralization, прежде чем вызывать LightProbes.Tetrahedralize или LightProbes.TetrahedralizeAsync.