Photon-v2 icon indicating copy to clipboard operation
Photon-v2 copied to clipboard

Need to redesign FrameProcessor and FrameOperator

Open TzuChieh opened this issue 5 years ago • 0 comments

Several notes:

  • FrameOperator can be categorized into
    • local (pixel-by-pixel), e.g., simple tone mapping, scale
    • zone (neighbors may contribute to the final pixel), e.g., blur, bloom
    • global (the whole frame can affect the pixel), e.g., exposure like eye adaption
  • FrameProcessor should be thread-safe (const methods) once constructed
  • Post processing should be a separated operation with its own API
    • This way we no longer need to distinguish processed & raw frames in APIs
  • Need better mechanism/spec to avoid processing non-updated region, which caused unwanted effects during asynchronous result queries in previous versions
    • Currently this is solved by hacking, see a36de40bfcc7608cb228f55d93d7bb532bc3c267

TzuChieh avatar Sep 03 '19 18:09 TzuChieh