Managed uniform buffer support. 27/257327/17 devel/graphics
authorAdam Bialogonski <adam.b@samsung.com>
Mon, 17 May 2021 09:50:59 +0000 (10:50 +0100)
committerAdam Bialogonski <adam.b@samsung.com>
Tue, 25 May 2021 18:58:52 +0000 (19:58 +0100)
commit4f0ede80df126cfec14cc4a8994924542b9c3f29
treebdadf3deb237219c3fe2622468a99aef696b5cec
parent80e00ee2d7aab099b61ffc41ec741c95f133898a
Managed uniform buffer support.
Single uniform buffer is created in order to store uniform data for all rendered items.

- UniformBuffer is made of one or many Graphics::Buffer objects
- Memory of UniformBuffer is continuous
- UniformBuffer may resize if needed
- UniformBufferView is now used to access uniform data for individual items
- UniformBUfferPoolView manages memory allocation using stack/pool allocation strategy
- UniformBufferPoolView lives only through a single frame and then rolls back all memory

Change-Id: I2f1d2a007a132a7745b6927912353f57a96be791
16 files changed:
automated-tests/src/dali/dali-test-suite-utils/test-graphics-buffer.cpp
automated-tests/src/dali/dali-test-suite-utils/test-graphics-buffer.h
automated-tests/src/dali/dali-test-suite-utils/test-graphics-controller.cpp
automated-tests/src/dali/utc-Dali-VertexBuffer.cpp
dali/internal/file.list
dali/internal/render/common/render-manager.cpp
dali/internal/render/renderers/render-renderer.cpp
dali/internal/render/renderers/render-renderer.h
dali/internal/render/renderers/uniform-buffer-manager.cpp
dali/internal/render/renderers/uniform-buffer-manager.h
dali/internal/render/renderers/uniform-buffer-view-pool.cpp [new file with mode: 0644]
dali/internal/render/renderers/uniform-buffer-view-pool.h [new file with mode: 0644]
dali/internal/render/renderers/uniform-buffer-view.cpp [new file with mode: 0644]
dali/internal/render/renderers/uniform-buffer-view.h [new file with mode: 0644]
dali/internal/render/renderers/uniform-buffer.cpp [new file with mode: 0644]
dali/internal/render/renderers/uniform-buffer.h [new file with mode: 0644]