{"action":"created","issue":{"url":"https://api.github.com/repos/lowkey42/mirrage/issues/11","repository_url":"https://api.github.com/repos/lowkey42/mirrage","labels_url":"https://api.github.com/repos/lowkey42/mirrage/issues/11/labels{/name}","comments_url":"https://api.github.com/repos/lowkey42/mirrage/issues/11/comments","events_url":"https://api.github.com/repos/lowkey42/mirrage/issues/11/events","html_url":"https://github.com/lowkey42/mirrage/issues/11","id":300060314,"number":11,"title":"Besseres Tone-Mapping","user":{"login":"lowkey42","id":660398,"avatar_url":"https://avatars2.githubusercontent.com/u/660398?v=4","gravatar_id":"","url":"https://api.github.com/users/lowkey42","html_url":"https://github.com/lowkey42","followers_url":"https://api.github.com/users/lowkey42/followers","following_url":"https://api.github.com/users/lowkey42/following{/other_user}","gists_url":"https://api.github.com/users/lowkey42/gists{/gist_id}","starred_url":"https://api.github.com/users/lowkey42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lowkey42/subscriptions","organizations_url":"https://api.github.com/users/lowkey42/orgs","repos_url":"https://api.github.com/users/lowkey42/repos","events_url":"https://api.github.com/users/lowkey42/events{/privacy}","received_events_url":"https://api.github.com/users/lowkey42/received_events","type":"User","site_admin":false},"labels":[{"id":832787501,"url":"https://api.github.com/repos/lowkey42/mirrage/labels/Renderer","name":"Renderer","color":"1d76db","default":false},{"id":698369384,"url":"https://api.github.com/repos/lowkey42/mirrage/labels/enhancement","name":"enhancement","color":"84b6eb","default":true}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-02-25T20:55:40Z","updated_at":"2018-04-30T15:06:38Z","closed_at":null,"author_association":"OWNER","body":"https://knarkowicz.wordpress.com/2016/01/09/automatic-exposure/\r\n\r\n- Avg. Luminance über Histogram bestimmen und übermäßig dunkle+helle Bereiche abschneiden, damit die relevanten Teile korrekt belichtet werden. Evtl. mit einem Storage-Buffer performant machbar.\r\n- ggf. zusätzliche Gewichtung nach Distanz zum Zentrum des Bildschirms, falls das nicht ausreich\r\n- \"Exposure compensation curve\" wäre dabei ebenfalls eine sinnvolle Erweiterung"},"comment":{"url":"https://api.github.com/repos/lowkey42/mirrage/issues/comments/385427333","html_url":"https://github.com/lowkey42/mirrage/issues/11#issuecomment-385427333","issue_url":"https://api.github.com/repos/lowkey42/mirrage/issues/11","id":385427333,"user":{"login":"lowkey42","id":660398,"avatar_url":"https://avatars2.githubusercontent.com/u/660398?v=4","gravatar_id":"","url":"https://api.github.com/users/lowkey42","html_url":"https://github.com/lowkey42","followers_url":"https://api.github.com/users/lowkey42/followers","following_url":"https://api.github.com/users/lowkey42/following{/other_user}","gists_url":"https://api.github.com/users/lowkey42/gists{/gist_id}","starred_url":"https://api.github.com/users/lowkey42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lowkey42/subscriptions","organizations_url":"https://api.github.com/users/lowkey42/orgs","repos_url":"https://api.github.com/users/lowkey42/repos","events_url":"https://api.github.com/users/lowkey42/events{/privacy}","received_events_url":"https://api.github.com/users/lowkey42/received_events","type":"User","site_admin":false},"created_at":"2018-04-30T15:06:38Z","updated_at":"2018-04-30T15:06:38Z","author_association":"OWNER","body":"Basis-Algorithmus:\r\n- Fragment-Shader: Frame -> log(Luminance)\r\n- Compute-Shader: log(luminance) => Histogram\r\n- Compute-Shader: Histogram => Exposure\r\n\r\nHistogram-Adjustment (\"A Visibility Matching Tone Reproduction Operator for High Dynamic Range Scenes\"):\r\n- Fragment-Shader: Frame -> log(Luminance)\r\n- Downsample: Width = 2*tan(fov_h/2) / 0.01745\r\n- Compute-Shader: log(luminance) => Histogram\r\n- Histogram durch Ceiling beschränken: <= (Anzahl Samples * Histogram Schrittweite) / (max log(luminance) - min log(luminance))\r\n- Histogram Equalization: \r\n    - Summed-Area-Table konstruieren: H_s(i) = H_s(i-1) + H(i)\r\n    - Normalisieren: H_sn(i) = H_s(i) / H_s(MAX)\r\n    - Auf Frame anwenden: H_sn(log(luminance(color))) * color"}}
{"actor":{"display_login":"lowkey42"}}