<!--
{
  "availability" : [
    "iOS: 27.0.0 -",
    "iPadOS: 27.0.0 -",
    "macCatalyst: 27.0.0 -",
    "macOS: 27.0.0 -",
    "tvOS: 27.0.0 -",
    "visionOS: 27.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "RealityKit",
  "identifier" : "/documentation/RealityKit/Reverb/simulated(mesh:materials:)",
  "metadataVersion" : "0.1.0",
  "role" : "Type Method",
  "symbol" : {
    "kind" : "Type Method",
    "modules" : [
      "RealityKit"
    ],
    "preciseIdentifier" : "s:17RealityFoundation6ReverbV9simulated4mesh9materialsAcA0C12MeshResourceC_SayAA5AudioO8MaterialVGtFZ"
  },
  "title" : "simulated(mesh:materials:)"
}
-->

# simulated(mesh:materials:)

A reverb that is simulated from a reverb mesh and materials.

```
static func simulated(mesh: ReverbMeshResource, materials: [Audio.Material] = [.default]) -> Reverb
```

## Parameters

`mesh`

The reverb mesh resource that defines the acoustic geometry of the space.

`materials`

An array of audio materials that define how each surface absorbs and
scatters sound. Each element corresponds to a material index in the mesh. Defaults to
[`default`](/documentation/RealityKit/Audio/Material/default).

## Return Value

A reverb configured for runtime acoustic simulation.

## Discussion

Use this factory method to create a reverb that ray-traces acoustic geometry at runtime,
simulating how sound reflects through the space defined by the mesh:

```swift
entity.components.set(
    ReverbComponent(reverb: .simulated(mesh: roomMesh, materials: [.concrete, .carpet, .glass]))
)
```

As spatial audio sources move through the space, the reverb updates dynamically —
reflections tighten near walls and open up in larger areas.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)