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

MaterialPropertyBlock.CopySHCoefficientArraysFrom

Declaration

public void CopySHCoefficientArraysFrom(List<SphericalHarmonicsL2> lightProbes);
public void CopySHCoefficientArraysFrom(SphericalHarmonicsL2[] lightProbes);

Параметры

Параметр Описание
lightProbes Массив значений SH для копирования.

Описание

Эта функция преобразует и копирует весь исходный массив в 7 Vector4 именуемые массивы свойств unity_SHAr, unity_SHAg, unity_SHAb, unity_SHBr, unity_SHBg, unity_SHBb и unity_SHC для использования с instanced световой зонд рендеринг.

Если свойства массива не существуют на MaterialPropertyBlock, они будут созданы с длиной исходного массива.
Вызов LightProbes.CalculateInterpolatedLightAndOcclusionProbes для вычисления значений SH на заданных позициях в мировом пространстве.
ArgumentNullException возвращается, если lightProbes является null.
Обратите внимание, что все массивы MaterialPropertyBlock могут иметь максимум 1023 элемента. Выводятся предупреждения, и избыточные элементы массива игнорируются, если исходный массив превышает диапазон.

Дополнительные ресурсы: CopyProbeOcclusionArrayFrom, Graphics.RenderMeshInstanced, CommandBuffer.DrawMeshInstanced.

Declaration

public void CopySHCoefficientArraysFrom(SphericalHarmonicsL2[] lightProbes, int sourceStart, int destStart, int count);
public void CopySHCoefficientArraysFrom(List<SphericalHarmonicsL2> lightProbes, int sourceStart, int destStart, int count);

Параметры

Параметр Описание
lightProbes Массив значений SH для копирования.
sourceStart Индекс первого элемента в исходном массиве, из которого будет копироваться.
destStart Индекс первого элемента в массиве назначения MaterialPropertyBlock, в который будет копироваться.
Количество Количество элементов для копирования.

Описание

Эта функция преобразует и копирует исходный массив в 7 Vector4 именуемые массивы свойств unity_SHAr, unity_SHAg, unity_SHAb, unity_SHBr, unity_SHBg, unity_SHBb и unity_SHC с указанным диапазоном источника и назначения для использования с экземплярами световой зонд рендеринг.

Если свойства массива не существуют на MaterialPropertyBlock, они будут созданы с длиной указанного диапазона.
Вызов LightProbes.CalculateInterpolatedLightAndOcclusionProbes для расчета SH значения на данных мировых космических позициях.
ArgumentNullException бросается, если occlusionProbes является null.
ArgumentOutOfRangeException возвращается, если диапазон источника или назначения является неверным.
Следует отметить, что все MaterialPropertyBlock массивы могут иметь максимум 1023 элемента. Если исходный массив превышает диапазон, печатаются предупреждения, а избыточные элементы массива игнорируются.

Дополнительные ресурсы: CopyProbeOcclusionArrayFrom, Graphics.RenderMeshInstanced, CommandBuffer.DrawMeshInstanced.