import { ColorRepresentation } from 'three/src/math/Color'; import { MaterialProps } from './interfaces'; export interface PhysicalMaterialProps extends MaterialProps { /** * How metallic the surface appears (0=dielectric, 1=metal). * Metals reflect environment, dielectrics show diffuse color. * @dial surface @dial-cols 2 * @dial-label-left * @dial-dtype number * @dial-default 0 * @dial-min 0 * @dial-max 1 * @dial-step 0.01 */ metalness?: number; /** * Surface micro-roughness (0=mirror, 1=fully diffuse). * Controls sharpness of reflections and highlights. * @dial surface @dial-cols 2 * @dial-label-left * @dial-dtype number * @dial-default 1 * @dial-min 0 * @dial-max 1 * @dial-step 0.01 */ roughness?: number; /** * Intensity of clearcoat layer (0=none, 1=full). * Adds a reflective lacquer layer on top of base material. * @dial clearcoat @dial-cols 2 * @dial-label-left * @dial-dtype number * @dial-default 0 * @dial-min 0 * @dial-max 1 * @dial-step 0.01 */ clearcoat?: number; /** * Roughness of the clearcoat layer. * @dial clearcoat @dial-cols 2 * @dial-label-left * @dial-dtype number * @dial-default 0 * @dial-min 0 * @dial-max 1 * @dial-step 0.01 */ clearcoatRoughness?: number; /** * Reflectivity at normal incidence for non-metals. * Controls Fresnel effect strength. * @dial surface * @dial-label-left * @dial-dtype number * @dial-default 0.5 * @dial-min 0 * @dial-max 1 * @dial-step 0.01 */ reflectivity?: number; /** * Self-illumination color independent of scene lighting. * @dial emission * @dial-dtype color * @dial-default #000000 */ emissive?: ColorRepresentation; /** * Strength of the emissive glow effect. * @dial emission * @dial-label-left * @dial-dtype number * @dial-default 0 * @dial-min 0 * @dial-max 10 * @dial-step 0.1 */ emissiveIntensity?: number; /** * Use flat shading with faceted appearance instead of smooth. * @dial rendering * @dial-dtype boolean * @dial-default false */ flatShading?: boolean; } /** * Physical PBR material with advanced features like clearcoat. * * The most realistic material type, extending StandardMaterial * with clearcoat, sheen, transmission, and more. Best for * high-quality renders where realism matters. * * Use this for: * - Car paint (clearcoat + metalness) * - Lacquered wood and ceramics * - Glass and transparent materials * - Any surface needing maximum realism * * @example * ```tsx * // Car paint effect * * * * * // Matte plastic backdrop * * * * ``` */ export declare function PhysicalMaterial({ color, opacity, transparent, wireframe, side, map, mapRepeat, metalness, roughness, clearcoat, clearcoatRoughness, reflectivity, emissive, emissiveIntensity, flatShading, }: PhysicalMaterialProps): import("react/jsx-runtime").JSX.Element;