Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


ComputeShader

Compute Shader asset.
Read time 5 minutesLast updated 2 days ago

Definition

  • Type: Class
  • Namespace: UnityEngine
  • Assembly: UnityEngine.CoreModule
  • Inherits from: Object
public sealed class ComputeShader : Object

Remarks

Compute shaders are programs that run on the GPU outside of the normal rendering pipeline. They correspond to compute shader assets in the project (.compute files).
Compute shader support can be queried runtime using SystemInfo.supportsComputeShaders. See Compute Shaders overview for more info about platforms supporting compute shaders.
Additional Resources: ComputeBuffer class, Compute Shaders overview.

Properties

Property

Description

enabledKeywordsAn array containing the local shader keywords that are currently enabled for this compute shader.
keywordSpaceThe local keyword space of this compute shader.
shaderKeywordsAn array containing names of the local shader keywords that are currently enabled for this compute shader.

Methods

Method

Description

DisableKeywordDisables a local shader keyword for this compute shader.
DispatchExecute a compute shader.
DispatchIndirectExecute a compute shader.
EnableKeywordEnables a local shader keyword for this compute shader.
FindKernelFind ComputeShader kernel index.
GetKernelThreadGroupSizesGet kernel thread group sizes.
HasKernelChecks whether a shader contains a given kernel.
IsKeywordEnabledChecks whether a local shader keyword is enabled for this compute shader.
IsSupportedAllows you to check whether the current end user device supports the features required to run the specified compute shader kernel.
SetBoolSet a bool parameter.
SetBufferSets an input or output compute buffer.
SetConstantBufferSets a ComputeBuffer or GraphicsBuffer as a named constant buffer for the ComputeShader.
SetFloatSet a float parameter.
SetFloatsSet multiple consecutive float parameters at once.
SetIntSet an integer parameter.
SetIntsSet multiple consecutive integer parameters at once.
SetKeywordSets the state of a local shader keyword for this compute shader.
SetMatrixSet a Matrix parameter.
SetMatrixArraySet a Matrix array parameter.
SetRayTracingAccelerationStructureSets a RayTracingAccelerationStructure to be used for Inline Ray Tracing (Ray Queries).
SetTextureSet a texture parameter.
SetTextureFromGlobalSet a texture parameter from a global texture property.
SetVectorSet a vector parameter.
SetVectorArraySet a vector array parameter.

Inheritance

Inherited Members

Operators

Operator

Description

operator ==Compares two object references to see if they refer to the same object.
boolDetermines whether the object exists.
operator !=Compares if two objects refer to a different object.