# rayTracingMode

> The RayTracingMode that you can use to control how the geometry associated with an axis-aligned bounding box (AABB) ray tracing instance is updated.

## Definition

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

```csharp
public RayTracingMode rayTracingMode { readonly get; set; }
```

### Remarks

Use [RayTracingMode.DynamicGeometry](/engine/6000.7/script-reference/unityengine/experimental/rendering/raytracingmode/dynamicgeometry.md) if the data in [RayTracingAABBsInstanceConfig.aabbBuffer](/engine/6000.7/script-reference/unityengine/rendering/raytracingaabbsinstanceconfig/aabbbuffer.md) changes every frame. Unity then rebuilds the acceleration structure of the geometry referenced by this ray tracing instance configuration every time you build the [RayTracingAccelerationStructure](/engine/6000.7/script-reference/unityengine/rendering/raytracingaccelerationstructure.md).

Use [RayTracingMode.DynamicGeometryManualUpdate](/engine/6000.7/script-reference/unityengine/experimental/rendering/raytracingmode/dynamicgeometrymanualupdate.md) if the data changes only occasionally. Unity then rebuilds the acceleration structure only if you call [RayTracingAccelerationStructure.UpdateInstanceGeometry](/engine/6000.7/script-reference/unityengine/rendering/raytracingaccelerationstructure/updateinstancegeometry.md) before you build the [RayTracingAccelerationStructure](/engine/6000.7/script-reference/unityengine/rendering/raytracingaccelerationstructure.md).

The default value is [RayTracingMode.Static](/engine/6000.7/script-reference/unityengine/experimental/rendering/raytracingmode/static.md). Unity then builds the acceleration structure of the geometry once, and doesn't rebuild it when the data in [RayTracingAABBsInstanceConfig.aabbBuffer](/engine/6000.7/script-reference/unityengine/rendering/raytracingaabbsinstanceconfig/aabbbuffer.md) changes.

[RayTracingAccelerationStructure.AddInstance](/engine/6000.7/script-reference/unityengine/rendering/raytracingaccelerationstructure/addinstance.md) doesn't add the ray tracing instance and returns 0 if this value is [RayTracingMode.Off](/engine/6000.7/script-reference/unityengine/experimental/rendering/raytracingmode/off.md), or if this value isn't in the ray tracing mode mask you specified when you created the [RayTracingAccelerationStructure](/engine/6000.7/script-reference/unityengine/rendering/raytracingaccelerationstructure.md).
