descriptor
TypeScriptget descriptor(): CustomMaterial_Program_DescriptorSwift declarationfinal let descriptor: CustomMaterial.Program.Descriptorclass · iOS 18.0+ · SDK 27.1
final class ProgramAn object that represents the backing shader compilation required for custom materials. You can use this type to control when RealityKit compiles shaders, and to initialize `CustomMaterial` objects with more predicitable loading performance. When initializing a `CustomMaterial` this way, a `Program` object is created first asynchronously, which is used to cache the material's shader program so the `CustomMaterial` can be loaded immediately later. For example: ```swift // Initialize descriptor with desired properties var descriptor = CustomMaterial.Descriptor() descriptor.lightingModel = .unlit // Create program object let program = await CustomMaterial.Program(surfaceShader: surfaceShader, descriptor: descriptor) // Create material (returns immediately) let material = CustomMaterial(program: program) ```
get descriptor(): CustomMaterial_Program_DescriptorSwift declarationfinal let descriptor: CustomMaterial.Program.Descriptorstatic init(surfaceShader: CustomMaterial_SurfaceShader, geometryModifier: (CustomMaterial_GeometryModifier) | null, descriptor: CustomMaterial_Program_Descriptor): Promise<CustomMaterial_Program>Swift declarationinit(surfaceShader: CustomMaterial.SurfaceShader, geometryModifier: CustomMaterial.GeometryModifier? = nil, descriptor: CustomMaterial.Program.Descriptor) async throwsget surfaceShader(): CustomMaterial_SurfaceShaderSwift declarationfinal let surfaceShader: CustomMaterial.SurfaceShaderget geometryModifier(): (CustomMaterial_GeometryModifier) | nullSwift declarationfinal let geometryModifier: CustomMaterial.GeometryModifier?No declarations were skipped in this snapshot.