Uint8 data stores display-referred values. Correct sRGB annotation enables conversion into the linear working space.
- type
- UnsignedByte
- space
- sRGB
An environment map is not just an image. Compare LDR and HDR payloads, the color-space annotation attached to them, and the equirectangular-to-PMREM conversion that turns those pixels into PBR lighting.
Creating a synthetic equirectangular payload and PMREM target.
DataTexture creates the environment directly from a typed array; no network asset is involved.
PMREM converts the equirectangular source to a CubeUV representation with roughness-aware filtered levels.
Uint8 data stores display-referred values. Correct sRGB annotation enables conversion into the linear working space.
Float32 data preserves values above 1. Linear-sRGB is the correct annotation for lighting calculations.
HalfFloat keeps open-domain highlights with half the channel storage, subject to device support.
PMREM generation is a one-time target-producing operation; the frame sample measures shading after conversion.
typed array -> DataTexture -> equirectangular shader -> PMREMGenerator -> CubeUV -> PBR materials
Color-space metadata is part of the rendering contract. LDR color textures are normally sRGB; open-domain HDR environment data is normally Linear-sRGB. PMREM preserves the lighting representation while changing the sampling layout.
Compare ordinary texture sampler policy next →LAB 127 / ENVIRONMENT INPUTS + COLOR SPACE