# Build

> Builds acceleration structures on the GPU. Allocates any GPU memory required for storing acceleration structure data.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine.Rendering](/engine/6000.6/script-reference/unityengine/rendering.md)
* **Assembly:** UnityEngine.CoreModule

## Build()

Builds acceleration structures on the GPU. Allocates any GPU memory required for storing acceleration structure data.

```csharp
public void Build()
```

### Remarks

To ensure that the acceleration structure is up to date, call this method before using the acceleration structure in ray tracing shaders (for example before a [RayTracingShader.Dispatch](/engine/6000.6/script-reference/unityengine/rendering/raytracingshader/dispatch.md) call) or when using inline ray tracing.

Additional Resources: [SystemInfo.supportsRayTracingShaders](/engine/6000.6/script-reference/unityengine/systeminfo/supportsraytracingshaders.md), [SystemInfo.supportsInlineRayTracing](/engine/6000.6/script-reference/unityengine/systeminfo/supportsinlineraytracing.md), [CommandBuffer.BuildRayTracingAccelerationStructure](/engine/6000.6/script-reference/unityengine/rendering/commandbuffer/buildraytracingaccelerationstructure.md).

## Build(Vector3)

Builds acceleration structures on the GPU. Allocates any GPU memory required for storing acceleration structure data.

```csharp
public void Build(Vector3 relativeOrigin)
```

### Parameters

**** (\[Vector3]\(/engine/6000.6/script-reference/unityengine/vector3)):&#x20;

### Remarks

To ensure that the acceleration structure is up to date, call this method before using the acceleration structure in ray tracing shaders (for example before a [RayTracingShader.Dispatch](/engine/6000.6/script-reference/unityengine/rendering/raytracingshader/dispatch.md) call) or when using inline ray tracing.

Additional Resources: [SystemInfo.supportsRayTracingShaders](/engine/6000.6/script-reference/unityengine/systeminfo/supportsraytracingshaders.md), [SystemInfo.supportsInlineRayTracing](/engine/6000.6/script-reference/unityengine/systeminfo/supportsinlineraytracing.md), [CommandBuffer.BuildRayTracingAccelerationStructure](/engine/6000.6/script-reference/unityengine/rendering/commandbuffer/buildraytracingaccelerationstructure.md).

## Build(BuildSettings)

Builds acceleration structures on the GPU. Allocates any GPU memory required for storing acceleration structure data.

```csharp
public void Build(RayTracingAccelerationStructure.BuildSettings buildSettings)
```

### Parameters

**** (\[BuildSettings]\(/engine/6000.6/script-reference/unityengine/rendering/raytracingaccelerationstructure/buildsettings)):&#x20;

### Remarks

To ensure that the acceleration structure is up to date, call this method before using the acceleration structure in ray tracing shaders (for example before a [RayTracingShader.Dispatch](/engine/6000.6/script-reference/unityengine/rendering/raytracingshader/dispatch.md) call) or when using inline ray tracing.

Additional Resources: [SystemInfo.supportsRayTracingShaders](/engine/6000.6/script-reference/unityengine/systeminfo/supportsraytracingshaders.md), [SystemInfo.supportsInlineRayTracing](/engine/6000.6/script-reference/unityengine/systeminfo/supportsinlineraytracing.md), [CommandBuffer.BuildRayTracingAccelerationStructure](/engine/6000.6/script-reference/unityengine/rendering/commandbuffer/buildraytracingaccelerationstructure.md).
