• Stars
    star
    325
  • Rank 129,350 (Top 3 %)
  • Language
    Rust
  • License
    Apache License 2.0
  • Created almost 2 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A cool-headed display transform

๐ŸŒˆ Tony McMapface ๐ŸŒˆ

Takes HDR Rec.709/sRGB stimulus, and maps it to LDR. It's tranquil and collected, and won't set your eyes ablaze.

About

Tony is a display transform intended for real-time applications such as games. It is intentionally boring, does not increase contrast or saturation, and stays close to the input stimulus where compression isn't necessary.

It ships as a LUT along with a bit of shader code for sampling. There's no tweakables; if you need a different look, do it before and/or after the display transform.

Please note that the shader output is linear, so if "gamma space" sRGB is desired, the sRGB OETF must be used afterwards.

There's also a basic OCIO config with sRGB output.

Disclaimer: Tony McMapface is phenomenological, and tuned to its author's visual system (with mixed success). If you need something mathematically pure, try AgX.

Ports ๐Ÿ’–

Derivation

The generator's source code will come at a later time. Meanwhile, here's a TL;DR:

Tony McMapface takes a maximalist approach to the image formation process, and explicitly models perceptual phenomena:

As can be expected, the models underlying this process are imperfect, thus a liberal amount of eyeballing and fine tuning was applied.

Examples

Acknowledgments

Thanks to Chris Brejon, David Briggs, Jed Smith, Troy Sobotka, and Alex Tardif for their excellent write-ups about color.

Special thanks to Troy Sobotka for eye-opening discussions, and triggering my obsessions ๐Ÿ™ˆ

License

This contribution is dual licensed under EITHER OF

at your option.