[Bf-blender-cvs] [f5e76aa39e3] master: Cleanup: Array types, const, math API in workbench code
Hans Goudey
noreply at git.blender.org
Fri Jan 27 18:35:20 CET 2023
Commit: f5e76aa39e3ff40a4c85e79ff70e8e6b02fcfaa7
Author: Hans Goudey
Date: Fri Jan 27 11:33:40 2023 -0600
Branches: master
https://developer.blender.org/rBf5e76aa39e3ff40a4c85e79ff70e8e6b02fcfaa7
Cleanup: Array types, const, math API in workbench code
Some miscellaneous cleanups left over from a fix/cleanup combo:
- Use const variables
- Use the C++ `math` namespace functions
- Use `std::array` for arrays with size known at compile time
- Use `MutableSpan` instead of reference to array
Differential Revision: https://developer.blender.org/D17094
===================================================================
M source/blender/draw/engines/workbench/workbench_effect_antialiasing.cc
===================================================================
diff --git a/source/blender/draw/engines/workbench/workbench_effect_antialiasing.cc b/source/blender/draw/engines/workbench/workbench_effect_antialiasing.cc
index 75be8279037..e00d67d4d0f 100644
--- a/source/blender/draw/engines/workbench/workbench_effect_antialiasing.cc
+++ b/source/blender/draw/engines/workbench/workbench_effect_antialiasing.cc
@@ -8,25 +8,23 @@
namespace blender::workbench {
class TaaSamples {
- void init_samples(Array<float2> &samples, const int size)
+ void init_samples(MutableSpan<float2> samples)
{
- samples = Array<float2>(size);
- BLI_jitter_init((float(*)[2])samples.begin(), size);
+ BLI_jitter_init(reinterpret_cast<float(*)[2]>(samples.data()), samples.size());
/* Find closest element to center */
int closest_index = 0;
float closest_squared_distance = 1.0f;
-
for (int i : samples.index_range()) {
- float2 sample = samples[i];
- const float squared_dist = len_squared_v2(sample);
+ const float2 sample = samples[i];
+ const float squared_dist = math::length_squared(sample);
if (squared_dist < closest_squared_distance) {
closest_squared_distance = squared_dist;
closest_index = i;
}
}
- float2 closest_sample = samples[closest_index];
+ const float2 closest_sample = samples[closest_index];
for (float2 &sample : samples) {
/* Move jitter samples so that closest sample is in center */
@@ -43,11 +41,11 @@ class TaaSamples {
}
/* Sort list based on farthest distance with previous. */
- for (int i = 0; i < size - 2; i++) {
+ for (int i = 0; i < samples.size() - 2; i++) {
float squared_dist = 0.0;
int index = i;
- for (int j = i + 1; j < size; j++) {
- const float _squared_dist = len_squared_v2(samples[i] - samples[j]);
+ for (int j = i + 1; j < samples.size(); j++) {
+ const float _squared_dist = math::length_squared(samples[i] - samples[j]);
if (_squared_dist > squared_dist) {
squared_dist = _squared_dist;
index = j;
@@ -58,19 +56,19 @@ class TaaSamples {
}
public:
- Array<float2> x5;
- Array<float2> x8;
- Array<float2> x11;
- Array<float2> x16;
- Array<float2> x32;
+ std::array<float2, 5> x5;
+ std::array<float2, 8> x8;
+ std::array<float2, 11> x11;
+ std::array<float2, 16> x16;
+ std::array<float2, 32> x32;
TaaSamples()
{
- init_samples(x5, 5);
- init_samples(x8, 8);
- init_samples(x11, 11);
- init_samples(x16, 16);
- init_samples(x32, 32);
+ init_samples(x5);
+ init_samples(x8);
+ init_samples(x11);
+ init_samples(x16);
+ init_samples(x32);
}
};
More information about the Bf-blender-cvs
mailing list