---
title: PhysicallyBasedMaterial
framework: realitykit
role: symbol
role_heading: Structure
path: realitykit/physicallybasedmaterial
---

# PhysicallyBasedMaterial

A material that simulates the appearance of real-world objects.

## Declaration

```swift
struct PhysicallyBasedMaterial
```

## Mentioned in

Applying realistic material and lighting effects to entities Modifying RealityKit rendering using custom materials

## Overview

Overview In RealityKit, a material is an object that defines the surface properties of a rendered 3D object. A Physically Based Rendering (PBR) material is a material that closely approximates the way light reflects off of real-world objects. Use PhysicallyBasedMaterial to create highly realistic-looking objects for your AR scenes. Many of the properties for PhysicallyBasedMaterial provide the option to use more than one type of data to specify that property. You can set an object’s baseColor using a specific color for the entire material, or you can use an image that UV-maps on to the entity. PhysicallyBasedMaterial includes all material properties supported by USDZ. On iOS 15 and later, RealityKit automatically uses PhysicallyBasedMaterial when importing an entity from a USDZ file. For more information on using PhysicallyBasedMaterial, see Applying realistic material and lighting effects to entities.

## Topics

### Creating a physically based material

- [init()](realitykit/physicallybasedmaterial/init().md)
- [init(program:)](realitykit/physicallybasedmaterial/init(program:).md)

### Setting the core properties

- [baseColor](realitykit/physicallybasedmaterial/basecolor-swift.property.md)
- [roughness](realitykit/physicallybasedmaterial/roughness-swift.property.md)
- [metallic](realitykit/physicallybasedmaterial/metallic-swift.property.md)
- [normal](realitykit/physicallybasedmaterial/normal-swift.property.md)
- [ambientOcclusion](realitykit/physicallybasedmaterial/ambientocclusion-swift.property.md)
- [specular](realitykit/physicallybasedmaterial/specular-swift.property.md)
- [clearcoat](realitykit/physicallybasedmaterial/clearcoat-swift.property.md)
- [clearcoatRoughness](realitykit/physicallybasedmaterial/clearcoatroughness-swift.property.md)
- [clearcoatNormal](realitykit/physicallybasedmaterial/clearcoatnormal-swift.property.md)

### Configuring transparency and highlights

- [blending](realitykit/physicallybasedmaterial/blending-swift.property.md)
- [sheen](realitykit/physicallybasedmaterial/sheen.md)

### Adding anisotropy

- [anisotropyLevel](realitykit/physicallybasedmaterial/anisotropylevel-swift.property.md)
- [anisotropyAngle](realitykit/physicallybasedmaterial/anisotropyangle-swift.property.md)

### Adding light emission

- [emissiveIntensity](realitykit/physicallybasedmaterial/emissiveintensity.md)
- [emissiveColor](realitykit/physicallybasedmaterial/emissivecolor-swift.property.md)

### Modifying texture coordinates

- [textureCoordinateTransform](realitykit/physicallybasedmaterial/texturecoordinatetransform-swift.property.md)
- [secondaryTextureCoordinateTransform](realitykit/physicallybasedmaterial/secondarytexturecoordinatetransform.md)

### Culling unnecessary polygons

- [faceCulling](realitykit/physicallybasedmaterial/faceculling-swift.property.md)

### Setting depth testing properties

- [readsDepth](realitykit/physicallybasedmaterial/readsdepth.md)
- [writesDepth](realitykit/physicallybasedmaterial/writesdepth.md)

### Setting shader properties

- [program](realitykit/physicallybasedmaterial/program-swift.property.md)

### Configuring subsurface scattering

- [subsurfaceColor](realitykit/physicallybasedmaterial/subsurfacecolor-swift.property.md)
- [PhysicallyBasedMaterial.SubsurfaceColor](realitykit/physicallybasedmaterial/subsurfacecolor-swift.struct.md)
- [subsurfaceWeight](realitykit/physicallybasedmaterial/subsurfaceweight-swift.property.md)
- [PhysicallyBasedMaterial.SubsurfaceWeight](realitykit/physicallybasedmaterial/subsurfaceweight-swift.struct.md)
- [subsurfaceRadius](realitykit/physicallybasedmaterial/subsurfaceradius-swift.property.md)
- [PhysicallyBasedMaterial.SubsurfaceRadius](realitykit/physicallybasedmaterial/subsurfaceradius-swift.struct.md)
- [subsurfaceRadiusScale](realitykit/physicallybasedmaterial/subsurfaceradiusscale-swift.property.md)
- [PhysicallyBasedMaterial.SubsurfaceRadiusScale](realitykit/physicallybasedmaterial/subsurfaceradiusscale-swift.struct.md)
- [subsurfaceScatterAnisotropy](realitykit/physicallybasedmaterial/subsurfacescatteranisotropy-swift.property.md)
- [PhysicallyBasedMaterial.SubsurfaceScatterAnisotropy](realitykit/physicallybasedmaterial/subsurfacescatteranisotropy-swift.struct.md)

### Configuring occlusion shading

