Blender Git Loki
Git Commits -> Revision 1d49293
Revision 1d49293 by Clément Foucault (master) October 5, 2021, 07:39 (GMT) |
DRW: Move buffer & temp textures & framebuffer management to DrawManager This is a necessary step for EEVEE's new arch. This moves more data to the draw manager. This makes it easier to have the render or draw engines manage their own data. This makes more sense and cleans-up what the GPUViewport holds Also rewrites the Texture pool manager to be in C++. 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. Development: fclem, jbakker Differential Revision: https://developer.blender.org/D11966 |
Commit Details:
Full Hash: 1d49293b80446b89b5b12fa0eeefaf14e5051e48
Parent Commit: 08511b1
Committed By: Jeroen Bakker
Lines Changed: +1140, -1091
4 Added Paths:
/source/blender/draw/intern/draw_texture_pool.cc (+140, -0) (View)
/source/blender/draw/intern/draw_texture_pool.h (+47, -0) (View)
/source/blender/draw/intern/draw_view_data.cc (+243, -0) (View)
/source/blender/draw/intern/draw_view_data.h (+139, -0) (View)
/source/blender/draw/intern/draw_texture_pool.h (+47, -0) (View)
/source/blender/draw/intern/draw_view_data.cc (+243, -0) (View)
/source/blender/draw/intern/draw_view_data.h (+139, -0) (View)
1 Deleted Path:
/source/blender/draw/DRW_engine_types.h (+0, -51)
15 Modified Paths:
/.clang-format (+1, -0) (Diff)
/source/blender/draw/CMakeLists.txt (+4, -1) (Diff)
/source/blender/draw/DRW_engine.h (+4, -4) (Diff)
/source/blender/draw/intern/draw_instance_data.c (+2, -0) (Diff)
/source/blender/draw/intern/draw_manager.c (+365, -382) (Diff)
/source/blender/draw/intern/draw_manager.h (+52, -7) (Diff)
/source/blender/draw/intern/draw_manager_data.c (+10, -8) (Diff)
/source/blender/draw/intern/draw_manager_profiling.c (+3, -4) (Diff)
/source/blender/draw/intern/draw_manager_text.h (+8, -0) (Diff)
/source/blender/draw/intern/draw_manager_texture.c (+2, -1) (Diff)
/source/blender/draw/intern/DRW_render.h (+1, -2) (Diff)
/source/blender/editors/space_view3d/view3d_draw.c (+12, -9) (Diff)
/source/blender/gpu/GPU_texture.h (+8, -0) (Diff)
/source/blender/gpu/GPU_viewport.h (+10, -85) (Diff)
/source/blender/gpu/intern/gpu_viewport.c (+89, -537) (Diff)
/source/blender/draw/CMakeLists.txt (+4, -1) (Diff)
/source/blender/draw/DRW_engine.h (+4, -4) (Diff)
/source/blender/draw/intern/draw_instance_data.c (+2, -0) (Diff)
/source/blender/draw/intern/draw_manager.c (+365, -382) (Diff)
/source/blender/draw/intern/draw_manager.h (+52, -7) (Diff)
/source/blender/draw/intern/draw_manager_data.c (+10, -8) (Diff)
/source/blender/draw/intern/draw_manager_profiling.c (+3, -4) (Diff)
/source/blender/draw/intern/draw_manager_text.h (+8, -0) (Diff)
/source/blender/draw/intern/draw_manager_texture.c (+2, -1) (Diff)
/source/blender/draw/intern/DRW_render.h (+1, -2) (Diff)
/source/blender/editors/space_view3d/view3d_draw.c (+12, -9) (Diff)
/source/blender/gpu/GPU_texture.h (+8, -0) (Diff)
/source/blender/gpu/GPU_viewport.h (+10, -85) (Diff)
/source/blender/gpu/intern/gpu_viewport.c (+89, -537) (Diff)