Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

Объявление

public void SetTextureFromGlobal(int kernelIndex, string name, string globalTextureName);

public void SetTextureFromGlobal(int kernelIndex, int nameID, int globalTextureNameID);

Параметры

kernelIndex Для какого ядра ставится текстура. См. раздел FindKernel.
nameID Идентификатор имени свойства. Чтобы получить его, используйте Shader.PropertyToID.
name Имя переменной буфера в коде шейдера.
globalTextureName Глобальное свойство текстуры для назначения шейдеру.
globalTextureNameID Идентификатор имени свойства. Чтобы получить его, используйте Shader.PropertyToID.

Описание

Установите параметр текстуры из глобального свойства текстуры.

Эта функция может либо установить обычную текстуру, которая считывается в вычислить шейдер или выходную текстуру, которая записывается шейдером. Для выходной текстуры это должна быть RenderTexture со случайной записью. флаг включен, см. RenderTexture.enableRandomWrite.

Буферы и текстуры устанавливаются для каждого ядра. Используйте FindKernel, чтобы найти индекс ядра по имени функции.

Смотрите так же: FindKernel, SetBuffer, SetTexture, Shader.SetGlobalTexture.

// Assign the CameraMotionVectorsTexture global texture to a compute texture using System; using UnityEngine; public class SampleBehaviour : MonoBehaviour { public int renderTargetWidth; public int renderTargetHeight; ComputeShader myComputeShader; void ComputeUsingMotionVector() { int kKernelIndex = 0; myComputeShader.SetTextureFromGlobal(kKernelIndex, "computeTexture", "_CameraMotionVectorsTexture"); myComputeShader.Dispatch(kKernelIndex, renderTargetWidth, renderTargetHeight, 1); } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3