diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2020-03-06 19:18:10 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2020-03-09 16:47:59 +0300 |
commit | 598ab525da3df3fef2033c159c570688c7282a8f (patch) | |
tree | ba2bd0b8fc6ee5d264512bf655def1a6ee5d7b31 /source/blender/gpu/intern | |
parent | ee5d7bc16b243f309c84bce5deddf3a86b7f4c14 (diff) |
Cleanup: Replace ABS/SQUARE/CUBE with function calls
While it might be handy to have type-less functionality which is
similar to how C++ math is implemented it can not be easily achieved
with just preprocessor in a way which does not have side-effects on
wrong usage.
There macros where often used on a non-trivial expression, and there
was at least one usage where it was causing an actual side effect/bug
on Windows (see change around square_f(sh[index++]) in studiolight.c).
For such cases it is handy to have a function which is guaranteed to
have zero side-effects. The motivation behind actually removing the
macros is that there is already a way to do similar calculation. Also,
not having such macros is a way to guarantee that its usage is not
changed in a way which have side-effects and that it's not used as an
inspiration for cases where it should not be used.
Differential Revision: https://developer.blender.org/D7051
Diffstat (limited to 'source/blender/gpu/intern')
-rw-r--r-- | source/blender/gpu/intern/gpu_buffers.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/gpu/intern/gpu_buffers.c b/source/blender/gpu/intern/gpu_buffers.c index b4d18ba0928..4f02e3d9a2a 100644 --- a/source/blender/gpu/intern/gpu_buffers.c +++ b/source/blender/gpu/intern/gpu_buffers.c @@ -569,7 +569,7 @@ static void gpu_pbvh_grid_fill_index_buffers( } else { uint offset = 0; - const uint grid_vert_len = SQUARE(gridsize - 1) * 4; + const uint grid_vert_len = square_uint(gridsize - 1) * 4; for (int i = 0; i < totgrid; i++, offset += grid_vert_len) { bool grid_visible = false; @@ -668,7 +668,7 @@ void GPU_pbvh_grid_buffers_update(GPU_PBVH_Buffers *buffers, buffers->smooth = grid_flag_mats[grid_indices[0]].flag & ME_SMOOTH; - uint vert_per_grid = (buffers->smooth) ? key->grid_area : (SQUARE(key->grid_size - 1) * 4); + uint vert_per_grid = (buffers->smooth) ? key->grid_area : (square_i(key->grid_size - 1) * 4); uint vert_count = totgrid * vert_per_grid; if (buffers->index_buf == NULL) { @@ -784,7 +784,7 @@ void GPU_pbvh_grid_buffers_update(GPU_PBVH_Buffers *buffers, vbo_index += 4; } } - vbo_index_offset += SQUARE(key->grid_size - 1) * 4; + vbo_index_offset += square_i(key->grid_size - 1) * 4; } } |