Unity 6.3
0 онлайн 62 гостей 3 в системе
Вход

LightProbes.SetPositionsSelf

Declaration

public bool SetPositionsSelf(Vector3[] positions, bool checkForDuplicatePositions);

Параметры

Параметр Описание
checkForDuplicatePositions Проверка на наличие дублирующихся позиций световых зондов в ущерб производительности.
должностей Позиции для установки.

Возвращаемое значение

логическое true когда позиции были успешно установлены. В противном случае false.

Описание

Устанавливается положение зондов печеного света, хранящихся в этом объекте LightProbes.

При изменении позиций зондов печеного света с помощью этого метода, вы должны вызвать LightProbes.Tetrahedralize или LightProbes.TetrahedralizeAsync, чтобы полностью применить изменения.

Установка дублирующихся позиций зондов света приведет к неправильному поведению, например, к появлению зондов черного света.

Следующий скрипт добавочно загружает сцену, содержащую зонды печеного света, и перемещает зонды:

using System.Collections;
using UnityEngine;
using UnityEngine.SceneManagement;

public class MoveLightProbesExample : MonoBehaviour { void Start() { StartCoroutine(LoadSceneAndMoveLightProbes()); }

IEnumerator LoadSceneAndMoveLightProbes() { // Fully load a scene containing light probes additively. Scene additiveScene = SceneManager.LoadScene("AdditiveScene", new LoadSceneParameters(LoadSceneMode.Additive)); yield return null;

// Get the light probes for the scene. LightProbes lightProbes = LightProbes.GetInstantiatedLightProbesForScene(additiveScene);

// Move the light probes slightly. Vector3[] positions = lightProbes.GetPositionsSelf(); for (int i = 0; i < positions.Length; i++) { positions[i] += Vector3.one; } lightProbes.SetPositionsSelf(positions, true);

// Tetrahedralize to apply the changes to light probe positions. LightProbes.TetrahedralizeAsync(); } }

Дополнительные ресурсы: ,LightProbes.countSelf,.