Gamma Setting Implementation Question

Godot Version

Godot 4.6

Question

For implementing a gamma option in a game what are the main ways you would use and their trade offs. From what I can see the main ways appear to be:

  1. Set adjustment_brightness on a WorldEnvironment node’s Environment resource
  2. Set tonemap_exposure on a WorldEnvironment node’s Environment resource
  3. Use a shader to map colors on the screen to be brighter or darker based off a supplied value

But I’m unsure which to use, does anyone have any experience with this and the trade offs they found?