Skip to content
Permalink

Comparing changes

This is a direct comparison between two commits made in this repository or its related repositories. View the default comparison for this range or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: godotengine/godot
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: bbc549d25b697ba3279780b6c10030b552a9094c
Choose a base ref
..
head repository: godotengine/godot
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 48c510080fbcf143d93855a26b76af7fe2f2117e
Choose a head ref
Showing with 7 additions and 7 deletions.
  1. +7 −7 scene/2d/gpu_particles_2d.cpp
14 changes: 7 additions & 7 deletions scene/2d/gpu_particles_2d.cpp
Original file line number Diff line number Diff line change
@@ -800,7 +800,7 @@ void GPUParticles2D::_notification(int p_what) {
#ifdef TOOLS_ENABLED
void GPUParticles2D::_draw_emission_gizmo() {
Ref<ParticleProcessMaterial> pm = process_material;
Color emissiong_ring_color = Color(0.8, 0.7, 0.4, 0.4);
Color emission_ring_color = Color(0.8, 0.7, 0.4, 0.4);
if (pm.is_null()) {
return;
}
@@ -812,34 +812,34 @@ void GPUParticles2D::_draw_emission_gizmo() {
switch (pm->get_emission_shape()) {
case ParticleProcessMaterial::EmissionShape::EMISSION_SHAPE_BOX: {
Vector2 extends2d = Vector2(pm->get_emission_box_extents().x, pm->get_emission_box_extents().y);
draw_rect(Rect2(-extends2d, extends2d * 2.0), emissiong_ring_color, false);
draw_rect(Rect2(-extends2d, extends2d * 2.0), emission_ring_color, false);
break;
}
case ParticleProcessMaterial::EmissionShape::EMISSION_SHAPE_SPHERE:
case ParticleProcessMaterial::EmissionShape::EMISSION_SHAPE_SPHERE_SURFACE: {
draw_circle(Vector2(), pm->get_emission_sphere_radius(), emissiong_ring_color, false);
draw_circle(Vector2(), pm->get_emission_sphere_radius(), emission_ring_color, false);
break;
}
case ParticleProcessMaterial::EmissionShape::EMISSION_SHAPE_RING: {
Vector3 ring_axis = pm->get_emission_ring_axis();
if (ring_axis.is_equal_approx(Vector3(0.0, 0.0, 1.0)) || ring_axis.is_equal_approx(Vector3(0.0, 0.0, 0.0))) {
draw_circle(Vector2(), pm->get_emission_ring_inner_radius(), emissiong_ring_color, false);
draw_circle(Vector2(), pm->get_emission_ring_radius(), emissiong_ring_color, false);
draw_circle(Vector2(), pm->get_emission_ring_inner_radius(), emission_ring_color, false);
draw_circle(Vector2(), pm->get_emission_ring_radius(), emission_ring_color, false);
} else {
Vector2 a = Vector2(pm->get_emission_ring_height() / -2.0, pm->get_emission_ring_radius() / -1.0);
Vector2 b = Vector2(-a.x, MIN(a.y + tan((90.0 - pm->get_emission_ring_cone_angle()) * 0.01745329) * pm->get_emission_ring_height(), 0.0));
Vector2 c = Vector2(b.x, -b.y);
Vector2 d = Vector2(a.x, -a.y);
if (ring_axis.is_equal_approx(Vector3(1.0, 0.0, 0.0))) {
Vector<Vector2> pos = { a, b, b, c, c, d, d, a };
draw_multiline(pos, emissiong_ring_color);
draw_multiline(pos, emission_ring_color);
} else if (ring_axis.is_equal_approx(Vector3(0.0, 1.0, 0.0))) {
a = Vector2(a.y, a.x);
b = Vector2(b.y, b.x);
c = Vector2(c.y, c.x);
d = Vector2(d.y, d.x);
Vector<Vector2> pos = { a, b, b, c, c, d, d, a };
draw_multiline(pos, emissiong_ring_color);
draw_multiline(pos, emission_ring_color);
}
}
break;