mirror of
https://github.com/godotengine/godot.git
synced 2024-12-03 09:52:18 +08:00
Merge pull request #23056 from YeldhamDev/stylebox_rings_removal
Remove unnecessary "rings" variable from "draw_rings()" in StyleBox
This commit is contained in:
commit
1dbb6e4554
@ -565,8 +565,6 @@ inline void draw_ring(Vector<Vector2> &verts, Vector<int> &indices, Vector<Color
|
||||
vert_offset = 0;
|
||||
}
|
||||
int adapted_corner_detail = (corner_radius[0] == 0 && corner_radius[1] == 0 && corner_radius[2] == 0 && corner_radius[3] == 0) ? 1 : corner_detail;
|
||||
int rings = (border_width[0] == 0 && border_width[1] == 0 && border_width[2] == 0 && border_width[3] == 0) ? 1 : 2;
|
||||
rings = 2;
|
||||
|
||||
int ring_corner_radius[4];
|
||||
set_inner_corner_radius(style_rect, ring_rect, corner_radius, ring_corner_radius);
|
||||
@ -592,7 +590,7 @@ inline void draw_ring(Vector<Vector2> &verts, Vector<int> &indices, Vector<Color
|
||||
//calculate the vert array
|
||||
for (int corner_index = 0; corner_index < 4; corner_index++) {
|
||||
for (int detail = 0; detail <= adapted_corner_detail; detail++) {
|
||||
for (int inner_outer = (2 - rings); inner_outer < 2; inner_outer++) {
|
||||
for (int inner_outer = 0; inner_outer < 2; inner_outer++) {
|
||||
float radius;
|
||||
Color color;
|
||||
Point2 corner_point;
|
||||
@ -613,19 +611,17 @@ inline void draw_ring(Vector<Vector2> &verts, Vector<int> &indices, Vector<Color
|
||||
}
|
||||
}
|
||||
|
||||
if (rings == 2) {
|
||||
int vert_count = (adapted_corner_detail + 1) * 4 * rings;
|
||||
//fill the indices and the colors for the border
|
||||
for (int i = 0; i < vert_count; i++) {
|
||||
//poly 1
|
||||
indices.push_back(vert_offset + ((i + 0) % vert_count));
|
||||
indices.push_back(vert_offset + ((i + 2) % vert_count));
|
||||
indices.push_back(vert_offset + ((i + 1) % vert_count));
|
||||
//poly 2
|
||||
indices.push_back(vert_offset + ((i + 1) % vert_count));
|
||||
indices.push_back(vert_offset + ((i + 2) % vert_count));
|
||||
indices.push_back(vert_offset + ((i + 3) % vert_count));
|
||||
}
|
||||
int vert_count = (adapted_corner_detail + 1) * 4 * 2;
|
||||
//fill the indices and the colors for the border
|
||||
for (int i = 0; i < vert_count; i++) {
|
||||
//poly 1
|
||||
indices.push_back(vert_offset + ((i + 0) % vert_count));
|
||||
indices.push_back(vert_offset + ((i + 2) % vert_count));
|
||||
indices.push_back(vert_offset + ((i + 1) % vert_count));
|
||||
//poly 2
|
||||
indices.push_back(vert_offset + ((i + 1) % vert_count));
|
||||
indices.push_back(vert_offset + ((i + 2) % vert_count));
|
||||
indices.push_back(vert_offset + ((i + 3) % vert_count));
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user