Revision e0e1dd7 by Clément Foucault (eevee-rewrite, temp-eevee-gpencil-rewrite, viewport-compositor) April 3, 2021, 21:40 (GMT) |
EEVEE: Film: Add option to use log encoding This option will make accumulation happen in a pre exposed logarithm color space. This reduces the importance of bright pixels in the pixel filter which will result in less aliasing in theses areas. There is a few cases where one might want to disable this option to match cycles better. |
Revision fa88f5a by Clément Foucault (eevee-rewrite, temp-eevee-gpencil-rewrite, viewport-compositor) April 2, 2021, 22:51 (GMT) |
EEVEE: Render: Add back render mode Render mode is really close to what the viewport render does. Film output is done by resolving the data to the next (double buffered) framebuffer and read back. This also includes a bit of cleaning about naming of init() and sync() functions. |
Revision fcb8563 by Clément Foucault (eevee-rewrite, temp-eevee-gpencil-rewrite, viewport-compositor) April 2, 2021, 22:50 (GMT) |
DRWView: Add getter for camtexco |
Revision 935da83 by Clément Foucault (eevee-rewrite, temp-eevee-gpencil-rewrite, viewport-compositor) April 2, 2021, 22:50 (GMT) |
Cleanup: RenderPipeline: Fix const correctness |
Revision ef174ff by Clément Foucault (eevee-rewrite, temp-eevee-gpencil-rewrite, viewport-compositor) April 2, 2021, 12:44 (GMT) |
Cleanup: EEVEE: Renaming - Add eevee_ prefix to shaders to avoid name clashing. - remove plural of eevee_shaders. - rename eevee_shared.hh to eevee_shader_shared.hh. |
Revision ad23570 by Clément Foucault (eevee-rewrite, temp-eevee-gpencil-rewrite, viewport-compositor) April 1, 2021, 20:37 (GMT) |
EEVEE: Film: Filtered accumulation with panoramic projection support This commit adds the Film class that handles accumulation of color and non-color data using arbitrary projection and filter size. A weighted accumulation (sum) is done into a data buffer with an additional weight buffer. The sum being per pixel, it allows the input textures that are not aligned with the output pixel grid. Panoramic projection works by rendering a cubemap (6 views) of the scene at the camera position. The Film filter pass then gather the pixels using the correct Panoramic projection ensuring correct Anti-Aliasing. For Non-color data (depth, normals) we only keep the closest value to the target pixel center (simulating a filter size of 0). Color data is accumulated in a log space to improve AntiAliasing output. This is hardcoded for now. Larger filters have poor performance but are very fast to converge. Code Wise: This commit rename some modules to avoid possible confusion and have better meaning. Use namespace instead of prefixes. Added a new eevee_shared.hh file to share structure and enum definitions between GLSL and C++. |
Revision 8777497 by Clément Foucault (eevee-rewrite, temp-eevee-gpencil-rewrite, viewport-compositor) April 1, 2021, 19:38 (GMT) |
DNA: Camera: Add panoramic types and parameters These are direct copy of Cycles parameters. Cycles parameters unification will be done separately. |
Revision 25af8b8 by Clément Foucault (eevee-rewrite, temp-eevee-gpencil-rewrite, viewport-compositor) March 28, 2021, 14:53 (GMT) |
EEVEE: New basic drawing TODO describe overall implementation here |
Revision 829e2e4 by Clément Foucault (eevee-rewrite, temp-eevee-gpencil-rewrite, viewport-compositor) March 25, 2021, 13:30 (GMT) |
EEVEE: Add new engine managed per viewport data This was engine(s) can have arbitrarily persistent resources and are responsible for freeing it properly. |
Revision 09e1f27 by Clément Foucault (eevee-rewrite, temp-eevee-gpencil-rewrite, viewport-compositor) March 25, 2021, 12:15 (GMT) |
EEVEE: Remove EEVEE Starting clean! |
Revision 81632de by Clément Foucault (draw-viewport-data, eevee-rewrite, temp-eevee-gpencil-rewrite, viewport-compositor) March 25, 2021, 00:03 (GMT) |
DRW: Move mempool datas to a DRW managed struct. Same idea as previous commit. This cleans-up the interface and put all viewport related data inside the `DRWData` struct. The draw manager is responsible for freeing it. That is the main point of this all. In the future, we can have custom freeing method for each engine. This also move the DefaultFramebuffer/TextureList and the engine related data to a new `DRWViewData` struct. This struct manages the per view (as in stereo view) engine data. There is a bit of cleanup in the way the draw manager is setup. We now use a temporary DRWData instead of creating a dummy viewport. |
Revision f7cb199 by Clément Foucault (draw-viewport-data, eevee-rewrite, temp-eevee-gpencil-rewrite, viewport-compositor) March 22, 2021, 22:53 (GMT) |
DRW: Move GPUViewport texture pool to DRW module This makes more sense and cleans-up what the GPUViewport holds. Also rewrite it to be in C++. |
|