Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHallam Roberts <MysteryPancake>2022-03-11 18:14:05 +0300
committerBrecht Van Lommel <brecht@blender.org>2022-03-11 20:27:58 +0300
commit3da84d8b086bd2d09beb5bdb89ba6beddf1e1dd6 (patch)
tree698e6793ba776716a256abf10ed4b1623ade15eb /source/blender/draw
parent62a0984d7290cbd6fd3acfa79d53765f97f93b0a (diff)
Cleanup: use M_PI_2 and M_PI_4 where possible
The constant M_PI_4 is added to GLSL to ensure it works there too. Differential Revision: https://developer.blender.org/D14288
Diffstat (limited to 'source/blender/draw')
-rw-r--r--source/blender/draw/engines/eevee/eevee_lightprobes.c2
-rw-r--r--source/blender/draw/engines/eevee/eevee_lookdev.c2
-rw-r--r--source/blender/draw/engines/eevee/shaders/effect_dof_scatter_vert.glsl2
-rw-r--r--source/blender/draw/engines/eevee/shaders/effect_translucency_frag.glsl2
-rw-r--r--source/blender/draw/engines/gpencil/gpencil_draw_data.c2
-rw-r--r--source/blender/draw/engines/workbench/workbench_effect_dof.c8
-rw-r--r--source/blender/draw/intern/shaders/common_math_lib.glsl1
7 files changed, 10 insertions, 9 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_lightprobes.c b/source/blender/draw/engines/eevee/eevee_lightprobes.c
index a20fe156eda..7029d015b22 100644
--- a/source/blender/draw/engines/eevee/eevee_lightprobes.c
+++ b/source/blender/draw/engines/eevee/eevee_lightprobes.c
@@ -613,7 +613,7 @@ void EEVEE_lightprobes_planar_data_from_object(Object *ob,
eplanar->clip_edge_y_neg = dot_v3v3(eplanar->clip_vec_y, vec);
/* Facing factors */
- float max_angle = max_ff(1e-2f, 1.0f - probe->falloff) * M_PI * 0.5f;
+ float max_angle = max_ff(1e-2f, 1.0f - probe->falloff) * M_PI_2;
float min_angle = 0.0f;
eplanar->facing_scale = 1.0f / max_ff(1e-8f, cosf(min_angle) - cosf(max_angle));
eplanar->facing_bias = -min_ff(1.0f - 1e-8f, cosf(max_angle)) * eplanar->facing_scale;
diff --git a/source/blender/draw/engines/eevee/eevee_lookdev.c b/source/blender/draw/engines/eevee/eevee_lookdev.c
index 0ef78d97a79..874c2815b8b 100644
--- a/source/blender/draw/engines/eevee/eevee_lookdev.c
+++ b/source/blender/draw/engines/eevee/eevee_lookdev.c
@@ -217,7 +217,7 @@ void EEVEE_lookdev_cache_init(EEVEE_Data *vedata,
float x_rot_matrix[3][3];
DRW_view_viewmat_get(NULL, view_matrix, false);
copy_m3_m4(view_rot_matrix, view_matrix);
- axis_angle_to_mat3_single(x_rot_matrix, 'X', M_PI / 2.0f);
+ axis_angle_to_mat3_single(x_rot_matrix, 'X', M_PI_2);
mul_m3_m3m3(view_rot_matrix, x_rot_matrix, view_rot_matrix);
mul_m3_m3m3(view_rot_matrix, g_data->studiolight_matrix, view_rot_matrix);
copy_m3_m3(studiolight_matrix, view_rot_matrix);
diff --git a/source/blender/draw/engines/eevee/shaders/effect_dof_scatter_vert.glsl b/source/blender/draw/engines/eevee/shaders/effect_dof_scatter_vert.glsl
index 59564890d7e..b05223e755d 100644
--- a/source/blender/draw/engines/eevee/shaders/effect_dof_scatter_vert.glsl
+++ b/source/blender/draw/engines/eevee/shaders/effect_dof_scatter_vert.glsl
@@ -103,7 +103,7 @@ void main()
color4 = colors[3] * weights[3];
/* Extend to cover at least the unit circle */
- const float extend = (cos(M_PI / 4.0) + 1.0) * 2.0;
+ const float extend = (cos(M_PI_4) + 1.0) * 2.0;
/* Crappy diagram
* ex 1
* | \
diff --git a/source/blender/draw/engines/eevee/shaders/effect_translucency_frag.glsl b/source/blender/draw/engines/eevee/shaders/effect_translucency_frag.glsl
index ba90f5ae531..831ed0a119a 100644
--- a/source/blender/draw/engines/eevee/shaders/effect_translucency_frag.glsl
+++ b/source/blender/draw/engines/eevee/shaders/effect_translucency_frag.glsl
@@ -40,7 +40,7 @@ float light_translucent_power_with_falloff(LightData ld, vec3 N, vec4 l_vector)
if (ld.l_type >= AREA_RECT) {
power = (ld.l_sizex * ld.l_sizey * 4.0 * M_PI) * (1.0 / 80.0);
if (ld.l_type == AREA_ELLIPSE) {
- power *= M_PI * 0.25;
+ power *= M_PI_4;
}
power *= 0.3 * 20.0 *
max(0.0, dot(-ld.l_forward, l_vector.xyz / l_vector.w)); /* XXX ad hoc, empirical */
diff --git a/source/blender/draw/engines/gpencil/gpencil_draw_data.c b/source/blender/draw/engines/gpencil/gpencil_draw_data.c
index 6c904745709..c3f96ecd0a2 100644
--- a/source/blender/draw/engines/gpencil/gpencil_draw_data.c
+++ b/source/blender/draw/engines/gpencil/gpencil_draw_data.c
@@ -387,7 +387,7 @@ void gpencil_light_pool_populate(GPENCIL_LightPool *lightpool, Object *ob)
normalize_m4_m4(mat, ob->obmat);
invert_m4(mat);
gp_light->type = GP_LIGHT_TYPE_SPOT;
- gp_light->spotsize = cosf(M_PI * 0.5f);
+ gp_light->spotsize = cosf(M_PI_2);
gp_light->spotblend = (1.0f - gp_light->spotsize) * 1.0f;
}
else if (la->type == LA_SUN) {
diff --git a/source/blender/draw/engines/workbench/workbench_effect_dof.c b/source/blender/draw/engines/workbench/workbench_effect_dof.c
index 6b64a9d7f09..58d49cf226e 100644
--- a/source/blender/draw/engines/workbench/workbench_effect_dof.c
+++ b/source/blender/draw/engines/workbench/workbench_effect_dof.c
@@ -31,22 +31,22 @@ static void square_to_circle(float x, float y, float *r, float *T)
if (x > -y) {
if (x > y) {
*r = x;
- *T = (M_PI / 4.0f) * (y / x);
+ *T = M_PI_4 * (y / x);
}
else {
*r = y;
- *T = (M_PI / 4.0f) * (2 - (x / y));
+ *T = M_PI_4 * (2 - (x / y));
}
}
else {
if (x < y) {
*r = -x;
- *T = (M_PI / 4.0f) * (4 + (y / x));
+ *T = M_PI_4 * (4 + (y / x));
}
else {
*r = -y;
if (y != 0) {
- *T = (M_PI / 4.0f) * (6 - (x / y));
+ *T = M_PI_4 * (6 - (x / y));
}
else {
*T = 0.0f;
diff --git a/source/blender/draw/intern/shaders/common_math_lib.glsl b/source/blender/draw/intern/shaders/common_math_lib.glsl
index eb7a98788c3..bc31649fd0f 100644
--- a/source/blender/draw/intern/shaders/common_math_lib.glsl
+++ b/source/blender/draw/intern/shaders/common_math_lib.glsl
@@ -6,6 +6,7 @@
#define M_PI 3.14159265358979323846 /* pi */
#define M_2PI 6.28318530717958647692 /* 2*pi */
#define M_PI_2 1.57079632679489661923 /* pi/2 */
+#define M_PI_4 0.78539816339744830962 /* pi/4 */
#define M_1_PI 0.318309886183790671538 /* 1/pi */
#define M_1_2PI 0.159154943091895335768 /* 1/(2*pi) */
#define M_1_PI2 0.101321183642337771443 /* 1/(pi^2) */