Neural appearance models in Three.js

A material lives in a small learned latent texture and a shared decoder MLP instead of hand-authored PBR channels. This walks the whole system — why conventional mipmapping breaks, the auto-decoder architecture, distillation from a MaterialX teacher, hand-written WGSL backpropagation, the runtime, and what still doesn't work.