Blender Git Commits

Blender Git "viewport-compositor" branch commits.

Page: 10 / 10

April 5, 2021, 15:34 (GMT)
Cleanup: BLI: Fix some const conrectness
April 4, 2021, 19:56 (GMT)
EEVEE: Shader: Add preprocessor to have better shared enum definition

This removes the use of very ugly macros. Now we preprocess
the .hh string at startup to change enum definitions to a more
GLSL friendly variant.
April 4, 2021, 17:17 (GMT)
Cleanup: DRW: Const correctness
April 3, 2021, 22:12 (GMT)
Cleanup: EEVEE: Use class instead of struct and remove typedefs
April 3, 2021, 21:43 (GMT)
EEVEE: Reorganize ShadingView initialisation

This move view resolution handling to the `Camera` class that will
in the future clip and trim each view in panoramic projection.

There is a new `CameraView` that contains the `DRWView` and subview.
This way each `ShadingView` is associated to a unique `CameraView`.

ShadingView` & `CameraView` are all allocated & defined at creation time
but only the one activated by `Camera` will be rendered.
April 3, 2021, 21:40 (GMT)
Cleanup: DRW: More const correctness
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.
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.
April 2, 2021, 22:50 (GMT)
DRWView: Add getter for camtexco
April 2, 2021, 22:50 (GMT)
Cleanup: RenderPipeline: Fix const correctness
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.
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++.
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.
March 28, 2021, 14:53 (GMT)
EEVEE: New basic drawing

TODO describe overall implementation here
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.
March 25, 2021, 12:15 (GMT)
EEVEE: Remove EEVEE

Starting clean!
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.
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++.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021