- [bentNormal](realitykit/physicallybasedmaterial/bentnormal-swift.property.md)
- [PhysicallyBasedMaterial.BentNormal](realitykit/physicallybasedmaterial/bentnormal-swift.struct.md)
- [enableSpecularOcclusion](realitykit/physicallybasedmaterial/enablespecularocclusion.md)

### Classes

- [PhysicallyBasedMaterial.Program](realitykit/physicallybasedmaterial/program-swift.class.md)

### Structures

- [PhysicallyBasedMaterial.AmbientOcclusion](realitykit/physicallybasedmaterial/ambientocclusion-swift.struct.md)
- [PhysicallyBasedMaterial.AnisotropyAngle](realitykit/physicallybasedmaterial/anisotropyangle-swift.struct.md)
- [PhysicallyBasedMaterial.AnisotropyLevel](realitykit/physicallybasedmaterial/anisotropylevel-swift.struct.md)
- [PhysicallyBasedMaterial.BaseColor](realitykit/physicallybasedmaterial/basecolor-swift.struct.md)
- [PhysicallyBasedMaterial.Clearcoat](realitykit/physicallybasedmaterial/clearcoat-swift.struct.md)
- [PhysicallyBasedMaterial.ClearcoatNormal](realitykit/physicallybasedmaterial/clearcoatnormal-swift.struct.md)
- [PhysicallyBasedMaterial.ClearcoatRoughness](realitykit/physicallybasedmaterial/clearcoatroughness-swift.struct.md)
- [PhysicallyBasedMaterial.EmissiveColor](realitykit/physicallybasedmaterial/emissivecolor-swift.struct.md)
- [PhysicallyBasedMaterial.Metallic](realitykit/physicallybasedmaterial/metallic-swift.struct.md)
- [PhysicallyBasedMaterial.Normal](realitykit/physicallybasedmaterial/normal-swift.struct.md)
- [PhysicallyBasedMaterial.Opacity](realitykit/physicallybasedmaterial/opacity.md)
- [PhysicallyBasedMaterial.Roughness](realitykit/physicallybasedmaterial/roughness-swift.struct.md)
- [PhysicallyBasedMaterial.SheenColor](realitykit/physicallybasedmaterial/sheencolor.md)
- [PhysicallyBasedMaterial.Specular](realitykit/physicallybasedmaterial/specular-swift.struct.md)

### Instance Properties

- [opacityThreshold](realitykit/physicallybasedmaterial/opacitythreshold.md)
- [triangleFillMode](realitykit/physicallybasedmaterial/trianglefillmode-swift.property.md)

### Type Aliases

- [PhysicallyBasedMaterial.FaceCulling](realitykit/physicallybasedmaterial/faceculling-swift.typealias.md)
- [PhysicallyBasedMaterial.Texture](realitykit/physicallybasedmaterial/texture.md)
- [PhysicallyBasedMaterial.TextureCoordinateTransform](realitykit/physicallybasedmaterial/texturecoordinatetransform-swift.typealias.md)
- [PhysicallyBasedMaterial.TriangleFillMode](realitykit/physicallybasedmaterial/trianglefillmode-swift.typealias.md)

### Enumerations

- [PhysicallyBasedMaterial.Blending](realitykit/physicallybasedmaterial/blending-swift.enum.md)

## Relationships

### Conforms To

- [Material](realitykit/material.md)

## See Also

### Realistic materials

- [Applying realistic material and lighting effects to entities](realitykit/applying-realistic-material-and-lighting-effects-to-entities.md)
- [Generating procedural textures](visionos/generating-procedural-textures-in-visionos.md)
- [PhysicallyBasedMaterial.BaseColor](realitykit/physicallybasedmaterial/basecolor-swift.struct.md)
- [PhysicallyBasedMaterial.Roughness](realitykit/physicallybasedmaterial/roughness-swift.struct.md)
- [PhysicallyBasedMaterial.Metallic](realitykit/physicallybasedmaterial/metallic-swift.struct.md)
- [PhysicallyBasedMaterial.Normal](realitykit/physicallybasedmaterial/normal-swift.struct.md)
- [PhysicallyBasedMaterial.Blending](realitykit/physicallybasedmaterial/blending-swift.enum.md)
- [PhysicallyBasedMaterial.AmbientOcclusion](realitykit/physicallybasedmaterial/ambientocclusion-swift.struct.md)
- [PhysicallyBasedMaterial.Specular](realitykit/physicallybasedmaterial/specular-swift.struct.md)
- [PhysicallyBasedMaterial.SheenColor](realitykit/physicallybasedmaterial/sheencolor.md)
- [PhysicallyBasedMaterial.Clearcoat](realitykit/physicallybasedmaterial/clearcoat-swift.struct.md)
- [PhysicallyBasedMaterial.ClearcoatRoughness](realitykit/physicallybasedmaterial/clearcoatroughness-swift.struct.md)
- [PhysicallyBasedMaterial.AnisotropyLevel](realitykit/physicallybasedmaterial/anisotropylevel-swift.struct.md)
- [PhysicallyBasedMaterial.AnisotropyAngle](realitykit/physicallybasedmaterial/anisotropyangle-swift.struct.md)
- [PhysicallyBasedMaterial.EmissiveColor](realitykit/physicallybasedmaterial/emissivecolor-swift.struct.md)
