<!--
{
  "availability" : [
    "iOS: 15.0.0 -",
    "iPadOS: 15.0.0 -",
    "macCatalyst: 15.0.0 -",
    "macOS: 12.0.0 -",
    "tvOS: 26.0.0 -",
    "visionOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "RealityKit",
  "identifier" : "/documentation/RealityKit/PhysicallyBasedMaterial/anisotropyLevel-swift.property",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "RealityKit"
    ],
    "preciseIdentifier" : "s:17RealityFoundation23PhysicallyBasedMaterialV15anisotropyLevelAC010AnisotropyG0Vvp"
  },
  "title" : "anisotropyLevel"
}
-->

# anisotropyLevel

The degree to which an entity reflects light to create stretched or
oblong highlights.

```
var anisotropyLevel: PhysicallyBasedMaterial.AnisotropyLevel { get set }
```

## Discussion

By default, PBR materials are isotropic; in other words, an entity that
uses [`PhysicallyBasedMaterial`](/documentation/RealityKit/PhysicallyBasedMaterial) reflects light uniformly in all
directions, mimicking the behavior of most real-world objects. Some
objects, including those with many small parallel striations such as
vinyl records, CDs, or straight hair, reflect light more in some
directions than others, resulting in stretched or oblong specular
highlights, as shown in the following figure.

![An illustration showing 11 metallic spheres in a horizontal row. The](images/com.apple.RealityKit/PhysicallyBasedMaterial-anisotropyLevel-swift-property-1@2x.png)

This property controls the amount of anisotropy. It works together with
[`anisotropyAngle`](/documentation/RealityKit/PhysicallyBasedMaterial/anisotropyAngle-swift.property), which
defines the angle of elongation for the specular highlights.

The following example specifies `anisotropyLevel` using single values
for the entire material:

```swift
material.anisotropyLevel = .AnisotropyLevel(floatLiteral: 0.5)
```

This example specifies `anisotropyLevel` using a UV-mapped image
texture.

```swift
if let anisoLevelResource = try? TextureResource.load(named:
"entity_aniso_level") {
    let anisoLevelMap = MaterialParameters.Texture(sheenResource)
    material.anisotropyLevel = .init(texture: anisoLevelMap)
}
```

---

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)