Blender Git Commit Log

Git Commits -> Revision 107e344

Revision 107e344 by Antonis Ryakiotakis (master)
July 14, 2015, 14:48 (GMT)
Display optimizations part 1.

This patch changes the way we draw meshes by introducing
indexed drawing. This makes it possible to easily
upload and rearrange faces ad lib according to any criteria.

Currently we use material sorting but textured sorting and
hiding will be added to optimize textured drawing and skip
per face testing.

It also adds support for vertex buffers for subsurf
modifiers (Except from GLSL drawing), making drawing of
subsurf much faster without need for bogus modifiers.

Tests show that we gain approximately 20-25% performance
by that for solid mode drawing with up to 50% gains for
material drawing. Textured drawing should also have a
small performance gain, but more substantial optimizations
are possible there.

Reviewers: campbellbarton

Differential Revision: https://developer.blender.org/D1406

Commit Details:

Full Hash: 107e34407d0ae4120cc7a12fdb208986a0b47d8e
Parent Commit: 1b8b906
Lines Changed: +1635, -1180

7 Modified Paths:

/source/blender/blenkernel/BKE_DerivedMesh.h (+3, -0) (Diff)
/source/blender/blenkernel/BKE_pbvh.h (+1, -1) (Diff)
/source/blender/blenkernel/intern/cdderivedmesh.c (+882, -305) (Diff)
/source/blender/blenkernel/intern/pbvh.c (+5, -3) (Diff)
/source/blender/blenkernel/intern/subsurf_ccg.c (+542, -271) (Diff)
/source/blender/gpu/GPU_buffers.h (+48, -8) (Diff)
/source/blender/gpu/intern/gpu_buffers.c (+154, -592) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021