Blender Git Statistics -> Branches -> tmp-drw-callbatching

"Tmp-drw-callbatching" branch

Total commits : 57
Total committers : 1
First Commit : August 17, 2019
Latest Commit : August 17, 2019


Commits by Date

DateNumber of Commits
August 17, 201957

Committers

AuthorNumber of Commits
Clément Foucault57

Popular Files

FilenameTotal Edits
draw_manager_exec.c29
draw_manager_data.c28
draw_manager.h25
draw_manager.c11
common_view_lib.glsl8
gpu_batch.c6
gpu_viewport.c5
GPU_viewport.h4
GPU_shader_interface.h4
object_mode.c3

Latest commits Feed

August 17, 2019, 12:48 (GMT)
GPU: Fix USE_MULTI_DRAW_INDIRECT macro

Now uses GPU_arb_base_instance_is_supported properly.
August 17, 2019, 12:48 (GMT)
DRW: Fix regression when rendering using index ranges
August 17, 2019, 12:48 (GMT)
BLI_memblock: Remove ATTR_MALLOC flags

This is made to do some optimization but this is creating unwanted behavior.
August 17, 2019, 12:48 (GMT)
DRW: Move Shading Group Extra DRWState to own DRWCommand
August 17, 2019, 12:48 (GMT)
DRW: Move DRWUniformChunk length and used counter to the struct itself.

This is better for code simplicity. Memory usage is not that much of a
concern for uniforms.
August 17, 2019, 12:48 (GMT)
DRW: Add DRWCommandSetStencil

Now multiple stencils can be set inside a shgroup.

Should not change the previous behavior as all usage of
DRW_shgroup_stencil_mask was done at shgroup creation.
August 17, 2019, 12:48 (GMT)
Workbench: Fix dark mesh when no material applied
August 17, 2019, 12:48 (GMT)
DRW: Use a DRWResourceHandle to reference the parent DRWPass ...

... inside a DRWShadingGroup
August 17, 2019, 12:48 (GMT)
DRW: Fix and improve DRW_pass_sort_shgroup_z

Now sorting only compare and does not compute Z distance for each
comparisson. It also keeps the order of shgroups with the same distances.
August 17, 2019, 12:48 (GMT)
DRW: Resource Handle: Use manual bitmasks and bitsifts

This is in order to avoid implementation dependant behavior.
August 17, 2019, 12:48 (GMT)
Cleanup: DRW: Add draw_call_batching_flush for easier code understanding
August 17, 2019, 12:48 (GMT)
DRW: Port Eevee to use DRWObjectInfos ubos
August 17, 2019, 12:48 (GMT)
Edit Curve: Fix curve normals
August 17, 2019, 12:48 (GMT)
Workbench: Remove object_id and optimize material hash generation

This greatly reduce shgroup count when rendering with outlines.
In my testcase (30K suzanes with random instancing, 5 materials) it went
from 27 to 39 fps (playback performance, no update).
August 17, 2019, 12:48 (GMT)
GPU: Fix flush range and uninitialized buffer_id
August 17, 2019, 12:48 (GMT)
Object Mode: Add back lightprobe selection outlines
August 17, 2019, 12:48 (GMT)
Cleanup: GPUBatch: rename arguments
August 17, 2019, 12:48 (GMT)
DRW: Fix Eevee rendering broken due to recent changes
August 17, 2019, 12:48 (GMT)
BLI_memblock: Use aligned memory blocks

This is because we upload certain chunks directly as UBO data and
AMD suggests to use aligned block to speedup memcpy.

However, this implies the driver is also doing an aligned allocation
which seems not to be the case on linux_x64 + radeon + mesa.
August 17, 2019, 12:48 (GMT)
DRW: Add draw call sorting

This makes rendering lots of similar objects much faster (with lower CPU
overhead).

29 fps -> 38 fps
34 ms -> 26 ms
In my test case with 30K instances of 4 different meshes

MiikaHweb - Blender Git Statistics v1.06
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021