Pmndrs.docs

Reflector

Easily add reflections and/or blur to a planar surface. This reflector can also blur and takes surface roughness into account for a more realistic effect.

<Reflector
  args={[1, 1]} // PlaneBufferGeometry arguments
  resolution={256} // Off-buffer resolution, lower=faster, higher=better quality
  mirror={0.5} // Mirror environment, 0 = texture colors, 1 = pick up env colors
  mixBlur={1.0} // How much blur mixes with surface roughness (default = 0), note that this can affect performance
  mixStrength={0.5} // Strength of the reflections
  depthScale={1} // Scale the depth factor (0 = no depth, default = 0)
  minDepthThreshold={0.9} // Lower edge for the depthTexture interpolation (default = 0)
  maxDepthThreshold={1} // Upper edge for the depthTexture interpolation (default = 0)
  depthToBlurRatioBias={0.25} // Adds a bias factor to the depthTexture before calculating the blur amount [blurFactor = blurTexture * (depthTexture + bias)]. It accepts values between 0 and 1, default is 0.25. An amount > 0 of bias makes sure that the blurTexture is not too sharp because of the multiplication with the depthTexture
  distortion={0} // Amount of distortion based on the distortionMap texture
  distortionMap={distortionTexture} // The red channel of this texture is used as the distortion map. Default is null
  debug={0} /* Depending on the assigned value, one of the following channels is shown:
    0 = no debug
    1 = depth channel
    2 = base channel
    3 = distortion channel
    4 = lod channel (based on the roughness)
  */
>
  {(Material, props) => <Material {...props}>}
</Reflector>