Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bounds fixes in TextureAtlas import #68380

Merged
merged 1 commit into from
Jun 22, 2023

Conversation

AThousandShips
Copy link
Member

@AThousandShips AThousandShips commented Nov 7, 2022

Fixes Importing of TextureAtlas in Mesh2D mode, adding settings for the generation of the triangulation which was not optimal, using the same options as used in Sprite2D editor

There is still a problem with gaps in the texture (see #68350) and if I find a way to solve that I will add that here but otherwise I will leave that for someone else I currently cannot see a solution.

Currently not fixing the errors in rasterisation, will investigate further later or let someone else solve that (added a note about this).

@AThousandShips AThousandShips requested a review from a team as a code owner November 7, 2022 16:27
@clayjohn clayjohn requested a review from kleonc November 7, 2022 17:33
@clayjohn clayjohn added this to the 4.0 milestone Nov 7, 2022
@AThousandShips
Copy link
Member Author

Still seeing some issues so will test further before this is fully resolved

Copy link
Member

@kleonc kleonc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adding new options for importing TextureAtlas in a Mesh2D mode seems like a good idea to me, but I don't think that's an actual bugfix. With the new options now the user would need to find the parameters which would result in a not buggy import. So as an enhancement it makes sense but I don't think it's an actual bugfix.

The actual problem seems to be the BitMap::clip_opaque_to_polygons method:

  • It can produce lists of points not representing actual polygons. For these triangulation will fail and in the relevant step in the atlas packer it would result in a mesh with n vertices and 0 faces. Most likely caused by the reduce() step. Besides potentially fixing it to always produce valid polygons, it's probably a good idea to check whether the triangulation succeeded and error / somehow inform the user about the fail.
  • It can produce kinda duplicated polygons (maybe overlapping too? 🤔). For example for this image from the MRP this script:
@tool
extends EditorScript

func _run():
	var texture_path: String = ...
	var out_path: String = ...
	
	var img: Image = load(texture_path).get_image()	
	var f := FileAccess.open(out_path, FileAccess.WRITE)
	
	for alpha_threshold in [0.0, 0.1]:
		var bm := BitMap.new()
		bm.create_from_image_alpha(img, alpha_threshold)
		
		bm.convert_to_image().save_png("bit_mask_alpha_threshold_%.1f.png" % [alpha_threshold])
		
		var whole_rect: Rect2i = Rect2(Vector2.ZERO, bm.get_size())
		var simplification_epsilon := 0.0		
		var polys: Array[PackedVector2Array] = bm.opaque_to_polygons(whole_rect, simplification_epsilon)		
		
		f.store_line("alpha_threshold = %.1f" % [alpha_threshold])
		for i in polys.size():
			var p = polys[i]
			f.store_line("  polys[%d] size=%d" % [i, p.size()])
			f.store_line("    %s" % [p])
			f.store_line("")

outputs:
bit_mask_alpha_threshold_0.0.png
bit_mask_alpha_threshold_0.1.png

alpha_threshold = 0.0
  polys[0] size=2052
    [(709, 398), (708, 398), (708, 414), (709, 414), (709, 423), (708, 423), (708, 424), (707, 424), (707, 426), (706, 426), (706, 430), (705, 430), (705, 435), (704, 435), (704, 440), (703, 440), (703, 445), (702, 445), (702, 451), (701, 451), (701, 454), (700, 454), (700, 457), (699, 457), (699, 460), (698, 460), (698, 464), (697, 464), (697, 467), (696, 467), (696, 471), (695, 471), (695, 476), (694, 476), (694, 485), (693, 485), (693, 489), (692, 489), (692, 487), (691, 487), (691, 486), (690, 486), (690, 484), (689, 484), (689, 483), (688, 483), (688, 482), (687, 482), (687, 480), (686, 480), (686, 478), (685, 478), (685, 476), (684, 476), (684, 472), (683, 472), (683, 470), (682, 470), (682, 469), (681, 469), (681, 467), (680, 467), (680, 466), (679, 466), (679, 465), (678, 465), (678, 463), (677, 463), (677, 461), (676, 461), (676, 458), (675, 458), (675, 455), (674, 455), (674, 453), (672, 453), (672, 451), (671, 451), (671, 450), (670, 450), (670, 449), (669, 449), (669, 448), (668, 448), (668, 447), (667, 447), (667, 446), (666, 446), (666, 445), (665, 445), (665, 444), (664, 444), (664, 443), (663, 443), (663, 441), (662, 441), (662, 440), (661, 440), (661, 439), (660, 439), (660, 438), (659, 438), (659, 437), (658, 437), (658, 436), (657, 436), (657, 434), (656, 434), (656, 431), (655, 431), (655, 428), (654, 428), (654, 426), (652, 426), (652, 428), (653, 428), (653, 429), (652, 429), (652, 428), (651, 428), (651, 426), (650, 426), (650, 424), (649, 424), (649, 423), (647, 423), (647, 424), (646, 424), (646, 425), (645, 425), (645, 427), (644, 427), (644, 471), (645, 471), (645, 476), (646, 476), (646, 479), (647, 479), (647, 484), (648, 484), (648, 495), (649, 495), (649, 504), (650, 504), (650, 512), (651, 512), (651, 519), (652, 519), (652, 530), (653, 530), (653, 536), (646, 536), (646, 535), (648, 535), (648, 534), (638, 534), (638, 533), (633, 533), (633, 532), (622, 532), (622, 531), (618, 531), (618, 530), (612, 530), (612, 529), (606, 529), (606, 528), (596, 528), (596, 527), (587, 527), (587, 526), (581, 526), (581, 525), (571, 525), (571, 524), (568, 524), (568, 525), (567, 525), (567, 526), (569, 526), (569, 527), (571, 527), (571, 528), (570, 528), (570, 529), (568, 529), (568, 530), (567, 530), (567, 531), (565, 531), (565, 530), (566, 530), (566, 529), (563, 529), (563, 530), (562, 530), (562, 531), (560, 531), (560, 532), (556, 532), (556, 533), (555, 533), (555, 535), (553, 535), (553, 536), (551, 536), (551, 537), (549, 537), (549, 538), (547, 538), (547, 539), (545, 539), (545, 540), (544, 540), (544, 542), (542, 542), (542, 543), (541, 543), (541, 545), (539, 545), (539, 546), (537, 546), (537, 547), (536, 547), (536, 548), (534, 548), (534, 549), (532, 549), (532, 550), (530, 550), (530, 551), (524, 551), (524, 552), (514, 552), (514, 553), (512, 553), (512, 554), (511, 554), (511, 555), (509, 555), (509, 556), (502, 556), (502, 557), (499, 557), (499, 558), (497, 558), (497, 559), (495, 559), (495, 560), (493, 560), (493, 561), (492, 561), (492, 562), (491, 562), (491, 563), (490, 563), (490, 564), (487, 564), (487, 565), (484, 565), (484, 564), (478, 564), (478, 565), (477, 565), (477, 566), (475, 566), (475, 570), (476, 570), (476, 571), (478, 571), (478, 572), (477, 572), (477, 573), (483, 573), (483, 575), (481, 575), (481, 576), (478, 576), (478, 577), (474, 577), (474, 578), (471, 578), (471, 579), (469, 579), (469, 580), (467, 580), (467, 585), (468, 585), (468, 586), (469, 586), (469, 587), (471, 587), (471, 588), (473, 588), (473, 589), (479, 589), (479, 588), (486, 588), (486, 590), (485, 590), (485, 592), (486, 592), (486, 594), (487, 594), (487, 595), (488, 595), (488, 602), (491, 602), (491, 601), (492, 601), (492, 603), (494, 603), (494, 602), (495, 602), (495, 600), (496, 600), (496, 598), (497, 598), (497, 597), (498, 597), (498, 594), (499, 594), (499, 591), (500, 591), (500, 589), (501, 589), (501, 586), (502, 586), (502, 590), (503, 590), (503, 593), (504, 593), (504, 595), (505, 595), (505, 589), (504, 589), (504, 588), (503, 588), (503, 585), (504, 585), (504, 583), (505, 583), (505, 585), (506, 585), (506, 589), (507, 589), (507, 591), (508, 591), (508, 593), (509, 593), (509, 595), (510, 595), (510, 598), (511, 598), (511, 599), (514, 599), (514, 598), (515, 598), (515, 597), (516, 597), (516, 596), (517, 596), (517, 585), (518, 585), (518, 584), (521, 584), (521, 582), (522, 582), (522, 580), (523, 580), (523, 579), (524, 579), (524, 578), (526, 578), (526, 577), (529, 577), (529, 576), (531, 576), (531, 575), (532, 575), (532, 574), (533, 574), (533, 573), (534, 573), (534, 572), (536, 572), (536, 573), (535, 573), (535, 574), (534, 574), (534, 575), (533, 575), (533, 576), (535, 576), (535, 577), (536, 577), (536, 576), (537, 576), (537, 575), (538, 575), (538, 574), (539, 574), (539, 573), (541, 573), (541, 572), (544, 572), (544, 571), (545, 571), (545, 572), (546, 572), (546, 573), (547, 573), (547, 574), (549, 574), (549, 573), (552, 573), (552, 572), (554, 572), (554, 571), (556, 571), (556, 570), (558, 570), (558, 571), (559, 571), (559, 572), (560, 572), (560, 573), (561, 573), (561, 574), (562, 574), (562, 579), (564, 579), (564, 578), (565, 578), (565, 579), (566, 579), (566, 581), (565, 581), (565, 583), (564, 583), (564, 584), (563, 584), (563, 586), (562, 586), (562, 587), (561, 587), (561, 588), (560, 588), (560, 603), (561, 603), (561, 604), (563, 604), (563, 603), (564, 603), (564, 602), (565, 602), (565, 601), (566, 601), (566, 600), (567, 600), (567, 599), (568, 599), (568, 598), (569, 598), (569, 597), (570, 597), (570, 596), (571, 596), (571, 595), (572, 595), (572, 594), (573, 594), (573, 597), (574, 597), (574, 599), (575, 599), (575, 593), (576, 593), (576, 592), (577, 592), (577, 593), (578, 593), (578, 594), (579, 594), (579, 597), (580, 597), (580, 605), (581, 605), (581, 606), (583, 606), (583, 615), (584, 615), (584, 618), (585, 618), (585, 620), (586, 620), (586, 622), (587, 622), (587, 623), (588, 623), (588, 626), (589, 626), (589, 628), (590, 628), (590, 631), (591, 631), (591, 635), (592, 635), (592, 638), (593, 638), (593, 641), (594, 641), (594, 644), (595, 644), (595, 648), (596, 648), (596, 651), (597, 651), (597, 670), (596, 670), (596, 676), (595, 676), (595, 679), (596, 679), (596, 680), (598, 680), (598, 677), (599, 677), (599, 674), (600, 674), (600, 672), (601, 672), (601, 670), (602, 670), (602, 668), (603, 668), (603, 667), (604, 667), (604, 665), (605, 665), (605, 664), (606, 664), (606, 663), (607, 663), (607, 662), (608, 662), (608, 660), (609, 660), (609, 659), (610, 659), (610, 658), (611, 658), (611, 657), (612, 657), (612, 656), (613, 656), (613, 655), (614, 655), (614, 654), (615, 654), (615, 653), (616, 653), (616, 652), (617, 652), (617, 651), (618, 651), (618, 649), (619, 649), (619, 648), (620, 648), (620, 647), (621, 647), (621, 646), (622, 646), (622, 645), (623, 645), (623, 644), (625, 644), (625, 643), (626, 643), (626, 642), (627, 642), (627, 641), (628, 641), (628, 640), (629, 640), (629, 639), (630, 639), (630, 638), (632, 638), (632, 637), (634, 637), (634, 636), (636, 636), (636, 635), (638, 635), (638, 634), (641, 634), (641, 633), (643, 633), (643, 632), (645, 632), (645, 631), (647, 631), (647, 630), (650, 630), (650, 629), (652, 629), (652, 628), (654, 628), (654, 627), (656, 627), (656, 626), (658, 626), (658, 625), (660, 625), (660, 624), (661, 624), (661, 623), (663, 623), (663, 622), (665, 622), (665, 621), (667, 621), (667, 620), (669, 620), (669, 619), (671, 619), (671, 618), (673, 618), (673, 617), (674, 617), (674, 616), (676, 616), (676, 615), (678, 615), (678, 614), (679, 614), (679, 613), (683, 613), (683, 612), (685, 612), (685, 611), (687, 611), (687, 610), (688, 610), (688, 609), (690, 609), (690, 608), (695, 608), (695, 607), (698, 607), (698, 606), (700, 606), (700, 605), (702, 605), (702, 604), (704, 604), (704, 603), (707, 603), (707, 605), (708, 605), (708, 611), (709, 611), (709, 613), (708, 613), (708, 614), (707, 614), (707, 615), (706, 615), (706, 616), (705, 616), (705, 618), (707, 618), (707, 617), (708, 617), (708, 616), (711, 616), (711, 617), (712, 617), (712, 618), (713, 618), (713, 619), (715, 619), (715, 620), (716, 620), (716, 621), (718, 621), (718, 622), (721, 622), (721, 621), (724, 621), (724, 622), (726, 622), (726, 623), (728, 623), (728, 624), (730, 624), (730, 625), (731, 625), (731, 626), (733, 626), (733, 627), (734, 627), (734, 628), (736, 628), (736, 629), (738, 629), (738, 630), (741, 630), (741, 631), (745, 631), (745, 632), (746, 632), (746, 636), (747, 636), (747, 645), (746, 645), (746, 647), (745, 647), (745, 653), (744, 653), (744, 659), (743, 659), (743, 662), (742, 662), (742, 665), (741, 665), (741, 667), (740, 667), (740, 669), (739, 669), (739, 673), (738, 673), (738, 676), (737, 676), (737, 679), (736, 679), (736, 681), (735, 681), (735, 684), (734, 684), (734, 686), (733, 686), (733, 688), (732, 688), (732, 690), (733, 690), (733, 692), (736, 692), (736, 693), (743, 693), (743, 694), (744, 694), (744, 695), (745, 695), (745, 694), (747, 694), (747, 695), (746, 695), (746, 697), (745, 697), (745, 700), (744, 700), (744, 703), (746, 703), (746, 700), (747, 700), (747, 697), (748, 697), (748, 695), (749, 695), (749, 694), (750, 694), (750, 695), (751, 695), (751, 696), (752, 696), (752, 697), (754, 697), (754, 698), (756, 698), (756, 699), (760, 699), (760, 700), (761, 700), (761, 702), (760, 702), (760, 704), (759, 704), (759, 706), (758, 706), (758, 707), (757, 707), (757, 708), (756, 708), (756, 709), (755, 709), (755, 710), (754, 710), (754, 714), (753, 714), (753, 716), (752, 716), (752, 717), (751, 717), (751, 719), (750, 719), (750, 720), (749, 720), (749, 721), (748, 721), (748, 722), (747, 722), (747, 724), (746, 724), (746, 725), (745, 725), (745, 726), (744, 726), (744, 727), (743, 727), (743, 729), (742, 729), (742, 731), (741, 731), (741, 734), (740, 734), (740, 736), (739, 736), (739, 737), (738, 737), (738, 739), (737, 739), (737, 741), (736, 741), (736, 742), (735, 742), (735, 744), (734, 744), (734, 745), (732, 745), (732, 746), (731, 746), (731, 747), (730, 747), (730, 748), (729, 748), (729, 750), (728, 750), (728, 751), (727, 751), (727, 752), (726, 752), (726, 753), (725, 753), (725, 754), (724, 754), (724, 755), (723, 755), (723, 756), (722, 756), (722, 757), (721, 757), (721, 758), (720, 758), (720, 760), (719, 760), (719, 761), (718, 761), (718, 762), (717, 762), (717, 763), (716, 763), (716, 765), (715, 765), (715, 766), (714, 766), (714, 768), (713, 768), (713, 770), (712, 770), (712, 772), (711, 772), (711, 775), (710, 775), (710, 778), (709, 778), (709, 779), (708, 779), (708, 781), (707, 781), (707, 782), (706, 782), (706, 783), (705, 783), (705, 785), (704, 785), (704, 786), (703, 786), (703, 787), (702, 787), (702, 789), (701, 789), (701, 790), (700, 790), (700, 791), (699, 791), (699, 792), (698, 792), (698, 794), (697, 794), (697, 795), (696, 795), (696, 798), (695, 798), (695, 799), (694, 799), (694, 801), (693, 801), (693, 805), (694, 805), (694, 804), (696, 804), (696, 803), (697, 803), (697, 802), (699, 802), (699, 801), (701, 801), (701, 800), (702, 800), (702, 799), (704, 799), (704, 798), (706, 798), (706, 797), (707, 797), (707, 796), (709, 796), (709, 795), (711, 795), (711, 794), (713, 794), (713, 793), (715, 793), (715, 792), (716, 792), (716, 791), (718, 791), (718, 790), (719, 790), (719, 789), (723, 789), (723, 788), (724, 788), (724, 789), (723, 789), (723, 791), (722, 791), (722, 794), (721, 794), (721, 797), (720, 797), (720, 801), (719, 801), (719, 804), (718, 804), (718, 808), (717, 808), (717, 812), (716, 812), (716, 815), (715, 815), (715, 817), (714, 817), (714, 820), (713, 820), (713, 822), (712, 822), (712, 825), (711, 825), (711, 828), (710, 828), (710, 831), (709, 831), (709, 834), (708, 834), (708, 824), (707, 824), (707, 818), (705, 818), (705, 821), (704, 821), (704, 824), (703, 824), (703, 827), (702, 827), (702, 837), (703, 837), (703, 848), (704, 848), (704, 850), (703, 850), (703, 853), (702, 853), (702, 856), (701, 856), (701, 860), (700, 860), (700, 866), (699, 866), (699, 870), (698, 870), (698, 874), (697, 874), (697, 877), (696, 877), (696, 880), (695, 880), (695, 884), (694, 884), (694, 888), (693, 888), (693, 895), (692, 895), (692, 901), (691, 901), (691, 904), (690, 904), (690, 907), (689, 907), (689, 909), (688, 909), (688, 912), (687, 912), (687, 914), (686, 914), (686, 916), (685, 916), (685, 918), (684, 918), (684, 919), (683, 919), (683, 921), (682, 921), (682, 923), (681, 923), (681, 924), (680, 924), (680, 926), (679, 926), (679, 928), (678, 928), (678, 930), (677, 930), (677, 932), (676, 932), (676, 934), (675, 934), (675, 936), (674, 936), (674, 938), (673, 938), (673, 939), (672, 939), (672, 940), (670, 940), (670, 941), (669, 941), (669, 943), (668, 943), (668, 946), (667, 946), (667, 947), (666, 947), (666, 948), (665, 948), (665, 950), (664, 950), (664, 951), (663, 951), (663, 953), (662, 953), (662, 957), (661, 957), (661, 958), (659, 958), (659, 959), (658, 959), (658, 961), (657, 961), (657, 963), (656, 963), (656, 965), (655, 965), (655, 967), (654, 967), (654, 969), (653, 969), (653, 970), (652, 970), (652, 972), (651, 972), (651, 973), (650, 973), (650, 974), (649, 974), (649, 975), (648, 975), (648, 977), (647, 977), (647, 978), (646, 978), (646, 979), (645, 979), (645, 980), (644, 980), (644, 981), (640, 981), (640, 984), (641, 984), (641, 985), (654, 985), (654, 986), (657, 986), (657, 987), (661, 987), (661, 988), (664, 988), (664, 989), (666, 989), (666, 990), (668, 990), (668, 991), (671, 991), (671, 992), (678, 992), (678, 991), (710, 991), (710, 992), (739, 992), (739, 993), (820, 993), (820, 994), (821, 994), (821, 995), (823, 995), (823, 996), (839, 996), (839, 995), (845, 995), (845, 994), (851, 994), (851, 993), (855, 993), (855, 992), (860, 992), (860, 991), (864, 991), (864, 990), (872, 990), (872, 989), (884, 989), (884, 988), (892, 988), (892, 987), (903, 987), (903, 986), (905, 986), (905, 985), (907, 985), (907, 984), (911, 984), (911, 983), (934, 983), (934, 982), (973, 982), (973, 979), (974, 979), (974, 980), (975, 980), (975, 981), (976, 981), (976, 982), (977, 982), (977, 983), (978, 983), (978, 985), (979, 985), (979, 986), (980, 986), (980, 987), (981, 987), (981, 989), (982, 989), (982, 990), (983, 990), (983, 989), (984, 989), (984, 988), (985, 988), (985, 986), (983, 986), (983, 987), (982, 987), (982, 985), (981, 985), (981, 984), (980, 984), (980, 982), (979, 982), (979, 981), (978, 981), (978, 980), (977, 980), (977, 979), (976, 979), (976, 978), (975, 978), (975, 977), (974, 977), (974, 976), (973, 976), (973, 973), (972, 973), (972, 971), (968, 971), (968, 970), (964, 970), (964, 969), (963, 969), (963, 968), (961, 968), (961, 967), (959, 967), (959, 966), (958, 966), (958, 965), (956, 965), (956, 964), (955, 964), (955, 963), (954, 963), (954, 962), (953, 962), (953, 961), (952, 961), (952, 960), (950, 960), (950, 959), (949, 959), (949, 958), (948, 958), (948, 957), (947, 957), (947, 956), (945, 956), (945, 955), (944, 955), (944, 954), (942, 954), (942, 953), (941, 953), (941, 952), (938, 952), (938, 951), (934, 951), (934, 950), (932, 950), (932, 949), (930, 949), (930, 948), (928, 948), (928, 947), (927, 947), (927, 946), (926, 946), (926, 945), (924, 945), (924, 944), (923, 944), (923, 943), (922, 943), (922, 942), (921, 942), (921, 941), (920, 941), (920, 940), (919, 940), (919, 939), (918, 939), (918, 938), (917, 938), (917, 937), (916, 937), (916, 936), (915, 936), (915, 935), (914, 935), (914, 933), (913, 933), (913, 932), (912, 932), (912, 930), (911, 930), (911, 929), (910, 929), (910, 927), (909, 927), (909, 926), (908, 926), (908, 924), (907, 924), (907, 922), (906, 922), (906, 921), (905, 921), (905, 919), (904, 919), (904, 917), (903, 917), (903, 915), (902, 915), (902, 913), (901, 913), (901, 910), (900, 910), (900, 908), (899, 908), (899, 905), (898, 905), (898, 903), (897, 903), (897, 900), (896, 900), (896, 898), (895, 898), (895, 895), (894, 895), (894, 892), (893, 892), (893, 889), (892, 889), (892, 886), (891, 886), (891, 883), (890, 883), (890, 880), (889, 880), (889, 876), (888, 876), (888, 873), (887, 873), (887, 870), (886, 870), (886, 867), (885, 867), (885, 863), (884, 863), (884, 860), (883, 860), (883, 853), (884, 853), (884, 851), (885, 851), (885, 822), (886, 822), (886, 797), (887, 797), (887, 791), (888, 791), (888, 789), (889, 789), (889, 787), (890, 787), (890, 786), (891, 786), (891, 785), (892, 785), (892, 783), (893, 783), (893, 782), (894, 782), (894, 781), (895, 781), (895, 779), (896, 779), (896, 778), (897, 778), (897, 776), (898, 776), (898, 774), (899, 774), (899, 772), (900, 772), (900, 770), (901, 770), (901, 768), (902, 768), (902, 766), (903, 766), (903, 764), (904, 764), (904, 762), (905, 762), (905, 759), (906, 759), (906, 757), (907, 757), (907, 755), (908, 755), (908, 752), (909, 752), (909, 749), (910, 749), (910, 746), (911, 746), (911, 738), (909, 738), (909, 737), (907, 737), (907, 738), (906, 738), (906, 739), (905, 739), (905, 741), (904, 741), (904, 744), (903, 744), (903, 747), (902, 747), (902, 750), (901, 750), (901, 752), (900, 752), (900, 755), (899, 755), (899, 757), (898, 757), (898, 759), (897, 759), (897, 762), (896, 762), (896, 764), (895, 764), (895, 766), (894, 766), (894, 768), (893, 768), (893, 770), (892, 770), (892, 772), (891, 772), (891, 774), (890, 774), (890, 777), (889, 777), (889, 772), (890, 772), (890, 766), (891, 766), (891, 760), (892, 760), (892, 754), (893, 754), (893, 749), (894, 749), (894, 743), (895, 743), (895, 738), (896, 738), (896, 737), (897, 737), (897, 740), (898, 740), (898, 741), (899, 741), (899, 742), (900, 742), (900, 744), (901, 744), (901, 745), (902, 745), (902, 743), (903, 743), (903, 742), (902, 742), (902, 741), (901, 741), (901, 740), (900, 740), (900, 738), (898, 738), (898, 736), (900, 736), (900, 735), (901, 735), (901, 734), (903, 734), (903, 733), (904, 733), (904, 732), (906, 732), (906, 731), (908, 731), (908, 730), (909, 730), (909, 729), (911, 729), (911, 728), (912, 728), (912, 727), (914, 727), (914, 728), (915, 728), (915, 727), (916, 727), (916, 726), (917, 726), (917, 725), (918, 725), (918, 724), (919, 724), (919, 725), (918, 725), (918, 726), (917, 726), (917, 729), (916, 729), (916, 731), (917, 731), (917, 730), (920, 730), (920, 729), (921, 729), (921, 723), (922, 723), (922, 722), (930, 722), (930, 723), (937, 723), (937, 722), (940, 722), (940, 721), (943, 721), (943, 720), (945, 720), (945, 719), (946, 719), (946, 718), (947, 718), (947, 717), (948, 717), (948, 715), (950, 715), (950, 714), (951, 714), (951, 712), (953, 712), (953, 711), (955, 711), (955, 710), (956, 710), (956, 709), (957, 709), (957, 708), (958, 708), (958, 704), (957, 704), (957, 703), (956, 703), (956, 702), (955, 702), (955, 701), (953, 701), (953, 699), (952, 699), (952, 697), (951, 697), (951, 696), (950, 696), (950, 695), (949, 695), (949, 694), (947, 694), (947, 693), (945, 693), (945, 692), (935, 692), (935, 693), (933, 693), (933, 694), (931, 694), (931, 693), (927, 693), (927, 692), (922, 692), (922, 691), (919, 691), (919, 690), (917, 690), (917, 689), (916, 689), (916, 688), (915, 688), (915, 686), (914, 686), (914, 685), (913, 685), (913, 683), (912, 683), (912, 681), (911, 681), (911, 680), (910, 680), (910, 678), (909, 678), (909, 677), (908, 677), (908, 675), (907, 675), (907, 674), (906, 674), (906, 672), (905, 672), (905, 671), (904, 671), (904, 670), (903, 670), (903, 665), (902, 665), (902, 664), (901, 664), (901, 663), (900, 663), (900, 662), (898, 662), (898, 661), (895, 661), (895, 660), (893, 660), (893, 659), (890, 659), (890, 658), (891, 658), (891, 657), (893, 657), (893, 656), (894, 656), (894, 655), (891, 655), (891, 656), (888, 656), (888, 657), (885, 657), (885, 656), (883, 656), (883, 650), (884, 650), (884, 647), (882, 647), (882, 649), (881, 649), (881, 651), (880, 651), (880, 655), (879, 655), (879, 656), (878, 656), (878, 655), (877, 655), (877, 654), (875, 654), (875, 652), (876, 652), (876, 650), (877, 650), (877, 649), (878, 649), (878, 645), (879, 645), (879, 637), (880, 637), (880, 636), (882, 636), (882, 635), (884, 635), (884, 632), (883, 632), (883, 630), (882, 630), (882, 629), (881, 629), (881, 627), (880, 627), (880, 625), (879, 625), (879, 623), (878, 623), (878, 621), (877, 621), (877, 619), (876, 619), (876, 618), (875, 618), (875, 616), (874, 616), (874, 614), (873, 614), (873, 613), (872, 613), (872, 611), (871, 611), (871, 606), (870, 606), (870, 599), (871, 599), (871, 598), (873, 598), (873, 600), (874, 600), (874, 601), (879, 601), (879, 600), (881, 600), (881, 599), (883, 599), (883, 598), (885, 598), (885, 597), (886, 597), (886, 595), (887, 595), (887, 593), (888, 593), (888, 590), (889, 590), (889, 589), (890, 589), (890, 588), (888, 588), (888, 589), (887, 589), (887, 590), (883, 590), (883, 591), (881, 591), (881, 592), (880, 592), (880, 593), (878, 593), (878, 594), (876, 594), (876, 593), (877, 593), (877, 592), (878, 592), (878, 591), (879, 591), (879, 590), (880, 590), (880, 589), (881, 589), (881, 588), (882, 588), (882, 587), (883, 587), (883, 586), (884, 586), (884, 584), (885, 584), (885, 583), (886, 583), (886, 581), (887, 581), (887, 577), (888, 577), (888, 575), (889, 575), (889, 574), (890, 574), (890, 573), (893, 573), (893, 572), (895, 572), (895, 571), (897, 571), (897, 570), (899, 570), (899, 569), (900, 569), (900, 568), (901, 568), (901, 566), (902, 566), (902, 560), (901, 560), (901, 557), (902, 557), (902, 555), (903, 555), (903, 553), (904, 553), (904, 551), (905, 551), (905, 550), (906, 550), (906, 548), (907, 548), (907, 546), (908, 546), (908, 543), (909, 543), (909, 539), (908, 539), (908, 538), (906, 538), (906, 537), (903, 537), (903, 536), (902, 536), (902, 535), (899, 535), (899, 534), (890, 534), (890, 533), (884, 533), (884, 532), (880, 532), (880, 531), (878, 531), (878, 530), (876, 530), (876, 529), (874, 529), (874, 528), (873, 528), (873, 527), (872, 527), (872, 526), (871, 526), (871, 525), (870, 525), (870, 524), (869, 524), (869, 523), (868, 523), (868, 522), (867, 522), (867, 520), (866, 520), (866, 518), (865, 518), (865, 517), (864, 517), (864, 515), (863, 515), (863, 514), (862, 514), (862, 513), (853, 513), (853, 514), (848, 514), (848, 513), (847, 513), (847, 512), (845, 512), (845, 511), (843, 511), (843, 510), (842, 510), (842, 509), (841, 509), (841, 507), (840, 507), (840, 506), (839, 506), (839, 505), (838, 505), (838, 504), (837, 504), (837, 503), (836, 503), (836, 502), (835, 502), (835, 501), (833, 501), (833, 500), (832, 500), (832, 499), (830, 499), (830, 498), (829, 498), (829, 497), (827, 497), (827, 496), (825, 496), (825, 495), (823, 495), (823, 494), (818, 494), (818, 493), (816, 493), (816, 494), (812, 494), (812, 495), (810, 495), (810, 496), (808, 496), (808, 497), (807, 497), (807, 498), (806, 498), (806, 499), (805, 499), (805, 500), (800, 500), (800, 501), (797, 501), (797, 502), (794, 502), (794, 503), (792, 503), (792, 498), (791, 498), (791, 495), (790, 495), (790, 493), (789, 493), (789, 492), (788, 492), (788, 491), (786, 491), (786, 490), (785, 490), (785, 488), (783, 488), (783, 487), (782, 487), (782, 488), (781, 488), (781, 489), (777, 489), (777, 490), (775, 490), (775, 491), (773, 491), (773, 492), (772, 492), (772, 493), (771, 493), (771, 494), (770, 494), (770, 495), (769, 495), (769, 494), (767, 494), (767, 493), (766, 493), (766, 492), (765, 492), (765, 490), (764, 490), (764, 488), (763, 488), (763, 487), (761, 487), (761, 486), (759, 486), (759, 485), (754, 485), (754, 483), (753, 483), (753, 482), (749, 482), (749, 483), (748, 483), (748, 484), (747, 484), (747, 486), (745, 486), (745, 482), (744, 482), (744, 480), (743, 480), (743, 477), (742, 477), (742, 474), (741, 474), (741, 471), (740, 471), (740, 468), (739, 468), (739, 465), (738, 465), (738, 462), (737, 462), (737, 459), (736, 459), (736, 456), (735, 456), (735, 453), (734, 453), (734, 450), (733, 450), (733, 447), (732, 447), (732, 445), (731, 445), (731, 442), (730, 442), (730, 440), (729, 440), (729, 437), (728, 437), (728, 435), (727, 435), (727, 432), (726, 432), (726, 430), (725, 430), (725, 427), (724, 427), (724, 425), (723, 425), (723, 423), (722, 423), (722, 421), (721, 421), (721, 419), (720, 419), (720, 417), (719, 417), (719, 415), (718, 415), (718, 413), (717, 413), (717, 411), (716, 411), (716, 409), (715, 409), (715, 406), (714, 406), (714, 404), (713, 404), (713, 401), (712, 401), (712, 397), (711, 397), (711, 396), (709, 396)]

  polys[1] size=4
    [(484, 563), (485, 563), (485, 561), (484, 561)]

  polys[2] size=4
    [(900, 748), (901, 748), (901, 747), (900, 747)]

  polys[3] size=8
    [(699, 839), (698, 839), (698, 842), (699, 842), (699, 841), (700, 841), (700, 837), (699, 837)]

  polys[4] size=28
    [(674, 876), (675, 876), (675, 877), (676, 877), (676, 878), (677, 878), (677, 880), (678, 880), (678, 881), (679, 881), (679, 883), (680, 883), (680, 886), (682, 886), (682, 883), (681, 883), (681, 881), (680, 881), (680, 879), (679, 879), (679, 878), (678, 878), (678, 877), (677, 877), (677, 875), (676, 875), (676, 874), (674, 874)]

alpha_threshold = 0.1
  polys[0] size=2050
    [(709, 399), (708, 399), (708, 411), (709, 411), (709, 423), (708, 423), (708, 425), (707, 425), (707, 427), (706, 427), (706, 431), (705, 431), (705, 435), (704, 435), (704, 440), (703, 440), (703, 446), (702, 446), (702, 451), (701, 451), (701, 455), (700, 455), (700, 458), (699, 458), (699, 461), (698, 461), (698, 464), (697, 464), (697, 467), (696, 467), (696, 471), (695, 471), (695, 482), (694, 482), (694, 485), (693, 485), (693, 489), (692, 489), (692, 488), (691, 488), (691, 486), (690, 486), (690, 485), (689, 485), (689, 483), (688, 483), (688, 482), (687, 482), (687, 480), (686, 480), (686, 478), (685, 478), (685, 476), (684, 476), (684, 474), (683, 474), (683, 471), (682, 471), (682, 470), (681, 470), (681, 469), (680, 469), (680, 467), (679, 467), (679, 466), (678, 466), (678, 464), (677, 464), (677, 461), (676, 461), (676, 458), (675, 458), (675, 455), (674, 455), (674, 453), (671, 453), (671, 451), (670, 451), (670, 450), (669, 450), (669, 448), (668, 448), (668, 447), (667, 447), (667, 446), (666, 446), (666, 445), (665, 445), (665, 444), (664, 444), (664, 443), (663, 443), (663, 442), (662, 442), (662, 440), (661, 440), (661, 439), (660, 439), (660, 438), (659, 438), (659, 437), (658, 437), (658, 436), (657, 436), (657, 434), (656, 434), (656, 431), (655, 431), (655, 429), (654, 429), (654, 427), (652, 427), (652, 428), (653, 428), (653, 430), (652, 430), (652, 429), (651, 429), (651, 427), (650, 427), (650, 426), (649, 426), (649, 424), (647, 424), (647, 425), (646, 425), (646, 426), (645, 426), (645, 428), (644, 428), (644, 470), (645, 470), (645, 475), (646, 475), (646, 479), (647, 479), (647, 482), (648, 482), (648, 493), (649, 493), (649, 502), (650, 502), (650, 510), (651, 510), (651, 518), (652, 518), (652, 528), (653, 528), (653, 536), (644, 536), (644, 535), (646, 535), (646, 534), (637, 534), (637, 533), (633, 533), (633, 532), (622, 532), (622, 531), (617, 531), (617, 530), (611, 530), (611, 529), (605, 529), (605, 528), (594, 528), (594, 527), (586, 527), (586, 526), (580, 526), (580, 525), (570, 525), (570, 524), (568, 524), (568, 525), (567, 525), (567, 526), (569, 526), (569, 527), (571, 527), (571, 528), (570, 528), (570, 529), (569, 529), (569, 530), (567, 530), (567, 531), (565, 531), (565, 529), (564, 529), (564, 530), (562, 530), (562, 531), (560, 531), (560, 532), (558, 532), (558, 533), (557, 533), (557, 534), (555, 534), (555, 535), (553, 535), (553, 536), (551, 536), (551, 537), (549, 537), (549, 538), (547, 538), (547, 539), (545, 539), (545, 540), (544, 540), (544, 542), (542, 542), (542, 544), (541, 544), (541, 545), (539, 545), (539, 546), (538, 546), (538, 547), (536, 547), (536, 548), (534, 548), (534, 549), (532, 549), (532, 550), (530, 550), (530, 551), (526, 551), (526, 552), (515, 552), (515, 553), (514, 553), (514, 554), (512, 554), (512, 555), (510, 555), (510, 556), (502, 556), (502, 557), (499, 557), (499, 558), (497, 558), (497, 559), (495, 559), (495, 560), (494, 560), (494, 561), (493, 561), (493, 562), (492, 562), (492, 563), (490, 563), (490, 564), (487, 564), (487, 565), (483, 565), (483, 564), (478, 564), (478, 565), (477, 565), (477, 566), (475, 566), (475, 569), (476, 569), (476, 570), (477, 570), (477, 571), (478, 571), (478, 573), (484, 573), (484, 574), (486, 574), (486, 575), (482, 575), (482, 576), (478, 576), (478, 577), (475, 577), (475, 578), (471, 578), (471, 579), (469, 579), (469, 580), (467, 580), (467, 585), (468, 585), (468, 586), (469, 586), (469, 587), (471, 587), (471, 588), (473, 588), (473, 589), (477, 589), (477, 588), (485, 588), (485, 587), (486, 587), (486, 592), (487, 592), (487, 595), (488, 595), (488, 601), (489, 601), (489, 602), (491, 602), (491, 601), (492, 601), (492, 603), (494, 603), (494, 602), (495, 602), (495, 600), (496, 600), (496, 598), (497, 598), (497, 596), (498, 596), (498, 593), (499, 593), (499, 591), (500, 591), (500, 588), (501, 588), (501, 586), (502, 586), (502, 585), (503, 585), (503, 583), (504, 583), (504, 581), (505, 581), (505, 584), (506, 584), (506, 588), (507, 588), (507, 591), (508, 591), (508, 592), (509, 592), (509, 595), (510, 595), (510, 598), (511, 598), (511, 599), (513, 599), (513, 598), (515, 598), (515, 597), (516, 597), (516, 596), (517, 596), (517, 587), (516, 587), (516, 586), (517, 586), (517, 585), (518, 585), (518, 583), (520, 583), (520, 582), (518, 582), (518, 580), (519, 580), (519, 579), (520, 579), (520, 578), (521, 578), (521, 577), (522, 577), (522, 576), (523, 576), (523, 575), (524, 575), (524, 574), (525, 574), (525, 573), (527, 573), (527, 574), (525, 574), (525, 576), (524, 576), (524, 577), (526, 577), (526, 576), (530, 576), (530, 575), (531, 575), (531, 574), (533, 574), (533, 572), (537, 572), (537, 573), (536, 573), (536, 574), (534, 574), (534, 576), (536, 576), (536, 575), (537, 575), (537, 574), (538, 574), (538, 573), (540, 573), (540, 572), (543, 572), (543, 571), (546, 571), (546, 572), (547, 572), (547, 573), (551, 573), (551, 572), (554, 572), (554, 571), (555, 571), (555, 570), (558, 570), (558, 571), (559, 571), (559, 572), (560, 572), (560, 573), (561, 573), (561, 574), (562, 574), (562, 575), (563, 575), (563, 577), (562, 577), (562, 578), (563, 578), (563, 579), (564, 579), (564, 577), (565, 577), (565, 579), (566, 579), (566, 581), (565, 581), (565, 583), (564, 583), (564, 585), (563, 585), (563, 586), (562, 586), (562, 587), (561, 587), (561, 589), (560, 589), (560, 603), (561, 603), (561, 604), (563, 604), (563, 603), (564, 603), (564, 602), (565, 602), (565, 601), (566, 601), (566, 600), (567, 600), (567, 599), (568, 599), (568, 598), (569, 598), (569, 597), (570, 597), (570, 596), (571, 596), (571, 595), (572, 595), (572, 594), (573, 594), (573, 596), (575, 596), (575, 592), (576, 592), (576, 591), (578, 591), (578, 593), (579, 593), (579, 594), (580, 594), (580, 597), (581, 597), (581, 605), (582, 605), (582, 606), (583, 606), (583, 609), (584, 609), (584, 610), (583, 610), (583, 615), (584, 615), (584, 618), (585, 618), (585, 620), (586, 620), (586, 621), (587, 621), (587, 623), (588, 623), (588, 625), (589, 625), (589, 628), (590, 628), (590, 631), (591, 631), (591, 634), (592, 634), (592, 637), (593, 637), (593, 641), (594, 641), (594, 644), (595, 644), (595, 647), (596, 647), (596, 651), (597, 651), (597, 655), (598, 655), (598, 658), (597, 658), (597, 671), (596, 671), (596, 677), (595, 677), (595, 679), (596, 679), (596, 680), (598, 680), (598, 677), (599, 677), (599, 674), (600, 674), (600, 672), (601, 672), (601, 670), (602, 670), (602, 668), (603, 668), (603, 667), (604, 667), (604, 665), (605, 665), (605, 664), (606, 664), (606, 663), (607, 663), (607, 661), (608, 661), (608, 660), (609, 660), (609, 659), (610, 659), (610, 658), (611, 658), (611, 657), (612, 657), (612, 656), (613, 656), (613, 655), (614, 655), (614, 654), (615, 654), (615, 652), (616, 652), (616, 651), (617, 651), (617, 650), (618, 650), (618, 649), (619, 649), (619, 648), (620, 648), (620, 647), (621, 647), (621, 646), (622, 646), (622, 645), (623, 645), (623, 644), (624, 644), (624, 643), (625, 643), (625, 642), (626, 642), (626, 641), (628, 641), (628, 640), (629, 640), (629, 639), (630, 639), (630, 638), (631, 638), (631, 637), (633, 637), (633, 636), (636, 636), (636, 635), (638, 635), (638, 634), (640, 634), (640, 633), (643, 633), (643, 632), (645, 632), (645, 631), (647, 631), (647, 630), (649, 630), (649, 629), (651, 629), (651, 628), (653, 628), (653, 627), (655, 627), (655, 626), (657, 626), (657, 625), (659, 625), (659, 624), (661, 624), (661, 623), (663, 623), (663, 622), (665, 622), (665, 621), (667, 621), (667, 620), (669, 620), (669, 619), (670, 619), (670, 618), (672, 618), (672, 617), (674, 617), (674, 616), (676, 616), (676, 615), (677, 615), (677, 614), (679, 614), (679, 613), (682, 613), (682, 612), (685, 612), (685, 611), (687, 611), (687, 610), (688, 610), (688, 609), (690, 609), (690, 608), (694, 608), (694, 607), (697, 607), (697, 606), (700, 606), (700, 605), (702, 605), (702, 604), (704, 604), (704, 603), (705, 603), (705, 602), (707, 602), (707, 604), (708, 604), (708, 606), (709, 606), (709, 613), (708, 613), (708, 614), (707, 614), (707, 615), (706, 615), (706, 617), (708, 617), (708, 616), (709, 616), (709, 615), (710, 615), (710, 616), (711, 616), (711, 617), (712, 617), (712, 618), (713, 618), (713, 619), (715, 619), (715, 620), (716, 620), (716, 621), (721, 621), (721, 620), (722, 620), (722, 621), (724, 621), (724, 622), (727, 622), (727, 623), (728, 623), (728, 624), (730, 624), (730, 625), (731, 625), (731, 626), (733, 626), (733, 627), (735, 627), (735, 628), (737, 628), (737, 629), (739, 629), (739, 630), (742, 630), (742, 631), (745, 631), (745, 632), (746, 632), (746, 635), (747, 635), (747, 645), (746, 645), (746, 650), (745, 650), (745, 658), (744, 658), (744, 662), (743, 662), (743, 664), (742, 664), (742, 666), (741, 666), (741, 669), (740, 669), (740, 671), (739, 671), (739, 674), (738, 674), (738, 677), (737, 677), (737, 679), (736, 679), (736, 681), (735, 681), (735, 684), (734, 684), (734, 686), (733, 686), (733, 691), (734, 691), (734, 692), (737, 692), (737, 693), (743, 693), (743, 694), (747, 694), (747, 695), (746, 695), (746, 697), (745, 697), (745, 700), (744, 700), (744, 703), (745, 703), (745, 702), (746, 702), (746, 699), (747, 699), (747, 697), (748, 697), (748, 694), (749, 694), (749, 693), (750, 693), (750, 694), (751, 694), (751, 695), (752, 695), (752, 696), (753, 696), (753, 697), (754, 697), (754, 698), (757, 698), (757, 699), (760, 699), (760, 700), (761, 700), (761, 702), (760, 702), (760, 704), (759, 704), (759, 706), (758, 706), (758, 707), (757, 707), (757, 708), (756, 708), (756, 709), (755, 709), (755, 710), (754, 710), (754, 711), (755, 711), (755, 714), (754, 714), (754, 715), (753, 715), (753, 717), (752, 717), (752, 718), (751, 718), (751, 720), (750, 720), (750, 721), (749, 721), (749, 722), (748, 722), (748, 723), (747, 723), (747, 725), (746, 725), (746, 726), (745, 726), (745, 727), (744, 727), (744, 728), (743, 728), (743, 731), (742, 731), (742, 733), (741, 733), (741, 735), (740, 735), (740, 737), (739, 737), (739, 738), (738, 738), (738, 740), (737, 740), (737, 741), (736, 741), (736, 743), (735, 743), (735, 744), (734, 744), (734, 745), (733, 745), (733, 746), (732, 746), (732, 747), (731, 747), (731, 748), (730, 748), (730, 749), (729, 749), (729, 750), (728, 750), (728, 751), (727, 751), (727, 752), (726, 752), (726, 753), (725, 753), (725, 754), (724, 754), (724, 755), (723, 755), (723, 756), (722, 756), (722, 757), (721, 757), (721, 759), (720, 759), (720, 760), (719, 760), (719, 761), (718, 761), (718, 762), (717, 762), (717, 763), (716, 763), (716, 765), (715, 765), (715, 767), (714, 767), (714, 768), (713, 768), (713, 770), (712, 770), (712, 773), (711, 773), (711, 776), (710, 776), (710, 778), (709, 778), (709, 780), (708, 780), (708, 781), (707, 781), (707, 782), (706, 782), (706, 784), (705, 784), (705, 785), (704, 785), (704, 786), (703, 786), (703, 787), (702, 787), (702, 789), (701, 789), (701, 790), (700, 790), (700, 791), (699, 791), (699, 793), (698, 793), (698, 794), (697, 794), (697, 796), (696, 796), (696, 798), (695, 798), (695, 800), (694, 800), (694, 801), (693, 801), (693, 804), (696, 804), (696, 803), (697, 803), (697, 802), (699, 802), (699, 801), (700, 801), (700, 800), (702, 800), (702, 799), (704, 799), (704, 798), (705, 798), (705, 797), (707, 797), (707, 796), (709, 796), (709, 795), (711, 795), (711, 794), (713, 794), (713, 793), (714, 793), (714, 792), (716, 792), (716, 791), (717, 791), (717, 790), (719, 790), (719, 789), (723, 789), (723, 788), (724, 788), (724, 789), (723, 789), (723, 792), (722, 792), (722, 795), (721, 795), (721, 798), (720, 798), (720, 801), (719, 801), (719, 805), (718, 805), (718, 809), (717, 809), (717, 812), (716, 812), (716, 815), (715, 815), (715, 818), (714, 818), (714, 820), (713, 820), (713, 823), (712, 823), (712, 826), (711, 826), (711, 829), (710, 829), (710, 832), (709, 832), (709, 835), (708, 835), (708, 826), (707, 826), (707, 820), (705, 820), (705, 823), (704, 823), (704, 826), (703, 826), (703, 829), (702, 829), (702, 835), (703, 835), (703, 846), (704, 846), (704, 850), (703, 850), (703, 854), (702, 854), (702, 857), (701, 857), (701, 861), (700, 861), (700, 868), (699, 868), (699, 871), (698, 871), (698, 874), (697, 874), (697, 877), (696, 877), (696, 881), (695, 881), (695, 885), (694, 885), (694, 889), (693, 889), (693, 896), (692, 896), (692, 902), (691, 902), (691, 905), (690, 905), (690, 907), (689, 907), (689, 910), (688, 910), (688, 912), (687, 912), (687, 915), (686, 915), (686, 916), (685, 916), (685, 918), (684, 918), (684, 920), (683, 920), (683, 921), (682, 921), (682, 923), (681, 923), (681, 925), (680, 925), (680, 926), (679, 926), (679, 928), (678, 928), (678, 930), (677, 930), (677, 932), (676, 932), (676, 934), (675, 934), (675, 936), (674, 936), (674, 939), (672, 939), (672, 940), (670, 940), (670, 941), (669, 941), (669, 943), (668, 943), (668, 946), (667, 946), (667, 948), (666, 948), (666, 949), (665, 949), (665, 951), (664, 951), (664, 953), (663, 953), (663, 956), (662, 956), (662, 957), (661, 957), (661, 958), (660, 958), (660, 959), (659, 959), (659, 960), (658, 960), (658, 962), (657, 962), (657, 964), (656, 964), (656, 966), (655, 966), (655, 968), (654, 968), (654, 969), (653, 969), (653, 971), (652, 971), (652, 972), (651, 972), (651, 973), (650, 973), (650, 975), (649, 975), (649, 976), (648, 976), (648, 977), (647, 977), (647, 978), (646, 978), (646, 979), (645, 979), (645, 980), (644, 980), (644, 981), (643, 981), (643, 982), (641, 982), (641, 985), (657, 985), (657, 986), (660, 986), (660, 987), (663, 987), (663, 988), (665, 988), (665, 989), (666, 989), (666, 990), (668, 990), (668, 991), (672, 991), (672, 992), (676, 992), (676, 991), (687, 991), (687, 990), (690, 990), (690, 991), (720, 991), (720, 992), (740, 992), (740, 993), (820, 993), (820, 994), (822, 994), (822, 995), (824, 995), (824, 996), (837, 996), (837, 995), (844, 995), (844, 994), (850, 994), (850, 993), (854, 993), (854, 992), (859, 992), (859, 991), (863, 991), (863, 990), (870, 990), (870, 989), (882, 989), (882, 988), (889, 988), (889, 987), (902, 987), (902, 986), (903, 986), (903, 985), (905, 985), (905, 984), (907, 984), (907, 983), (915, 983), (915, 982), (966, 982), (966, 981), (973, 981), (973, 979), (975, 979), (975, 981), (976, 981), (976, 982), (977, 982), (977, 983), (978, 983), (978, 984), (979, 984), (979, 986), (980, 986), (980, 987), (981, 987), (981, 988), (982, 988), (982, 989), (984, 989), (984, 988), (985, 988), (985, 986), (983, 986), (983, 987), (982, 987), (982, 986), (981, 986), (981, 984), (980, 984), (980, 983), (979, 983), (979, 981), (978, 981), (978, 980), (977, 980), (977, 979), (976, 979), (976, 978), (975, 978), (975, 977), (974, 977), (974, 976), (973, 976), (973, 974), (972, 974), (972, 972), (971, 972), (971, 971), (966, 971), (966, 970), (964, 970), (964, 969), (963, 969), (963, 968), (961, 968), (961, 967), (959, 967), (959, 966), (957, 966), (957, 965), (956, 965), (956, 964), (954, 964), (954, 963), (953, 963), (953, 962), (952, 962), (952, 961), (951, 961), (951, 960), (950, 960), (950, 959), (948, 959), (948, 958), (947, 958), (947, 957), (945, 957), (945, 956), (944, 956), (944, 955), (943, 955), (943, 954), (941, 954), (941, 953), (939, 953), (939, 952), (937, 952), (937, 951), (934, 951), (934, 950), (932, 950), (932, 949), (930, 949), (930, 948), (928, 948), (928, 947), (927, 947), (927, 946), (925, 946), (925, 945), (924, 945), (924, 944), (923, 944), (923, 943), (922, 943), (922, 942), (921, 942), (921, 941), (920, 941), (920, 940), (919, 940), (919, 939), (918, 939), (918, 938), (917, 938), (917, 937), (916, 937), (916, 936), (915, 936), (915, 935), (914, 935), (914, 933), (913, 933), (913, 932), (912, 932), (912, 931), (911, 931), (911, 929), (910, 929), (910, 927), (909, 927), (909, 926), (908, 926), (908, 924), (907, 924), (907, 923), (906, 923), (906, 921), (905, 921), (905, 919), (904, 919), (904, 917), (903, 917), (903, 915), (902, 915), (902, 913), (901, 913), (901, 911), (900, 911), (900, 908), (899, 908), (899, 906), (898, 906), (898, 903), (897, 903), (897, 901), (896, 901), (896, 898), (895, 898), (895, 895), (894, 895), (894, 892), (893, 892), (893, 889), (892, 889), (892, 886), (891, 886), (891, 883), (890, 883), (890, 880), (889, 880), (889, 877), (888, 877), (888, 874), (887, 874), (887, 871), (886, 871), (886, 867), (885, 867), (885, 864), (884, 864), (884, 860), (883, 860), (883, 856), (882, 856), (882, 855), (883, 855), (883, 853), (884, 853), (884, 850), (885, 850), (885, 817), (886, 817), (886, 794), (887, 794), (887, 790), (888, 790), (888, 789), (889, 789), (889, 787), (890, 787), (890, 786), (891, 786), (891, 784), (892, 784), (892, 783), (893, 783), (893, 782), (894, 782), (894, 780), (895, 780), (895, 779), (896, 779), (896, 778), (897, 778), (897, 776), (898, 776), (898, 774), (899, 774), (899, 772), (900, 772), (900, 770), (901, 770), (901, 768), (902, 768), (902, 766), (903, 766), (903, 764), (904, 764), (904, 761), (905, 761), (905, 759), (906, 759), (906, 757), (907, 757), (907, 754), (908, 754), (908, 752), (909, 752), (909, 749), (910, 749), (910, 745), (911, 745), (911, 739), (910, 739), (910, 738), (906, 738), (906, 740), (905, 740), (905, 742), (904, 742), (904, 745), (903, 745), (903, 747), (902, 747), (902, 750), (901, 750), (901, 753), (900, 753), (900, 755), (899, 755), (899, 758), (898, 758), (898, 760), (897, 760), (897, 762), (896, 762), (896, 764), (895, 764), (895, 766), (894, 766), (894, 768), (893, 768), (893, 770), (892, 770), (892, 772), (891, 772), (891, 774), (890, 774), (890, 778), (889, 778), (889, 781), (888, 781), (888, 776), (889, 776), (889, 771), (890, 771), (890, 765), (891, 765), (891, 759), (892, 759), (892, 753), (893, 753), (893, 748), (894, 748), (894, 742), (895, 742), (895, 738), (896, 738), (896, 737), (898, 737), (898, 736), (899, 736), (899, 735), (901, 735), (901, 734), (903, 734), (903, 733), (904, 733), (904, 732), (906, 732), (906, 731), (908, 731), (908, 730), (909, 730), (909, 729), (910, 729), (910, 728), (912, 728), (912, 727), (913, 727), (913, 726), (916, 726), (916, 725), (917, 725), (917, 724), (918, 724), (918, 723), (919, 723), (919, 722), (920, 722), (920, 723), (919, 723), (919, 725), (918, 725), (918, 727), (917, 727), (917, 730), (918, 730), (918, 729), (920, 729), (920, 728), (921, 728), (921, 723), (922, 723), (922, 722), (924, 722), (924, 721), (927, 721), (927, 722), (931, 722), (931, 723), (936, 723), (936, 722), (940, 722), (940, 721), (942, 721), (942, 720), (944, 720), (944, 719), (946, 719), (946, 718), (947, 718), (947, 716), (948, 716), (948, 715), (949, 715), (949, 714), (950, 714), (950, 713), (951, 713), (951, 712), (953, 712), (953, 711), (955, 711), (955, 710), (956, 710), (956, 709), (957, 709), (957, 708), (958, 708), (958, 704), (957, 704), (957, 703), (956, 703), (956, 702), (954, 702), (954, 701), (953, 701), (953, 700), (952, 700), (952, 698), (951, 698), (951, 696), (950, 696), (950, 695), (949, 695), (949, 694), (947, 694), (947, 693), (945, 693), (945, 692), (936, 692), (936, 693), (933, 693), (933, 694), (931, 694), (931, 693), (926, 693), (926, 692), (922, 692), (922, 691), (919, 691), (919, 690), (916, 690), (916, 688), (915, 688), (915, 687), (914, 687), (914, 685), (913, 685), (913, 683), (912, 683), (912, 682), (911, 682), (911, 680), (910, 680), (910, 678), (909, 678), (909, 677), (908, 677), (908, 675), (907, 675), (907, 674), (906, 674), (906, 673), (905, 673), (905, 671), (904, 671), (904, 670), (903, 670), (903, 666), (902, 666), (902, 664), (901, 664), (901, 663), (899, 663), (899, 662), (897, 662), (897, 661), (895, 661), (895, 660), (892, 660), (892, 659), (890, 659), (890, 658), (891, 658), (891, 657), (892, 657), (892, 656), (889, 656), (889, 657), (884, 657), (884, 656), (883, 656), (883, 650), (884, 650), (884, 647), (882, 647), (882, 649), (881, 649), (881, 651), (880, 651), (880, 656), (878, 656), (878, 655), (876, 655), (876, 654), (875, 654), (875, 651), (876, 651), (876, 650), (877, 650), (877, 648), (878, 648), (878, 643), (879, 643), (879, 636), (880, 636), (880, 635), (883, 635), (883, 634), (884, 634), (884, 633), (883, 633), (883, 631), (882, 631), (882, 629), (881, 629), (881, 627), (880, 627), (880, 625), (879, 625), (879, 623), (878, 623), (878, 621), (877, 621), (877, 620), (876, 620), (876, 618), (875, 618), (875, 616), (874, 616), (874, 615), (873, 615), (873, 613), (872, 613), (872, 612), (871, 612), (871, 607), (870, 607), (870, 599), (871, 599), (871, 598), (872, 598), (872, 596), (873, 596), (873, 600), (875, 600), (875, 601), (878, 601), (878, 600), (881, 600), (881, 599), (883, 599), (883, 598), (884, 598), (884, 597), (885, 597), (885, 596), (886, 596), (886, 595), (887, 595), (887, 593), (888, 593), (888, 590), (889, 590), (889, 588), (888, 588), (888, 589), (887, 589), (887, 590), (884, 590), (884, 591), (881, 591), (881, 592), (880, 592), (880, 593), (878, 593), (878, 594), (876, 594), (876, 593), (877, 593), (877, 592), (878, 592), (878, 591), (879, 591), (879, 590), (880, 590), (880, 589), (881, 589), (881, 588), (882, 588), (882, 587), (883, 587), (883, 585), (884, 585), (884, 584), (885, 584), (885, 583), (886, 583), (886, 581), (887, 581), (887, 577), (888, 577), (888, 575), (889, 575), (889, 574), (890, 574), (890, 573), (892, 573), (892, 572), (895, 572), (895, 571), (897, 571), (897, 570), (899, 570), (899, 569), (900, 569), (900, 568), (901, 568), (901, 565), (902, 565), (902, 561), (901, 561), (901, 556), (902, 556), (902, 555), (903, 555), (903, 553), (904, 553), (904, 551), (905, 551), (905, 549), (906, 549), (906, 547), (907, 547), (907, 545), (908, 545), (908, 542), (909, 542), (909, 540), (908, 540), (908, 538), (903, 538), (903, 536), (901, 536), (901, 535), (899, 535), (899, 534), (889, 534), (889, 533), (883, 533), (883, 532), (880, 532), (880, 531), (878, 531), (878, 530), (876, 530), (876, 529), (874, 529), (874, 528), (873, 528), (873, 527), (872, 527), (872, 526), (870, 526), (870, 525), (869, 525), (869, 523), (868, 523), (868, 522), (867, 522), (867, 521), (866, 521), (866, 519), (865, 519), (865, 517), (864, 517), (864, 515), (863, 515), (863, 514), (861, 514), (861, 513), (854, 513), (854, 514), (848, 514), (848, 513), (846, 513), (846, 512), (845, 512), (845, 511), (843, 511), (843, 510), (842, 510), (842, 509), (841, 509), (841, 508), (840, 508), (840, 506), (839, 506), (839, 505), (838, 505), (838, 504), (837, 504), (837, 503), (836, 503), (836, 502), (834, 502), (834, 501), (833, 501), (833, 500), (831, 500), (831, 499), (830, 499), (830, 498), (828, 498), (828, 497), (827, 497), (827, 496), (825, 496), (825, 495), (822, 495), (822, 494), (812, 494), (812, 495), (810, 495), (810, 496), (809, 496), (809, 497), (807, 497), (807, 498), (806, 498), (806, 500), (801, 500), (801, 501), (797, 501), (797, 502), (795, 502), (795, 503), (792, 503), (792, 499), (791, 499), (791, 495), (790, 495), (790, 494), (789, 494), (789, 492), (787, 492), (787, 491), (786, 491), (786, 490), (785, 490), (785, 488), (783, 488), (783, 487), (782, 487), (782, 488), (781, 488), (781, 489), (778, 489), (778, 490), (775, 490), (775, 491), (774, 491), (774, 492), (772, 492), (772, 493), (771, 493), (771, 494), (770, 494), (770, 495), (768, 495), (768, 494), (767, 494), (767, 493), (765, 493), (765, 490), (764, 490), (764, 489), (763, 489), (763, 488), (762, 488), (762, 487), (761, 487), (761, 486), (759, 486), (759, 485), (754, 485), (754, 483), (752, 483), (752, 482), (749, 482), (749, 483), (748, 483), (748, 484), (747, 484), (747, 486), (746, 486), (746, 489), (745, 489), (745, 483), (744, 483), (744, 480), (743, 480), (743, 477), (742, 477), (742, 474), (741, 474), (741, 471), (740, 471), (740, 468), (739, 468), (739, 465), (738, 465), (738, 462), (737, 462), (737, 459), (736, 459), (736, 457), (735, 457), (735, 454), (734, 454), (734, 451), (733, 451), (733, 448), (732, 448), (732, 445), (731, 445), (731, 443), (730, 443), (730, 440), (729, 440), (729, 438), (728, 438), (728, 435), (727, 435), (727, 433), (726, 433), (726, 430), (725, 430), (725, 428), (724, 428), (724, 426), (723, 426), (723, 423), (722, 423), (722, 421), (721, 421), (721, 419), (720, 419), (720, 417), (719, 417), (719, 415), (718, 415), (718, 413), (717, 413), (717, 411), (716, 411), (716, 409), (715, 409), (715, 407), (714, 407), (714, 405), (713, 405), (713, 403), (712, 403), (712, 400), (711, 400), (711, 397), (710, 397), (710, 396), (709, 396)]

  polys[1] size=2050
    [(564, 530), (562, 530), (562, 531), (560, 531), (560, 532), (558, 532), (558, 533), (557, 533), (557, 534), (555, 534), (555, 535), (553, 535), (553, 536), (551, 536), (551, 537), (549, 537), (549, 538), (547, 538), (547, 539), (545, 539), (545, 540), (544, 540), (544, 542), (542, 542), (542, 544), (541, 544), (541, 545), (539, 545), (539, 546), (538, 546), (538, 547), (536, 547), (536, 548), (534, 548), (534, 549), (532, 549), (532, 550), (530, 550), (530, 551), (526, 551), (526, 552), (515, 552), (515, 553), (514, 553), (514, 554), (512, 554), (512, 555), (510, 555), (510, 556), (502, 556), (502, 557), (499, 557), (499, 558), (497, 558), (497, 559), (495, 559), (495, 560), (494, 560), (494, 561), (493, 561), (493, 562), (492, 562), (492, 563), (490, 563), (490, 564), (487, 564), (487, 565), (483, 565), (483, 564), (478, 564), (478, 565), (477, 565), (477, 566), (475, 566), (475, 569), (476, 569), (476, 570), (477, 570), (477, 571), (478, 571), (478, 573), (484, 573), (484, 574), (486, 574), (486, 575), (482, 575), (482, 576), (478, 576), (478, 577), (475, 577), (475, 578), (471, 578), (471, 579), (469, 579), (469, 580), (467, 580), (467, 585), (468, 585), (468, 586), (469, 586), (469, 587), (471, 587), (471, 588), (473, 588), (473, 589), (477, 589), (477, 588), (485, 588), (485, 587), (486, 587), (486, 592), (487, 592), (487, 595), (488, 595), (488, 601), (489, 601), (489, 602), (491, 602), (491, 601), (492, 601), (492, 603), (494, 603), (494, 602), (495, 602), (495, 600), (496, 600), (496, 598), (497, 598), (497, 596), (498, 596), (498, 593), (499, 593), (499, 591), (500, 591), (500, 588), (501, 588), (501, 586), (502, 586), (502, 585), (503, 585), (503, 583), (504, 583), (504, 581), (505, 581), (505, 584), (506, 584), (506, 588), (507, 588), (507, 591), (508, 591), (508, 592), (509, 592), (509, 595), (510, 595), (510, 598), (511, 598), (511, 599), (513, 599), (513, 598), (515, 598), (515, 597), (516, 597), (516, 596), (517, 596), (517, 587), (516, 587), (516, 586), (517, 586), (517, 585), (518, 585), (518, 583), (520, 583), (520, 582), (518, 582), (518, 580), (519, 580), (519, 579), (520, 579), (520, 578), (521, 578), (521, 577), (522, 577), (522, 576), (523, 576), (523, 575), (524, 575), (524, 574), (525, 574), (525, 573), (527, 573), (527, 574), (525, 574), (525, 576), (524, 576), (524, 577), (526, 577), (526, 576), (530, 576), (530, 575), (531, 575), (531, 574), (533, 574), (533, 572), (537, 572), (537, 573), (536, 573), (536, 574), (534, 574), (534, 576), (536, 576), (536, 575), (537, 575), (537, 574), (538, 574), (538, 573), (540, 573), (540, 572), (543, 572), (543, 571), (546, 571), (546, 572), (547, 572), (547, 573), (551, 573), (551, 572), (554, 572), (554, 571), (555, 571), (555, 570), (558, 570), (558, 571), (559, 571), (559, 572), (560, 572), (560, 573), (561, 573), (561, 574), (562, 574), (562, 575), (563, 575), (563, 577), (562, 577), (562, 578), (563, 578), (563, 579), (564, 579), (564, 577), (565, 577), (565, 579), (566, 579), (566, 581), (565, 581), (565, 583), (564, 583), (564, 585), (563, 585), (563, 586), (562, 586), (562, 587), (561, 587), (561, 589), (560, 589), (560, 603), (561, 603), (561, 604), (563, 604), (563, 603), (564, 603), (564, 602), (565, 602), (565, 601), (566, 601), (566, 600), (567, 600), (567, 599), (568, 599), (568, 598), (569, 598), (569, 597), (570, 597), (570, 596), (571, 596), (571, 595), (572, 595), (572, 594), (573, 594), (573, 596), (575, 596), (575, 592), (576, 592), (576, 591), (578, 591), (578, 593), (579, 593), (579, 594), (580, 594), (580, 597), (581, 597), (581, 605), (582, 605), (582, 606), (583, 606), (583, 609), (584, 609), (584, 610), (583, 610), (583, 615), (584, 615), (584, 618), (585, 618), (585, 620), (586, 620), (586, 621), (587, 621), (587, 623), (588, 623), (588, 625), (589, 625), (589, 628), (590, 628), (590, 631), (591, 631), (591, 634), (592, 634), (592, 637), (593, 637), (593, 641), (594, 641), (594, 644), (595, 644), (595, 647), (596, 647), (596, 651), (597, 651), (597, 655), (598, 655), (598, 658), (597, 658), (597, 671), (596, 671), (596, 677), (595, 677), (595, 679), (596, 679), (596, 680), (598, 680), (598, 677), (599, 677), (599, 674), (600, 674), (600, 672), (601, 672), (601, 670), (602, 670), (602, 668), (603, 668), (603, 667), (604, 667), (604, 665), (605, 665), (605, 664), (606, 664), (606, 663), (607, 663), (607, 661), (608, 661), (608, 660), (609, 660), (609, 659), (610, 659), (610, 658), (611, 658), (611, 657), (612, 657), (612, 656), (613, 656), (613, 655), (614, 655), (614, 654), (615, 654), (615, 652), (616, 652), (616, 651), (617, 651), (617, 650), (618, 650), (618, 649), (619, 649), (619, 648), (620, 648), (620, 647), (621, 647), (621, 646), (622, 646), (622, 645), (623, 645), (623, 644), (624, 644), (624, 643), (625, 643), (625, 642), (626, 642), (626, 641), (628, 641), (628, 640), (629, 640), (629, 639), (630, 639), (630, 638), (631, 638), (631, 637), (633, 637), (633, 636), (636, 636), (636, 635), (638, 635), (638, 634), (640, 634), (640, 633), (643, 633), (643, 632), (645, 632), (645, 631), (647, 631), (647, 630), (649, 630), (649, 629), (651, 629), (651, 628), (653, 628), (653, 627), (655, 627), (655, 626), (657, 626), (657, 625), (659, 625), (659, 624), (661, 624), (661, 623), (663, 623), (663, 622), (665, 622), (665, 621), (667, 621), (667, 620), (669, 620), (669, 619), (670, 619), (670, 618), (672, 618), (672, 617), (674, 617), (674, 616), (676, 616), (676, 615), (677, 615), (677, 614), (679, 614), (679, 613), (682, 613), (682, 612), (685, 612), (685, 611), (687, 611), (687, 610), (688, 610), (688, 609), (690, 609), (690, 608), (694, 608), (694, 607), (697, 607), (697, 606), (700, 606), (700, 605), (702, 605), (702, 604), (704, 604), (704, 603), (705, 603), (705, 602), (707, 602), (707, 604), (708, 604), (708, 606), (709, 606), (709, 613), (708, 613), (708, 614), (707, 614), (707, 615), (706, 615), (706, 617), (708, 617), (708, 616), (709, 616), (709, 615), (710, 615), (710, 616), (711, 616), (711, 617), (712, 617), (712, 618), (713, 618), (713, 619), (715, 619), (715, 620), (716, 620), (716, 621), (721, 621), (721, 620), (722, 620), (722, 621), (724, 621), (724, 622), (727, 622), (727, 623), (728, 623), (728, 624), (730, 624), (730, 625), (731, 625), (731, 626), (733, 626), (733, 627), (735, 627), (735, 628), (737, 628), (737, 629), (739, 629), (739, 630), (742, 630), (742, 631), (745, 631), (745, 632), (746, 632), (746, 635), (747, 635), (747, 645), (746, 645), (746, 650), (745, 650), (745, 658), (744, 658), (744, 662), (743, 662), (743, 664), (742, 664), (742, 666), (741, 666), (741, 669), (740, 669), (740, 671), (739, 671), (739, 674), (738, 674), (738, 677), (737, 677), (737, 679), (736, 679), (736, 681), (735, 681), (735, 684), (734, 684), (734, 686), (733, 686), (733, 691), (734, 691), (734, 692), (737, 692), (737, 693), (743, 693), (743, 694), (747, 694), (747, 695), (746, 695), (746, 697), (745, 697), (745, 700), (744, 700), (744, 703), (745, 703), (745, 702), (746, 702), (746, 699), (747, 699), (747, 697), (748, 697), (748, 694), (749, 694), (749, 693), (750, 693), (750, 694), (751, 694), (751, 695), (752, 695), (752, 696), (753, 696), (753, 697), (754, 697), (754, 698), (757, 698), (757, 699), (760, 699), (760, 700), (761, 700), (761, 702), (760, 702), (760, 704), (759, 704), (759, 706), (758, 706), (758, 707), (757, 707), (757, 708), (756, 708), (756, 709), (755, 709), (755, 710), (754, 710), (754, 711), (755, 711), (755, 714), (754, 714), (754, 715), (753, 715), (753, 717), (752, 717), (752, 718), (751, 718), (751, 720), (750, 720), (750, 721), (749, 721), (749, 722), (748, 722), (748, 723), (747, 723), (747, 725), (746, 725), (746, 726), (745, 726), (745, 727), (744, 727), (744, 728), (743, 728), (743, 731), (742, 731), (742, 733), (741, 733), (741, 735), (740, 735), (740, 737), (739, 737), (739, 738), (738, 738), (738, 740), (737, 740), (737, 741), (736, 741), (736, 743), (735, 743), (735, 744), (734, 744), (734, 745), (733, 745), (733, 746), (732, 746), (732, 747), (731, 747), (731, 748), (730, 748), (730, 749), (729, 749), (729, 750), (728, 750), (728, 751), (727, 751), (727, 752), (726, 752), (726, 753), (725, 753), (725, 754), (724, 754), (724, 755), (723, 755), (723, 756), (722, 756), (722, 757), (721, 757), (721, 759), (720, 759), (720, 760), (719, 760), (719, 761), (718, 761), (718, 762), (717, 762), (717, 763), (716, 763), (716, 765), (715, 765), (715, 767), (714, 767), (714, 768), (713, 768), (713, 770), (712, 770), (712, 773), (711, 773), (711, 776), (710, 776), (710, 778), (709, 778), (709, 780), (708, 780), (708, 781), (707, 781), (707, 782), (706, 782), (706, 784), (705, 784), (705, 785), (704, 785), (704, 786), (703, 786), (703, 787), (702, 787), (702, 789), (701, 789), (701, 790), (700, 790), (700, 791), (699, 791), (699, 793), (698, 793), (698, 794), (697, 794), (697, 796), (696, 796), (696, 798), (695, 798), (695, 800), (694, 800), (694, 801), (693, 801), (693, 804), (696, 804), (696, 803), (697, 803), (697, 802), (699, 802), (699, 801), (700, 801), (700, 800), (702, 800), (702, 799), (704, 799), (704, 798), (705, 798), (705, 797), (707, 797), (707, 796), (709, 796), (709, 795), (711, 795), (711, 794), (713, 794), (713, 793), (714, 793), (714, 792), (716, 792), (716, 791), (717, 791), (717, 790), (719, 790), (719, 789), (723, 789), (723, 788), (724, 788), (724, 789), (723, 789), (723, 792), (722, 792), (722, 795), (721, 795), (721, 798), (720, 798), (720, 801), (719, 801), (719, 805), (718, 805), (718, 809), (717, 809), (717, 812), (716, 812), (716, 815), (715, 815), (715, 818), (714, 818), (714, 820), (713, 820), (713, 823), (712, 823), (712, 826), (711, 826), (711, 829), (710, 829), (710, 832), (709, 832), (709, 835), (708, 835), (708, 826), (707, 826), (707, 820), (705, 820), (705, 823), (704, 823), (704, 826), (703, 826), (703, 829), (702, 829), (702, 835), (703, 835), (703, 846), (704, 846), (704, 850), (703, 850), (703, 854), (702, 854), (702, 857), (701, 857), (701, 861), (700, 861), (700, 868), (699, 868), (699, 871), (698, 871), (698, 874), (697, 874), (697, 877), (696, 877), (696, 881), (695, 881), (695, 885), (694, 885), (694, 889), (693, 889), (693, 896), (692, 896), (692, 902), (691, 902), (691, 905), (690, 905), (690, 907), (689, 907), (689, 910), (688, 910), (688, 912), (687, 912), (687, 915), (686, 915), (686, 916), (685, 916), (685, 918), (684, 918), (684, 920), (683, 920), (683, 921), (682, 921), (682, 923), (681, 923), (681, 925), (680, 925), (680, 926), (679, 926), (679, 928), (678, 928), (678, 930), (677, 930), (677, 932), (676, 932), (676, 934), (675, 934), (675, 936), (674, 936), (674, 939), (672, 939), (672, 940), (670, 940), (670, 941), (669, 941), (669, 943), (668, 943), (668, 946), (667, 946), (667, 948), (666, 948), (666, 949), (665, 949), (665, 951), (664, 951), (664, 953), (663, 953), (663, 956), (662, 956), (662, 957), (661, 957), (661, 958), (660, 958), (660, 959), (659, 959), (659, 960), (658, 960), (658, 962), (657, 962), (657, 964), (656, 964), (656, 966), (655, 966), (655, 968), (654, 968), (654, 969), (653, 969), (653, 971), (652, 971), (652, 972), (651, 972), (651, 973), (650, 973), (650, 975), (649, 975), (649, 976), (648, 976), (648, 977), (647, 977), (647, 978), (646, 978), (646, 979), (645, 979), (645, 980), (644, 980), (644, 981), (643, 981), (643, 982), (641, 982), (641, 985), (657, 985), (657, 986), (660, 986), (660, 987), (663, 987), (663, 988), (665, 988), (665, 989), (666, 989), (666, 990), (668, 990), (668, 991), (672, 991), (672, 992), (676, 992), (676, 991), (687, 991), (687, 990), (690, 990), (690, 991), (720, 991), (720, 992), (740, 992), (740, 993), (820, 993), (820, 994), (822, 994), (822, 995), (824, 995), (824, 996), (837, 996), (837, 995), (844, 995), (844, 994), (850, 994), (850, 993), (854, 993), (854, 992), (859, 992), (859, 991), (863, 991), (863, 990), (870, 990), (870, 989), (882, 989), (882, 988), (889, 988), (889, 987), (902, 987), (902, 986), (903, 986), (903, 985), (905, 985), (905, 984), (907, 984), (907, 983), (915, 983), (915, 982), (966, 982), (966, 981), (973, 981), (973, 979), (975, 979), (975, 981), (976, 981), (976, 982), (977, 982), (977, 983), (978, 983), (978, 984), (979, 984), (979, 986), (980, 986), (980, 987), (981, 987), (981, 988), (982, 988), (982, 989), (984, 989), (984, 988), (985, 988), (985, 986), (983, 986), (983, 987), (982, 987), (982, 986), (981, 986), (981, 984), (980, 984), (980, 983), (979, 983), (979, 981), (978, 981), (978, 980), (977, 980), (977, 979), (976, 979), (976, 978), (975, 978), (975, 977), (974, 977), (974, 976), (973, 976), (973, 974), (972, 974), (972, 972), (971, 972), (971, 971), (966, 971), (966, 970), (964, 970), (964, 969), (963, 969), (963, 968), (961, 968), (961, 967), (959, 967), (959, 966), (957, 966), (957, 965), (956, 965), (956, 964), (954, 964), (954, 963), (953, 963), (953, 962), (952, 962), (952, 961), (951, 961), (951, 960), (950, 960), (950, 959), (948, 959), (948, 958), (947, 958), (947, 957), (945, 957), (945, 956), (944, 956), (944, 955), (943, 955), (943, 954), (941, 954), (941, 953), (939, 953), (939, 952), (937, 952), (937, 951), (934, 951), (934, 950), (932, 950), (932, 949), (930, 949), (930, 948), (928, 948), (928, 947), (927, 947), (927, 946), (925, 946), (925, 945), (924, 945), (924, 944), (923, 944), (923, 943), (922, 943), (922, 942), (921, 942), (921, 941), (920, 941), (920, 940), (919, 940), (919, 939), (918, 939), (918, 938), (917, 938), (917, 937), (916, 937), (916, 936), (915, 936), (915, 935), (914, 935), (914, 933), (913, 933), (913, 932), (912, 932), (912, 931), (911, 931), (911, 929), (910, 929), (910, 927), (909, 927), (909, 926), (908, 926), (908, 924), (907, 924), (907, 923), (906, 923), (906, 921), (905, 921), (905, 919), (904, 919), (904, 917), (903, 917), (903, 915), (902, 915), (902, 913), (901, 913), (901, 911), (900, 911), (900, 908), (899, 908), (899, 906), (898, 906), (898, 903), (897, 903), (897, 901), (896, 901), (896, 898), (895, 898), (895, 895), (894, 895), (894, 892), (893, 892), (893, 889), (892, 889), (892, 886), (891, 886), (891, 883), (890, 883), (890, 880), (889, 880), (889, 877), (888, 877), (888, 874), (887, 874), (887, 871), (886, 871), (886, 867), (885, 867), (885, 864), (884, 864), (884, 860), (883, 860), (883, 856), (882, 856), (882, 855), (883, 855), (883, 853), (884, 853), (884, 850), (885, 850), (885, 817), (886, 817), (886, 794), (887, 794), (887, 790), (888, 790), (888, 789), (889, 789), (889, 787), (890, 787), (890, 786), (891, 786), (891, 784), (892, 784), (892, 783), (893, 783), (893, 782), (894, 782), (894, 780), (895, 780), (895, 779), (896, 779), (896, 778), (897, 778), (897, 776), (898, 776), (898, 774), (899, 774), (899, 772), (900, 772), (900, 770), (901, 770), (901, 768), (902, 768), (902, 766), (903, 766), (903, 764), (904, 764), (904, 761), (905, 761), (905, 759), (906, 759), (906, 757), (907, 757), (907, 754), (908, 754), (908, 752), (909, 752), (909, 749), (910, 749), (910, 745), (911, 745), (911, 739), (910, 739), (910, 738), (906, 738), (906, 740), (905, 740), (905, 742), (904, 742), (904, 745), (903, 745), (903, 747), (902, 747), (902, 750), (901, 750), (901, 753), (900, 753), (900, 755), (899, 755), (899, 758), (898, 758), (898, 760), (897, 760), (897, 762), (896, 762), (896, 764), (895, 764), (895, 766), (894, 766), (894, 768), (893, 768), (893, 770), (892, 770), (892, 772), (891, 772), (891, 774), (890, 774), (890, 778), (889, 778), (889, 781), (888, 781), (888, 776), (889, 776), (889, 771), (890, 771), (890, 765), (891, 765), (891, 759), (892, 759), (892, 753), (893, 753), (893, 748), (894, 748), (894, 742), (895, 742), (895, 738), (896, 738), (896, 737), (898, 737), (898, 736), (899, 736), (899, 735), (901, 735), (901, 734), (903, 734), (903, 733), (904, 733), (904, 732), (906, 732), (906, 731), (908, 731), (908, 730), (909, 730), (909, 729), (910, 729), (910, 728), (912, 728), (912, 727), (913, 727), (913, 726), (916, 726), (916, 725), (917, 725), (917, 724), (918, 724), (918, 723), (919, 723), (919, 722), (920, 722), (920, 723), (919, 723), (919, 725), (918, 725), (918, 727), (917, 727), (917, 730), (918, 730), (918, 729), (920, 729), (920, 728), (921, 728), (921, 723), (922, 723), (922, 722), (924, 722), (924, 721), (927, 721), (927, 722), (931, 722), (931, 723), (936, 723), (936, 722), (940, 722), (940, 721), (942, 721), (942, 720), (944, 720), (944, 719), (946, 719), (946, 718), (947, 718), (947, 716), (948, 716), (948, 715), (949, 715), (949, 714), (950, 714), (950, 713), (951, 713), (951, 712), (953, 712), (953, 711), (955, 711), (955, 710), (956, 710), (956, 709), (957, 709), (957, 708), (958, 708), (958, 704), (957, 704), (957, 703), (956, 703), (956, 702), (954, 702), (954, 701), (953, 701), (953, 700), (952, 700), (952, 698), (951, 698), (951, 696), (950, 696), (950, 695), (949, 695), (949, 694), (947, 694), (947, 693), (945, 693), (945, 692), (936, 692), (936, 693), (933, 693), (933, 694), (931, 694), (931, 693), (926, 693), (926, 692), (922, 692), (922, 691), (919, 691), (919, 690), (916, 690), (916, 688), (915, 688), (915, 687), (914, 687), (914, 685), (913, 685), (913, 683), (912, 683), (912, 682), (911, 682), (911, 680), (910, 680), (910, 678), (909, 678), (909, 677), (908, 677), (908, 675), (907, 675), (907, 674), (906, 674), (906, 673), (905, 673), (905, 671), (904, 671), (904, 670), (903, 670), (903, 666), (902, 666), (902, 664), (901, 664), (901, 663), (899, 663), (899, 662), (897, 662), (897, 661), (895, 661), (895, 660), (892, 660), (892, 659), (890, 659), (890, 658), (891, 658), (891, 657), (892, 657), (892, 656), (889, 656), (889, 657), (884, 657), (884, 656), (883, 656), (883, 650), (884, 650), (884, 647), (882, 647), (882, 649), (881, 649), (881, 651), (880, 651), (880, 656), (878, 656), (878, 655), (876, 655), (876, 654), (875, 654), (875, 651), (876, 651), (876, 650), (877, 650), (877, 648), (878, 648), (878, 643), (879, 643), (879, 636), (880, 636), (880, 635), (883, 635), (883, 634), (884, 634), (884, 633), (883, 633), (883, 631), (882, 631), (882, 629), (881, 629), (881, 627), (880, 627), (880, 625), (879, 625), (879, 623), (878, 623), (878, 621), (877, 621), (877, 620), (876, 620), (876, 618), (875, 618), (875, 616), (874, 616), (874, 615), (873, 615), (873, 613), (872, 613), (872, 612), (871, 612), (871, 607), (870, 607), (870, 599), (871, 599), (871, 598), (872, 598), (872, 596), (873, 596), (873, 600), (875, 600), (875, 601), (878, 601), (878, 600), (881, 600), (881, 599), (883, 599), (883, 598), (884, 598), (884, 597), (885, 597), (885, 596), (886, 596), (886, 595), (887, 595), (887, 593), (888, 593), (888, 590), (889, 590), (889, 588), (888, 588), (888, 589), (887, 589), (887, 590), (884, 590), (884, 591), (881, 591), (881, 592), (880, 592), (880, 593), (878, 593), (878, 594), (876, 594), (876, 593), (877, 593), (877, 592), (878, 592), (878, 591), (879, 591), (879, 590), (880, 590), (880, 589), (881, 589), (881, 588), (882, 588), (882, 587), (883, 587), (883, 585), (884, 585), (884, 584), (885, 584), (885, 583), (886, 583), (886, 581), (887, 581), (887, 577), (888, 577), (888, 575), (889, 575), (889, 574), (890, 574), (890, 573), (892, 573), (892, 572), (895, 572), (895, 571), (897, 571), (897, 570), (899, 570), (899, 569), (900, 569), (900, 568), (901, 568), (901, 565), (902, 565), (902, 561), (901, 561), (901, 556), (902, 556), (902, 555), (903, 555), (903, 553), (904, 553), (904, 551), (905, 551), (905, 549), (906, 549), (906, 547), (907, 547), (907, 545), (908, 545), (908, 542), (909, 542), (909, 540), (908, 540), (908, 538), (903, 538), (903, 536), (901, 536), (901, 535), (899, 535), (899, 534), (889, 534), (889, 533), (883, 533), (883, 532), (880, 532), (880, 531), (878, 531), (878, 530), (876, 530), (876, 529), (874, 529), (874, 528), (873, 528), (873, 527), (872, 527), (872, 526), (870, 526), (870, 525), (869, 525), (869, 523), (868, 523), (868, 522), (867, 522), (867, 521), (866, 521), (866, 519), (865, 519), (865, 517), (864, 517), (864, 515), (863, 515), (863, 514), (861, 514), (861, 513), (854, 513), (854, 514), (848, 514), (848, 513), (846, 513), (846, 512), (845, 512), (845, 511), (843, 511), (843, 510), (842, 510), (842, 509), (841, 509), (841, 508), (840, 508), (840, 506), (839, 506), (839, 505), (838, 505), (838, 504), (837, 504), (837, 503), (836, 503), (836, 502), (834, 502), (834, 501), (833, 501), (833, 500), (831, 500), (831, 499), (830, 499), (830, 498), (828, 498), (828, 497), (827, 497), (827, 496), (825, 496), (825, 495), (822, 495), (822, 494), (812, 494), (812, 495), (810, 495), (810, 496), (809, 496), (809, 497), (807, 497), (807, 498), (806, 498), (806, 500), (801, 500), (801, 501), (797, 501), (797, 502), (795, 502), (795, 503), (792, 503), (792, 499), (791, 499), (791, 495), (790, 495), (790, 494), (789, 494), (789, 492), (787, 492), (787, 491), (786, 491), (786, 490), (785, 490), (785, 488), (783, 488), (783, 487), (782, 487), (782, 488), (781, 488), (781, 489), (778, 489), (778, 490), (775, 490), (775, 491), (774, 491), (774, 492), (772, 492), (772, 493), (771, 493), (771, 494), (770, 494), (770, 495), (768, 495), (768, 494), (767, 494), (767, 493), (765, 493), (765, 490), (764, 490), (764, 489), (763, 489), (763, 488), (762, 488), (762, 487), (761, 487), (761, 486), (759, 486), (759, 485), (754, 485), (754, 483), (752, 483), (752, 482), (749, 482), (749, 483), (748, 483), (748, 484), (747, 484), (747, 486), (746, 486), (746, 489), (745, 489), (745, 483), (744, 483), (744, 480), (743, 480), (743, 477), (742, 477), (742, 474), (741, 474), (741, 471), (740, 471), (740, 468), (739, 468), (739, 465), (738, 465), (738, 462), (737, 462), (737, 459), (736, 459), (736, 457), (735, 457), (735, 454), (734, 454), (734, 451), (733, 451), (733, 448), (732, 448), (732, 445), (731, 445), (731, 443), (730, 443), (730, 440), (729, 440), (729, 438), (728, 438), (728, 435), (727, 435), (727, 433), (726, 433), (726, 430), (725, 430), (725, 428), (724, 428), (724, 426), (723, 426), (723, 423), (722, 423), (722, 421), (721, 421), (721, 419), (720, 419), (720, 417), (719, 417), (719, 415), (718, 415), (718, 413), (717, 413), (717, 411), (716, 411), (716, 409), (715, 409), (715, 407), (714, 407), (714, 405), (713, 405), (713, 403), (712, 403), (712, 400), (711, 400), (711, 397), (710, 397), (710, 396), (709, 396), (709, 399), (708, 399), (708, 411), (709, 411), (709, 423), (708, 423), (708, 425), (707, 425), (707, 427), (706, 427), (706, 431), (705, 431), (705, 435), (704, 435), (704, 440), (703, 440), (703, 446), (702, 446), (702, 451), (701, 451), (701, 455), (700, 455), (700, 458), (699, 458), (699, 461), (698, 461), (698, 464), (697, 464), (697, 467), (696, 467), (696, 471), (695, 471), (695, 482), (694, 482), (694, 485), (693, 485), (693, 489), (692, 489), (692, 488), (691, 488), (691, 486), (690, 486), (690, 485), (689, 485), (689, 483), (688, 483), (688, 482), (687, 482), (687, 480), (686, 480), (686, 478), (685, 478), (685, 476), (684, 476), (684, 474), (683, 474), (683, 471), (682, 471), (682, 470), (681, 470), (681, 469), (680, 469), (680, 467), (679, 467), (679, 466), (678, 466), (678, 464), (677, 464), (677, 461), (676, 461), (676, 458), (675, 458), (675, 455), (674, 455), (674, 453), (671, 453), (671, 451), (670, 451), (670, 450), (669, 450), (669, 448), (668, 448), (668, 447), (667, 447), (667, 446), (666, 446), (666, 445), (665, 445), (665, 444), (664, 444), (664, 443), (663, 443), (663, 442), (662, 442), (662, 440), (661, 440), (661, 439), (660, 439), (660, 438), (659, 438), (659, 437), (658, 437), (658, 436), (657, 436), (657, 434), (656, 434), (656, 431), (655, 431), (655, 429), (654, 429), (654, 427), (652, 427), (652, 428), (653, 428), (653, 430), (652, 430), (652, 429), (651, 429), (651, 427), (650, 427), (650, 426), (649, 426), (649, 424), (647, 424), (647, 425), (646, 425), (646, 426), (645, 426), (645, 428), (644, 428), (644, 470), (645, 470), (645, 475), (646, 475), (646, 479), (647, 479), (647, 482), (648, 482), (648, 493), (649, 493), (649, 502), (650, 502), (650, 510), (651, 510), (651, 518), (652, 518), (652, 528), (653, 528), (653, 536), (644, 536), (644, 535), (646, 535), (646, 534), (637, 534), (637, 533), (633, 533), (633, 532), (622, 532), (622, 531), (617, 531), (617, 530), (611, 530), (611, 529), (605, 529), (605, 528), (594, 528), (594, 527), (586, 527), (586, 526), (580, 526), (580, 525), (570, 525), (570, 524), (568, 524), (568, 525), (567, 525), (567, 526), (569, 526), (569, 527), (571, 527), (571, 528), (570, 528), (570, 529), (569, 529), (569, 530), (567, 530), (567, 531), (565, 531), (565, 529), (564, 529)]

  polys[2] size=8
    [(502, 590), (503, 590), (503, 592), (504, 592), (504, 589), (503, 589), (503, 588), (502, 588)]

  polys[3] size=18
    [(897, 740), (898, 740), (898, 741), (899, 741), (899, 742), (900, 742), (900, 743), (901, 743), (901, 744), (902, 744), (902, 741), (901, 741), (901, 740), (900, 740), (900, 739), (899, 739), (899, 738), (897, 738)]

  polys[4] size=4
    [(699, 840), (700, 840), (700, 839), (699, 839)]

  polys[5] size=22
    [(675, 877), (676, 877), (676, 878), (677, 878), (677, 879), (678, 879), (678, 881), (679, 881), (679, 883), (680, 883), (680, 885), (681, 885), (681, 881), (680, 881), (680, 880), (679, 880), (679, 878), (678, 878), (678, 877), (677, 877), (677, 875), (675, 875)]

For bit mask for alpha_threshold = 0.0 it works fine. For bit mask for alpha_threshold = 0.1 the polys[0] and polys[1] are the same polygon, the vertices are just cyclically shifted (polys[0][0] == polys[1][1860] and so on). If simplification_epsilon > 0 would be passed to opaque_to_polygons then the resulting polygons would diverge (how much depends on the passed value), as they would be simplified according to their different vertices order.

So I think the first proper step (maybe there are more steps) is to fix BitMap::clip_opaque_to_polygons.

editor/import/resource_importer_texture_atlas.cpp Outdated Show resolved Hide resolved
editor/import/resource_importer_texture_atlas.cpp Outdated Show resolved Hide resolved
editor/editor_atlas_packer.cpp Outdated Show resolved Hide resolved
@AThousandShips

This comment was marked as outdated.

@AThousandShips

This comment was marked as outdated.

@AThousandShips AThousandShips force-pushed the atlas_mesh_fix branch 2 times, most recently from d2d2c88 to 425815f Compare November 8, 2022 15:20
@AThousandShips AThousandShips marked this pull request as ready for review November 8, 2022 15:41
@AThousandShips
Copy link
Member Author

AThousandShips commented Nov 9, 2022

But agreed there's absolutely something odd going on in BitMap, taking a deeper look

Edit: #31675 a direction for solutions I suspect

@AThousandShips
Copy link
Member Author

I have identified some errors in the marching squares behavior, and I have some ides for solutions, will investigate and open a separate PR for this issue

@LakshayaG73
Copy link

I have identified some errors in the marching squares behavior, and I have some ides for solutions, will investigate and open a separate PR for this issue

Hi. Is there a separate PR open?

@AThousandShips
Copy link
Member Author

Not yet, I think I'm getting close to a solution though and will see about implementing it soon

@LakshayaG73
Copy link

Please keep me posted. Thanks : )

Let me know if I can help in any way

@AThousandShips
Copy link
Member Author

PR for bitmap fixes is now up:
#68732

@LakshayaG73
Copy link

Great! Thank you so much.

So, I should merge this PR and #68732 to test it out?

@AThousandShips
Copy link
Member Author

Go ahead, note that I have yet to solve the gaps problem, will take that on when the BitMap stuff is done

@AThousandShips
Copy link
Member Author

Now that that is merged I'll get back to the triangle drawing soon hopefully

@LakshayaG73
Copy link

Is there an issue open for the remaining piece of the puzzle? : )

@AThousandShips
Copy link
Member Author

@LakshayaG73 not that I know of, I'm aiming to solve it as part of this PR but I haven't had time to look at it lately or right now, hopefully soon

@AThousandShips
Copy link
Member Author

Added a new triangle raster code, still tweaking with it and will see how it turns out, this method is probably less efficient than the original, but it works (as far as I can tell) with this input, no gaps, will experiment with one closer to the original that works over a smaller area, but I don't think this method is any problem from a performance perspective.

@LakshayaG73
Copy link

Hello! This does seem to fix it for the MRP provided.

If you could update this, I would love to try with the latest master?

@AThousandShips
Copy link
Member Author

AThousandShips commented Feb 3, 2023

It'd be best if you rebased it yourself, haven't worked on this lately and will come back to it when I've solved some other stuff and don't want to needlessly update the CI

Unless there are any conflicts, haven't checked

@akien-mga akien-mga modified the milestones: 4.0, 4.1 Feb 17, 2023
@AThousandShips AThousandShips marked this pull request as ready for review May 23, 2023 20:50
@AThousandShips
Copy link
Member Author

Restored to the state prior to trying to solve raster issues

@kleonc kleonc self-requested a review May 23, 2023 21:44
@AThousandShips AThousandShips changed the title TextureAtlas Mesh2D import fix Fix some TextureAtlas import errors May 24, 2023
@AThousandShips AThousandShips changed the title Fix some TextureAtlas import errors Bounds fixes in TextureAtlas import May 24, 2023
@AThousandShips AThousandShips force-pushed the atlas_mesh_fix branch 2 times, most recently from 6c03764 to b7f62e2 Compare May 24, 2023 08:20
@AThousandShips AThousandShips marked this pull request as draft May 26, 2023 07:32
@AThousandShips
Copy link
Member Author

AThousandShips commented May 26, 2023

Can split off the new settings to a separate PR if desired, have split off a commit for convenience but won't push unless other relevant changes are made

@AThousandShips AThousandShips marked this pull request as ready for review May 26, 2023 08:27
@AThousandShips AThousandShips force-pushed the atlas_mesh_fix branch 2 times, most recently from 9acb104 to 818fe88 Compare June 22, 2023 17:31
@AThousandShips
Copy link
Member Author

Removed the new options and will possibly add them in a feature improvement PR, but keeping it simple for now

Copy link
Member

@kleonc kleonc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Should be fine to include in 4.1, seems like "simple" fixes. 👍

@AThousandShips Sorry for the late review and thanks for all the patience! 🙃

@AThousandShips
Copy link
Member Author

AThousandShips commented Jun 22, 2023

No worries! Been in my backlog and happy to see it merged!

My second to last 2022 PR, and the one remaining one will take some time but maybe some time in 4.2 lol

@akien-mga akien-mga merged commit 88ce765 into godotengine:master Jun 22, 2023
@akien-mga
Copy link
Member

Thanks!

@AThousandShips AThousandShips deleted the atlas_mesh_fix branch June 22, 2023 19:03
@AThousandShips
Copy link
Member Author

Thank you!

TheSecondReal0 added a commit to TheSecondReal0/godot that referenced this pull request Jun 29, 2023
…op, VFlow right-to-left)

mid developing

behavior implemented

cleaned up

removed code dealing with vertical

ran --doctool

Merge branch 'flow-top-to-bottom' of https://github.com/TheSecondReal0/godot into flow-top-to-bottom

added support for vertical flow containers

Squashed commit of the following:

commit c83f912bcb33d441b90afe36bad38880acbe5f15
Merge: 9e903e462c 1a9739f591
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 28 15:58:57 2023 +0200

    Merge pull request #78796 from KoBeWi/vengeful_spirit_of_Godot3_tries_to_destroy_the_new_engine

    Fix crash with failed compatibility tiles

commit 1a9739f591a2cc7ee4ca8d4b90b5e20c6abaf390
Author: kobewi <[email protected]>
Date:   Wed Jun 28 15:11:10 2023 +0200

    Fix crash with failed compatibility tiles

commit 9e903e462caf3c215d3c1f6e771fa02928402b5f
Merge: bc756cd4f6 cea00ebf58
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 28 14:33:48 2023 +0200

    Merge pull request #78784 from timothyqiu/editor-import-plugin-example

    Fix function signature in `EditorImportPlugin` example

commit bc756cd4f6ec9532a0a9cf5623f98e4aed1bb581
Merge: 9a09ee5d02 2357837c43
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 28 14:33:41 2023 +0200

    Merge pull request #78740 from CURR-E/lifetime_randomness

    Correct description of `ParticleProcessMaterial.lifetime_randomness`

commit 9a09ee5d0217c4d5e5668fccddfa477bf16af357
Merge: d95b516d31 60b9eb169e
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 28 12:51:59 2023 +0200

    Merge pull request #78787 from RedworkDE/net-non-tool-reload

    C#: Fix reloading of non-tool scripts

commit 60b9eb169e8bcfe69cadea4e6f0f676cda6e993d
Author: RedworkDE <[email protected]>
Date:   Wed Jun 28 11:46:43 2023 +0200

    C# Fix reloading of non-tool scripts

commit 2357837c43cd28f82eeb87ca2a46a8311b264ace
Author: Curry <[email protected]>
Date:   Tue Jun 27 21:15:57 2023 +1000

    Correct description of ParticleProcessMaterial.lifetime_randomness

commit cea00ebf58e6b8dfbc968e978bf130dbdc92f1eb
Author: Haoyu Qiu <[email protected]>
Date:   Wed Jun 28 15:27:38 2023 +0800

    Fix function signature in EditorImportPlugin example

commit d95b516d312a9f3930a96c0fdd51cf975345f16f
Merge: 16508ead86 af01aed643
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 28 00:31:06 2023 +0200

    Merge pull request #78767 from KoBeWi/space_or_space

    Fix missing translations in EventListenerLineEdit

commit af01aed643a811f39fd97548c16b0a44d9bf4332
Author: kobewi <[email protected]>
Date:   Tue Jun 27 22:05:33 2023 +0200

    Fix missing translations in EventListenerLineEdit

commit 16508ead86c13051a1a701a64a63325cd647db53
Merge: 5e2f03fc99 70ca659143
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 27 23:02:02 2023 +0200

    Merge pull request #78745 from RandomShaper/fix_node_pr

    Fix node processing order

commit 5e2f03fc99df0c5d1de59b8713953e8b5644688c
Merge: 3c352a5a7d 538c4b62b7
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 27 23:01:24 2023 +0200

    Merge pull request #78711 from groud/explain_rpc

    Explain a bit more RPCs options

commit 70ca65914345971dccb80e8b68846f38c2739769
Author: Pedro J. Estébanez <[email protected]>
Date:   Tue Jun 27 12:48:14 2023 +0200

    Fix node internal/non-internal processing order

    Bonus:
    Fix issues in group-processing related setters

commit 3c352a5a7d2f68b859f0731d172ecd5f4bd32de4
Merge: 1b3bf48526 fb1bcac271
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 27 15:45:41 2023 +0200

    Merge pull request #78728 from Rindbee/reset-vp_pending-on-failure-or-not

    Fix that `ViewportTexture` cannot be setup again after failed setup

commit 1b3bf485263c4e2ebc8bcdb1d71b58064f4dc5bc
Merge: 950f4c3b41 104da478a8
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 27 13:09:50 2023 +0200

    Merge pull request #78727 from rburing/really_velocity

    Fix CharacterBody3D `get_position_delta()` and `get_real_velocity()`

commit 538c4b62b74d4ef3a822958096f24f0c6bdc70cd
Author: Gilles Roudière <[email protected]>
Date:   Mon Jun 26 16:40:48 2023 +0200

    Explain a bit more RPCs options

commit 950f4c3b41acef0403618dd6169be90530dea5da
Merge: 1f9e540f14 8321e0355e
Author: Fabio Alessandrelli <[email protected]>
Date:   Tue Jun 27 06:58:34 2023 +0200

    Merge pull request #78716 from akien-mga/mbedtls-load-error-handling

    mbedtls: Improve X509 certificate load error handling

commit fb1bcac2716c44e6c4fed9a6b029881fe19d1d2e
Author: Rindbee <[email protected]>
Date:   Tue Jun 27 06:12:50 2023 +0800

    Fix that `ViewportTexture` cannot be setup again after failed setup

    `vp_pending` is a flag indicating to wait for `ViewportTexture::_setup_local_to_scene`
    to be called. Once this method is called, no matter whether the setup will fail or not,
    it needs to be reset to `false`.

commit 104da478a89359ef0dffc3183205e81f26cc45a8
Author: Ricardo Buring <[email protected]>
Date:   Mon Jun 26 22:48:41 2023 +0200

    Fix CharacterBody3D get_position_delta()

    Calculate the difference of global positions.
    This also fixes get_real_velocity().

commit 1f9e540f14edbf2d496a1421f8d37e5b483c4c53
Merge: 9d089fe6e5 7c37a32897
Author: Yuri Sizov <[email protected]>
Date:   Mon Jun 26 20:59:24 2023 +0200

    Merge pull request #78720 from clayjohn/GLES3-tex-init

    Use a filter with mipmaps when initializing textures with mipmaps in GL Compatibility renderer

commit 7c37a32897712649fdbeb7b1a37f0957b2fb9fa3
Author: clayjohn <[email protected]>
Date:   Mon Jun 26 10:45:24 2023 -0700

    Use a filter with mipmaps when initializing textures with mipmaps in GL Compatibility renderer

    This works around a driver bug in some older devices and should be harmless on any spec-compliant device

commit 9d089fe6e501e4818fed1b0688631c4d65d1ba35
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 19:40:50 2023 +0200

    i18n: Sync translations with Weblate

commit 2e7a2c39e1b0dbccfbfc8e7066ec959924f99134
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 19:38:40 2023 +0200

    Bump version to 4.1-rc

    Faster release cycles are proving to work fairly well, and we have a lot more
    confidence label the current state as RC as we've had in the past.

    Let's get to 4.1-stable quickly and reopen development!

commit 5b220fbc1aec88d5e5a68069bad5a29d3f57b5fc
Merge: 0878766974 08ef3044ee
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 19:30:22 2023 +0200

    Merge pull request #78717 from KoBeWi/TracToR

    Fix missing translation in SceneCreateDialog

commit 08787669746d37d4eb5dfda0f1f5222cc0b8788e
Merge: 2930fbeecd fc0e37bbe0
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 19:25:28 2023 +0200

    Merge pull request #78719 from RandomShaper/fix_fixup

    Fix change of precedence in fixup

commit fc0e37bbe0f5b1fed6cdcb8cb5d607d36b634d2c
Author: Pedro J. Estébanez <[email protected]>
Date:   Mon Jun 26 19:20:34 2023 +0200

    Fix change of precedence in fixup

commit 08ef3044ee17bd45226257ae6d26893716c5e846
Author: kobewi <[email protected]>
Date:   Mon Jun 26 19:19:36 2023 +0200

    Fix missing translation in SceneCreateDialog

commit 8321e0355e8cab2e5222ac94d724874d173e1dd4
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 19:17:09 2023 +0200

    mbedtls: Improve X509 certificate load error handling

    Positive numbers shouldn't be treated as a hard failure:

    > For CRTs in PEM encoding, the function parses permissively:
    > if at least one certificate can be parsed, the function
    > returns the number of certificates for which parsing failed
    > (hence \c 0 if all certificates were parsed successfully).
    > If no certificate could be parsed, the function returns
    > the first (negative) error encountered during parsing.

    Fixes #77994.

commit 2930fbeecd7eab4ccffd4aea82964f2b8fd25e84
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 14:50:04 2023 +0200

    Update AUTHORS and DONORS list

    New contributors added to AUTHORS:
    @ajreckof, @AThousandShips, @bitsawer, @hakro, @mihe, @nongvantinh

    Thanks to all contributors and donors for making Godot possible!

commit 6b91f5704213543000823ec4b9876906a4549a0c
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 17:55:08 2023 +0200

    Fixup compilation warning after #78713

commit 61937011c93e4baff879548932c4406406114ff5
Merge: 3aaa787094 a39b683b12
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 17:28:31 2023 +0200

    Merge pull request #78713 from RandomShaper/fix_default_group_cq

    Ensure default node groups' call queue are processed

commit a39b683b122ee5a49bcf8daa363784a45a409899
Author: Pedro J. Estébanez <[email protected]>
Date:   Mon Jun 26 16:56:10 2023 +0200

    Ensure default node groups' call queue are processed

commit 3aaa7870949853d3f42a1f8b67d16f8f2602931c
Merge: d08ba5f3dc 91004df875
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 14:57:12 2023 +0200

    Merge pull request #78709 from Faless/mp/4.x_fix_delta_again

    [MP] Fix delta variables index decoding.

commit d08ba5f3dca8fb01e60bd369b9d5a77138659b50
Merge: 1b1e2403f9 0458ac4b81
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 14:56:47 2023 +0200

    Merge pull request #78670 from KoBeWi/cache_with_full_power

    Improve script icon cache

commit 1b1e2403f9ee1f0c8152e414c124d42491473e8e
Merge: afc5fa14ad da4590b3f1
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 14:56:24 2023 +0200

    Merge pull request #78653 from dalexeev/unexpose-doc-cache

    Unexpose `DocCache` class

commit 0458ac4b8191f514766d3e894ae563002a58ecfa
Author: kobewi <[email protected]>
Date:   Sun Jun 25 15:03:59 2023 +0200

    Improve script icon cache

commit 91004df87515bea5f49dff483db630ea453b14f8
Author: Fabio Alessandrelli <[email protected]>
Date:   Mon Jun 26 12:33:30 2023 +0200

    [MP] Fix delta variables index decoding.

commit afc5fa14adce7676746662751e63eab2d2ad4420
Merge: 320711bc8b 40e2168ac6
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 10:13:53 2023 +0200

    Merge pull request #78700 from AThousandShips/mutex_doc

    Fix documentation for `Mutex.try_lock`

commit 320711bc8be26d7c6c15b1203d028202bfa6444a
Merge: 33726f97b5 8bd14e5ca3
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 10:13:29 2023 +0200

    Merge pull request #78677 from smix8/navserver_default_values_4.x

    Add missing default Callables for new NavigationServer geometry parse and bake functions

commit 33726f97b5cee3742801a9d4fec6006bb78c3163
Merge: 8f2f5987a5 8e31d986c3
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 10:13:06 2023 +0200

    Merge pull request #78676 from smix8/doc_globalscope_navserver3d_4.x

    Fix GlobalScope doc link for NavigationServer3D

commit 8f2f5987a5cb48f959a17e95b57acbb9f217ad11
Merge: 710d2e7edf 1e8ca95cdc
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 10:12:42 2023 +0200

    Merge pull request #78673 from Geometror/fix-graphnode-hotzones

    [GraphEdit] Fix port hotzones at zoom levels other than 100%

commit 710d2e7edf54c477a15c7bc3fb91ead394b51fd9
Merge: a93c671b7d 4ae5dcca45
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 10:12:19 2023 +0200

    Merge pull request #78665 from smix8/fix_navobjects_map_4.x

    Fix NavObjects map assignments

commit a93c671b7d59d9d9be76558a8cc53bd87a0f42d1
Merge: e0de078d65 3147d84647
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 10:11:56 2023 +0200

    Merge pull request #78660 from AThousandShips/doc_node_path

    Add example for `NodePath` to grandparent

commit e0de078d65ef6225dab8355a5140a0ada2822bf9
Merge: a791103069 31fab43b8b
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 10:11:32 2023 +0200

    Merge pull request #78654 from Sauermann/fix-scene-load-crash

    Fix scene load crash related to `_ready`

commit a791103069f0547c9f3ba0055292301e91b20cb6
Merge: d577a2109a a1f517b77d
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 26 10:11:04 2023 +0200

    Merge pull request #78626 from Sauermann/fix-centered-doc

    Fix documentation of `popup_centered_ratio`

commit d577a2109a442dc7555a571db262e8b0bb93e32c
Merge: 3710f06929 e9c9285213
Author: Fabio Alessandrelli <[email protected]>
Date:   Mon Jun 26 10:06:00 2023 +0200

    Merge pull request #78662 from AThousandShips/mp_doc

    Clarify restrictions on nested `MultiplayerAPI` in `SceneTree`

commit 40e2168ac67a7fcd8cbab50de51ecf45d7ca570d
Author: Ninni Pipping <[email protected]>
Date:   Mon Jun 26 08:48:47 2023 +0200

    Fix documentation for `Mutex.try_lock`

    Documentation was not updated when return type was changed from `Error`
    to `bool`

commit 31fab43b8bde2d6b01f034c8c976756d5211abff
Author: Markus Sauermann <[email protected]>
Date:   Sat Jun 24 22:15:50 2023 +0200

    Fix scene load crash related to `_ready`

    The iterator might get invalidated during `_ready`-user-code.
    Prevent this by disallowing set_name during iterator-operations.

commit 8bd14e5ca333f2d34fcf6e148eb02e2978149e69
Author: smix8 <[email protected]>
Date:   Sun Jun 25 19:08:50 2023 +0200

    Add missing default Callables for new NavigationServer geometry parse and bake functions

    Adds missing default Callables for new NavigationServer geometry parse and bake functions.

commit 8e31d986c3ffa2f31bb05fab05767b5e930e516b
Author: smix8 <[email protected]>
Date:   Sun Jun 25 19:04:56 2023 +0200

    Fix GlobalScope doc link for NavigationServer3D

    Fixes GlobalScope doc link for NavigationServer3D.

commit 1e8ca95cdc01a3ef11a58e0434d76455cae85b96
Author: Hendrik Brucker <[email protected]>
Date:   Sun Jun 25 17:13:53 2023 +0200

    [GraphEdit] Fix port hotzones at zoom levels other than 100%

commit 4ae5dcca4563743d6c09c67e262c516020174fc4
Author: smix8 <[email protected]>
Date:   Sun Jun 25 05:28:21 2023 +0200

    Fix NavObjects map assignments

    Fixes NavObject map assignments.

commit e9c9285213725aa8fb2fa9b256d4fa775a66e297
Author: Ninni Pipping <[email protected]>
Date:   Sun Jun 25 11:29:05 2023 +0200

    Clarify restrictions on nested `MultiplayerAPI` in `SceneTree`

commit 3147d846471df67667cd331478943f5f0fda33b1
Author: Ninni Pipping <[email protected]>
Date:   Sun Jun 25 10:25:22 2023 +0200

    Add example for `NodePath` to grandparent

commit 3710f069293f2fde8afe33fea898c4b36fa5e943
Merge: 030c1a950e 39dfa8436e
Author: Rémi Verschelde <[email protected]>
Date:   Sat Jun 24 22:26:13 2023 +0200

    Merge pull request #78637 from V-Sekai/varying-offset-mismatch

    Varying mismatch causing shaders to fail.

commit da4590b3f10b715d5710c96b2741e8901400d34b
Author: Danil Alexeev <[email protected]>
Date:   Sat Jun 24 22:24:54 2023 +0300

    Unexpose `DocCache` class

commit 030c1a950e8cee19e72104b4fb79caba17a2d678
Merge: 24e7502279 1ee2697682
Author: Rémi Verschelde <[email protected]>
Date:   Sat Jun 24 11:58:01 2023 +0200

    Merge pull request #78643 from godotengine/revert-76711-fix-paste-value-not-updating-element-in-dictionaries/array

    Revert "Fix paste value not updated in dictionaries/arrays"

commit 1ee26976820c000743abaf2ad572af718062b8ee
Author: Rémi Verschelde <[email protected]>
Date:   Sat Jun 24 10:59:35 2023 +0200

    Revert "Fix paste value not updated in dictionaries/arrays"

commit 24e75022792c8389e5f2f0f3ca85bd6036054337
Merge: 19e7490c9a 0b19ec3498
Author: Rémi Verschelde <[email protected]>
Date:   Sat Jun 24 10:58:29 2023 +0200

    Merge pull request #78629 from Calinou/editor-export-mobile-web-csharp-error

    Display a message about missing C# support on Android/iOS/Web platforms

commit 39dfa8436eacfc7c916b87e64b3e8a9a03962559
Author: K. S. Ernest (iFire) Lee <[email protected]>
Date:   Fri Jun 23 21:36:38 2023 -0700

    Varying mismatch causing shaders to fail.

commit 0b19ec3498324e5fe71c8108f1e6b948b660ecdb
Author: Hugo Locurcio <[email protected]>
Date:   Sat Jun 24 00:01:53 2023 +0200

    Display a message about missing C# support on Android/iOS/Web platforms

    When trying to export a C# project, this displays an error message after
    creating a export preset for an unsupported platform.

    Support for these platforms is planned for a future release.

commit 19e7490c9ad399f1951fc6b5863b45a3fa477d3e
Merge: afe65de110 cc89321c9c
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 22:49:23 2023 +0200

    Merge pull request #78620 from clayjohn/GL-viewport

    Reset filter/repeat state of textures in GL Compatibility renderer when render target is cleared

commit afe65de11001b392cb9666b1ee32ea6c4ecf10ff
Merge: 68193bee9a f745299c36
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 22:45:51 2023 +0200

    Merge pull request #78591 from ajreckof/Fix-crash-when-removing-child-during-focus-exit-

    Fix crash when removing child during focus exit.

commit a1f517b77d7182a660ade11d5b18450e98f957bb
Author: Markus Sauermann <[email protected]>
Date:   Fri Jun 23 22:35:25 2023 +0200

    Fix documentation of `popup_centered_ratio`

commit f745299c36cfa0ae936e9d2ae829e8cca91956f0
Author: ajreckof <[email protected]>
Date:   Fri Jun 23 01:47:05 2023 +0200

    Fix crash when removing child during focus exit.

commit cc89321c9cb9b8d909c20afdec0b9e03b3ed2819
Author: clayjohn <[email protected]>
Date:   Fri Jun 23 10:57:56 2023 -0700

    Reset filter/repeat state of textures in GL Compatibility renderer when render target is cleared

commit 68193bee9a1f77427a13b92508d611b1e2110217
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 18:03:48 2023 +0200

    Revert "Fix that the focus-out notification got sent deferred"

    This reverts commit 8cdab04d7fd57aaabd790349cd8a4e9ec21a7edd.

    Fixes #78589.

commit f44b2d7898402a2a337bdc6a321f093a762dc18d
Merge: 46b2619223 f623509086
Author: Yuri Sizov <[email protected]>
Date:   Fri Jun 23 17:52:35 2023 +0200

    Merge pull request #78611 from YuriSizov/editor-cure-for-early-onset-layout-dementia

    Handle contextual editors gracefully when restoring layout

commit 46b2619223d5928381b1792e9736fd7e89b3bb53
Merge: 731df52084 7afb9dd275
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 17:23:56 2023 +0200

    Merge pull request #78614 from RandomShaper/disable_doc_cache

    Disable doc cache temporarily for pre-RC stabilization

commit 731df52084bc909cef9b4dcab6eaaf10c2282922
Merge: 9ab388c146 263c909349
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 17:23:29 2023 +0200

    Merge pull request #77532 from dsnopek/text_server_adv_gdextension

    Fix text_server_adv compiling as a GDExtension

commit 7afb9dd27591345b80565e8a694e452f8a82c339
Author: Pedro J. Estébanez <[email protected]>
Date:   Fri Jun 23 16:38:00 2023 +0200

    Disable doc cache temporarily for pre-RC stabilization

commit f6235090861f60aca5b407aa50a09d43a3c6eff9
Author: Yuri Sizov <[email protected]>
Date:   Fri Jun 23 15:46:06 2023 +0200

    Handle contextual editors gracefully when restoring layout

commit 8cfbc6bda295379f7c28a41f52cf89cb0d999a56
Author: Yuri Sizov <[email protected]>
Date:   Fri Jun 23 15:23:36 2023 +0200

    Revert "Remember only permanent bottom tabs"

    This reverts commit 5dde57e95827806101cede5d46391f2bd4b9150c.

commit 9ab388c146895cfacf87d09d28c148e186f348b6
Merge: 75f5e003de 44bec97d5e
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 12:36:44 2023 +0200

    Merge pull request #78609 from KoBeWi/—GodotEngine

    Unify window title format

commit 44bec97d5ea354458c1a48f3d7a03263b05fa8c1
Author: kobewi <[email protected]>
Date:   Fri Jun 23 12:21:56 2023 +0200

    Unify window title format

commit 75f5e003de35f784f7527333e5903c9c3b55ec63
Merge: fa7f8e34f2 5dde57e958
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 11:59:45 2023 +0200

    Merge pull request #78586 from KoBeWi/shader_editor_the_guardian_of_stability

    Remember only permanent bottom tabs

commit fa7f8e34f221c16719390865f538561350febef6
Merge: fd31dc7f32 e6e27f8be4
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 11:59:16 2023 +0200

    Merge pull request #78135 from BastiaanOlij/fix_openxr_passthrough

    Fix OpenXR Passthrough mode

commit 5dde57e95827806101cede5d46391f2bd4b9150c
Author: kobewi <[email protected]>
Date:   Thu Jun 22 23:14:14 2023 +0200

    Remember only permanent bottom tabs

commit fd31dc7f32855f23f0c38792fe42d501165f708c
Merge: 2d19cec174 982ca52e4c
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 10:43:10 2023 +0200

    Merge pull request #78601 from AThousandShips/doc_callable_fix

    Fix `MultiplayerSpawner` documentation

commit 982ca52e4cb8dd4b7b6aab9070999a3cfbcbd209
Author: Ninni Pipping <[email protected]>
Date:   Fri Jun 23 10:26:33 2023 +0200

    Fix `MultiplayerSpawner` documentation

commit 2d19cec17417f21408b16e0a9fe420ab500c32fc
Merge: fee49f4f9d 6f6999221d
Author: Fabio Alessandrelli <[email protected]>
Date:   Fri Jun 23 10:13:11 2023 +0200

    Merge pull request #78409 from AThousandShips/spawn_func_fix

    Do not serialize `MultiplayerSpawner.spawn_function`

commit fee49f4f9d9603a041cc30e85e33712a72fb8fc4
Merge: 8d65fb9ec7 ea96f5259f
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 08:49:06 2023 +0200

    Merge pull request #78596 from smix8/navmes_old_poly_clear_4.x

    Fix NavigationMesh not clearing old polygons

commit 8d65fb9ec7ac0d21c196d966c3b94c91ca895727
Merge: dbcbba5575 55fc56bfd4
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 08:48:43 2023 +0200

    Merge pull request #78584 from bgie/bgie

    Moved variables closer to usage to fix unused variable warning

commit dbcbba5575b4fdec309f684b4c2ef069076c1c73
Merge: f24f615b04 d9cc22af8f
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 08:48:20 2023 +0200

    Merge pull request #78575 from brno32/bind-light-param-intensity

    Binding LIGHT_PARAM_INTENSITY in RenderingServer

commit f24f615b0458b6549d2d4488e4d1be2e495856ff
Merge: 1d41ce76ca 237e3c6099
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 08:47:56 2023 +0200

    Merge pull request #78556 from QbieShay/qbe/hotzonehotfix

    Fix regression in visual nodes hotzones

commit 1d41ce76ca605b4f307043f2dee8f5baa85e5c8a
Merge: f9fc77bbe4 2bc85f9ac6
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 08:47:32 2023 +0200

    Merge pull request #78550 from BastiaanOlij/fix_openxr_depth_buffer

    Fix incorrect depth buffer option in OpenXR

commit ea96f5259fe924e1f29e77f81111220f30d7bc1f
Author: smix8 <[email protected]>
Date:   Fri Jun 23 01:09:15 2023 +0200

    Fix NavigationMesh not clearing old polygons

    Fixes NavigationMesh not clearing old polygons.

commit f9fc77bbe474e33967dfde69a2efa442f465fae2
Merge: c1ad74d4c3 4017524363
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 00:10:00 2023 +0200

    Merge pull request #77545 from aaronfranke/gltf-no-skeleton

    Fix exporting MeshInstances without a Skeleton in the GLTF module

commit c1ad74d4c3531310a6b72cbdf772f7b2a52674f7
Merge: b0c3c00d25 7c4921e794
Author: Rémi Verschelde <[email protected]>
Date:   Fri Jun 23 00:06:09 2023 +0200

    Merge pull request #78579 from aaronfranke/col-poly-obj-name

    Internally rename `parent` to `collision_object` in CollisionPolygon(2D/3D)

commit d9cc22af8fab650950da02552ce38057f859a549
Author: Alex Drozd <[email protected]>
Date:   Thu Jun 22 18:26:00 2023 +0200

    Binding LIGHT_PARAM_INTENSITY in RenderingServer

commit b0c3c00d2523e76583d37c41ce3730aa86933456
Merge: cb73a6e9f9 60c261ba2d
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 23:24:45 2023 +0200

    Merge pull request #78582 from Sauermann/fix-mouse-focus-nullcheck

    Re-add `mouse_focus`-nullcheck

commit 55fc56bfd4161cbb03818e235220cb72e9373b34
Author: Brecht Kuppens <[email protected]>
Date:   Thu Jun 22 23:01:09 2023 +0200

    Moved variables closer to usage to fix unused variable warning

commit 60c261ba2d22c952cde16253184f522a80c56a5b
Author: Markus Sauermann <[email protected]>
Date:   Thu Jun 22 21:58:19 2023 +0200

    Re-add `mouse_focus`-nullcheck

commit 7c4921e794fd6392afd7cc2ad7479cbaf197ee39
Author: Aaron Franke <[email protected]>
Date:   Thu Jun 22 14:06:05 2023 -0500

    Internally rename parent to collision_object in CollisionPolygon(2D/3D)

commit cb73a6e9f9046229a16b6b298c9086f03548e186
Merge: 88ce76537e 8a5af8183a
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 21:02:38 2023 +0200

    Merge pull request #78490 from clayjohn/GLES3-particles-subemit

    Add warnings and fallbacks for particles sub emitters when using the GL Compatibility rendering backend

commit 88ce76537e771527561c592660b70872976078b7
Merge: 120aa3fca8 818fe886a3
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 20:59:52 2023 +0200

    Merge pull request #68380 from AThousandShips/atlas_mesh_fix

    Bounds fixes in `TextureAtlas` import

commit 120aa3fca8ea31e1f55f5c718c59f125ee3c93a7
Merge: d87bdef2a4 399bce02cf
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 20:44:36 2023 +0200

    Merge pull request #78574 from Sauermann/fix-toplevel-reset

    Fix 3D `top_level` resetting

commit d87bdef2a4f7c83c6a236f8916ebac35ae4fd176
Merge: 522a2ea3f4 ef00de99b4
Author: Yuri Sizov <[email protected]>
Date:   Thu Jun 22 19:40:44 2023 +0200

    Merge pull request #78563 from bitsawer/fix_skeleton_error_spam

    Fix error spam when a mesh with bone weights has an invalid skeleton

commit 818fe886a356855001e0c32e7235cdefcfc7192c
Author: Ninni Pipping <[email protected]>
Date:   Fri Feb 24 15:58:42 2023 +0100

    Bounds fixes in `TextureAtlas` import

commit 237e3c6099223e3040ba10259f555e8f44c660c5
Author: QbieShay <[email protected]>
Date:   Thu Jun 22 12:59:48 2023 +0200

    Fix regression in visual nodes hotzones

commit 399bce02cf80239ab5d987e4b754eaf5c5d2eaaf
Author: Markus Sauermann <[email protected]>
Date:   Thu Jun 22 18:55:19 2023 +0200

    Fix 3D top_level resetting

    There is no need to erase the top_level flag on EXIT_TREE.
    During ENTER_TREE, `top_level = true` is not necessary, because it is
    already set to true.

commit 522a2ea3f41fef616980b4d3287f470dd3af9109
Merge: af16013905 da84efc96d
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 18:42:16 2023 +0200

    Merge pull request #78562 from MewPurPur/document-shader-include

    Document ShaderInclude

commit af160139057f4bd018e33020a42e4012e69efa5c
Merge: 283580d0cc 8848c395b6
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 18:32:25 2023 +0200

    Merge pull request #78571 from MewPurPur/include-extension-info

    Document file extensions of GDScript, CSharpScript, and Shader

commit 8848c395b6c46e99284bd5c21d52bd3d562c8a13
Author: MewPurPur <[email protected]>
Date:   Thu Jun 22 18:56:08 2023 +0200

    Add information about file extension to GDScript, CSharpScript, and Shader

commit 283580d0ccd981bb8186498385540c6f615ffcf5
Merge: c7e4dc1df7 edba45ec8b
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 18:32:01 2023 +0200

    Merge pull request #78566 from kleonc/repeated-sprite-selection-fix

    Fix click-selecting Sprites with repeated texture

commit c7e4dc1df7b39b5a5ac0108a223fd307a7238f91
Merge: 18bc912bc0 bca1f91291
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 18:31:38 2023 +0200

    Merge pull request #78561 from groud/fix_crash_in_TileSetAltasSourceEditor

    Fixes crash in TileSetAtlasSourceEditor

commit 18bc912bc0595a2d4ab2b5d42f9a6993c3b9a814
Merge: de3d4e3cec 1247c9e64f
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 18:31:14 2023 +0200

    Merge pull request #78543 from 3dnikita/fix-svg-in-ot-tag-closing

    Fix SVG tag closing for OT font glyphs

commit de3d4e3cec4e45739fdc8fb7ceff84950aab5b15
Merge: 0c4188fe32 9159208ed1
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 18:30:51 2023 +0200

    Merge pull request #78517 from AThousandShips/callable_serialize

    Ensure `RID`, `Callable`, and `Signal` are stored as strings

commit 0c4188fe32c9858f5921d9497cd1943e14e9c24f
Merge: 100082b3ac 77491d0a62
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 18:30:27 2023 +0200

    Merge pull request #78362 from AThousandShips/doc_curve_fix

    Clarify the return value of `Curve2D.sample_baked_with_rotation`

commit 100082b3acdef950dded744bda7ff16cc30afaaa
Merge: d586096415 999f3e2c13
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 18:30:04 2023 +0200

    Merge pull request #74760 from lassade/unicode-err-uses-replacement-char

    Don't append non unicode scalar values on the string, instead use the unicode replacement char

commit d586096415cd23c7c0c9ad5ec2edf8159ccb0474
Merge: e74bf831c2 7275819a91
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 18:29:34 2023 +0200

    Merge pull request #72720 from pkdawson/fix-mouse-capture

    DisplayServerWindows: Fix mouse capture when button up message is missed

commit da84efc96d81e19deddb801eafc92a6295be5eba
Author: MewPurPur <[email protected]>
Date:   Thu Jun 22 16:06:20 2023 +0200

    Document ShaderInclude

commit 77491d0a62454f22ebb44142d4e570735cbc6ad7
Author: Ninni Pipping <[email protected]>
Date:   Sat Jun 17 11:01:05 2023 +0200

    Clarify the return value of `Curve2D.sample_baked_with_rotation`

    The return value is a broken `Transform2D`, this clarifies how to use
    it.

commit 9159208ed1c850437946d4f93c407bb5d51f4258
Author: Ninni Pipping <[email protected]>
Date:   Wed Jun 21 11:06:32 2023 +0200

    Ensure `RID`, `Callable`, and `Signal` are stored as strings

    Prevents parser errors in `.tscn` and `.tres` files where the assignment
    would otherwise be empty.

commit 1247c9e64fe658b64d28531f241f184d0e10c4d6
Author: 3dnikita <[email protected]>
Date:   Thu Jun 22 04:13:03 2023 +0300

    Fix SVG tag closing for OT font glyphs

    Prevent ThorVG "Failed to create SVG canvas" errors
    by self-closing empty SVG tags in OpenType fonts,
    so the glyphs are renderred correctly in Controls.

    Fixes #78374

commit edba45ec8b9ea0c94f7622476356c64d0af2bf0b
Author: kleonc <[email protected]>
Date:   Thu Jun 22 16:23:15 2023 +0200

    Fix click-selecting Sprites with repeated texture

commit bca1f91291afa988563e6f545104af566e9845e0
Author: Gilles Roudière <[email protected]>
Date:   Thu Jun 22 15:03:53 2023 +0200

    Fixes crash in TileSetAtlasSourceEditor

commit ef00de99b432a5d8b990673dd115c9d947a673e0
Author: bitsawer <[email protected]>
Date:   Thu Jun 22 15:37:54 2023 +0300

    Fix error spam when a mesh with bone weights has an invalid skeleton

commit e74bf831c2d3ece79b849405f03999281f807648
Merge: 57e61db115 84c8946565
Author: Yuri Sizov <[email protected]>
Date:   Thu Jun 22 12:51:03 2023 +0200

    Merge pull request #78549 from dalexeev/gds-fix-prop-list-name-check

    GDScript: Remove unnecessary name check in `_get_property_list()`

commit 57e61db115909c062e6c9864cbd7aa44f2f64471
Merge: b0299c9ad1 e0f644a48d
Author: Yuri Sizov <[email protected]>
Date:   Thu Jun 22 12:45:02 2023 +0200

    Merge pull request #75533 from RedworkDE/net-no-reload-noncollectible

    C#: Fix editor integration breaking and causing error spam when reloading assemblies fails

commit b0299c9ad1eb029cd7a89e095ffa3add92187d67
Merge: 95f561dc30 731a13a1ba
Author: Yuri Sizov <[email protected]>
Date:   Thu Jun 22 12:44:25 2023 +0200

    Merge pull request #76586 from rcorre/register-language-race

    Fix a race condition in ScriptServer

commit 84c894656522f0eb44ff971208ddded68dd1ea4b
Author: Danil Alexeev <[email protected]>
Date:   Thu Jun 22 11:32:09 2023 +0300

    GDScript: Remove unnecessary name check in `_get_property_list()`

commit 2bc85f9ac62e5739339c5dd4e301ef8cbf8bbd4c
Author: Bastiaan Olij <[email protected]>
Date:   Thu Jun 22 19:03:08 2023 +1000

    Fix incorrect depth buffer option in OpenXR

commit 95f561dc30b33d77198868f4f422b4f9e068b584
Merge: 3e09b0bfa7 0f64c6a952
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 10:30:11 2023 +0200

    Merge pull request #78541 from BWPanda/patch-1

    Fix example in JSON class.

commit 3e09b0bfa77029be82067fef15467bfb9e5fab6b
Merge: 9d9740fc35 df740f6865
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 10:30:07 2023 +0200

    Merge pull request #78508 from Wuqiqi123/free_depth_texture_when_frame_buffer_check_failed

    Free depth texture after check framebuffer complete failed

commit 9d9740fc35e91052546a0e9e580ca7b48a5ff2ba
Merge: d40c45ed99 e11e9d2b9a
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 10:30:04 2023 +0200

    Merge pull request #78486 from dinoplane/fix-sat-slider

    Use cached saturation for color picker when value is 0

commit d40c45ed993db199f1db08ef51991cd0cfdcf1f6
Merge: b6ba664830 2747dd35e7
Author: Rémi Verschelde <[email protected]>
Date:   Thu Jun 22 10:29:56 2023 +0200

    Merge pull request #77688 from L4Vo5/clarify-deferred

    Clear up misconceptions about when deferred things run in the docs

commit df740f686541c69fc44247ec4a303cc9eeca56c3
Author: Qiqi Wu <[email protected]>
Date:   Wed Jun 21 16:13:01 2023 +0800

    free color and depth texture after check framebuffer complete failed

commit 0f64c6a952da1e5323d0578ac24b1715549fef2e
Author: Peter Anderson <[email protected]>
Date:   Wed Jun 21 22:41:14 2023 +0000

    Fix example in JSON class.

commit e11e9d2b9a7b14f6deea6eb3490146bbac0d3773
Author: dinoplane <[email protected]>
Date:   Tue Jun 20 11:03:30 2023 -0700

    Use cached saturation for color picker when value is 0

commit b6ba664830d9ff1bd7eeb72294fa1e7a3827e42e
Merge: f2ce0b6741 5ec1b698d2
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 23:22:00 2023 +0200

    Merge pull request #78528 from jeanahelver/master

    Fix missing enum value for `Window.initial_position`

commit 5ec1b698d24173542ede9e8f31ff552875d508d5
Author: jeana helver <[email protected]>
Date:   Wed Jun 21 17:56:23 2023 +0200

    Fix missing enum value for `Window.initial_position`

    Reorder the properties in a possibly more intuitive order.

    Co-authored-by: Rémi Verschelde <[email protected]>

commit 8a5af8183a86ef20de7027fc43cab20fb13060cc
Author: clayjohn <[email protected]>
Date:   Tue Jun 20 14:03:14 2023 -0700

    Add warnings and fallbacks for particles sub emitters when using the GL Compatibility rendering backend

    Co-authored-by: Hugo Locurcio <[email protected]>

commit f2ce0b6741049b69efb455394b8a161f68a468a6
Merge: 1e44b47970 8ce8216d17
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 21:52:15 2023 +0200

    Merge pull request #78521 from jpcerrone/fix_static_vars_refs

    Fix errors destroying script with static variables

commit 1e44b479702a577037c49600ce50f4b8a61b102c
Merge: e68270cace 952b4b3f38
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 21:51:52 2023 +0200

    Merge pull request #78499 from BastiaanOlij/fix_stereo_decals

    Apply reprojection in multiview for our cluster lookup

commit e68270caced6130f2833120e06a9ac368e344421
Merge: faf3faa8c8 dbdbe5b042
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 21:51:29 2023 +0200

    Merge pull request #78488 from paulloz/dotnet-check-projectpath-not-solutionpath

    Fix condition blocking .NET project build

commit faf3faa8c85a4bad00bc944a90e7f75e7ba5d519
Merge: 81a0199be4 f3bf75fbb4
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 21:51:05 2023 +0200

    Merge pull request #77744 from dalexeev/gds-reset-block-locals-on-exit

    GDScript: Reset local variables on exit from block

commit 81a0199be46679213bd2a46cb75394c05eb52c30
Merge: 28a60b3de0 6c28b8edd3
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 21:50:33 2023 +0200

    Merge pull request #78533 from anvilfolk/sadrevert

    GDScript: fix regression when checking for virtual function implementation

commit 6c28b8edd3bd43c28c4c5671b4b1800e14b47949
Author: ocean (they/them) <[email protected]>
Date:   Wed Jun 21 15:13:45 2023 -0400

    GDScript: fix regression when checking for virtual function implementation.

    Unfortunately it appears the virtual function checks in #77324 are not
    trustworthy at runtime, because objects can have scripts attached, but
    this information is not always available at compile-time. These checks
    need to be removed.

    The rest of the PR is still useful, making all method flags available to
    the analyzer, so a full revert isn't necessary/desirable.

    This reopens #76938, which will need another solution.

commit dbdbe5b042501f950e5facec9f4b6512cc85997a
Author: Paul Joannon <[email protected]>
Date:   Tue Jun 20 21:32:38 2023 +0200

    Fix condition blocking .NET project build

    Since #73015, the build commands are called on project files instead of solution ones.

commit 8ce8216d174276a714e65dd4d407ce8d158ab21e
Author: jpcerrone <[email protected]>
Date:   Wed Jun 21 11:42:19 2023 -0300

    Fix errors destroying script with static variables
    Fixes #78376
    After #78138 'script_list' is now cleared in 'GDScriptLanguage::finish'
    Because of that, we can safely remove the removal from that list that
    happens on 'GDScript::~GDScript'.

commit 28a60b3de02e8cfcc742a248078e6b7ee8f728b1
Merge: a2ce7a8f88 9ddd3c2af6
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 16:17:07 2023 +0200

    Merge pull request #78518 from Bromeon/feature/gdextension-since

    Add GDExtension `@since` attribute

commit 731a13a1ba4d11e0c7daa7e32335c365f9f190cd
Author: Ryan Roden-Corrent <[email protected]>
Date:   Sat Apr 29 13:54:52 2023 -0400

    Fix race in ScriptServer.

    Fixes #76581.

    TSAN flagged this issue on starting the editor:

    1. main calls register_core_types, which calls IP::create(), which calls Thread::start on the resolver thread
    2. Thread::callback calls ScriptServer::thread_enter(), as "Scripts may need to attach a stack."
    3. ScriptServer::thread_enter() accesses ScriptServer::_languages, which is still being initialized on the main thread by initialize_gdscript_module

    This fixes the issue by skipping thread enter/exit notifications if languages have not finished initializing yet.
    I'm assuming that notifying un-initialized languages of thread starts/stops would have been pointless anyways. If we need to somehow notify languages of threads before the languages initialize, we'll need a different solution.

    ```
    Godot Engine v4.0.2.stable.custom_build.7a0977ce2 - https://godotengine.org
    ==================
    WARNING: ThreadSanitizer: data race (pid=9426)
      Write of size 4 at 0x55615b187cd0 by main thread:
        #0 ScriptServer::register_language(ScriptLanguage*) /home/rcorre/src/godot/godot/core/object/script_language.cpp:177:28 (godot.linuxbsd.editor.x86_64.llvm.san+0x9e52ab9) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #1 initialize_gdscript_module(ModuleInitializationLevel) /home/rcorre/src/godot/godot/modules/gdscript/register_types.cpp:118:3 (godot.linuxbsd.editor.x86_64.llvm.san+0x36f9c6f) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #2 initialize_modules(ModuleInitializationLevel) /home/rcorre/src/godot/godot/modules/register_module_types.gen.cpp:93:2 (godot.linuxbsd.editor.x86_64.llvm.san+0x2f50499) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #3 Main::setup2(unsigned long) /home/rcorre/src/godot/godot/main/main.cpp:1961:2 (godot.linuxbsd.editor.x86_64.llvm.san+0x2f1d40d) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #4 Main::setup(char const*, int, char**, bool) /home/rcorre/src/godot/godot/main/main.cpp:1879:10 (godot.linuxbsd.editor.x86_64.llvm.san+0x2f16370) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #5 main /home/rcorre/src/godot/godot/platform/linuxbsd/godot_linuxbsd.cpp:61:14 (godot.linuxbsd.editor.x86_64.llvm.san+0x2e67e1f) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)

      Previous read of size 4 at 0x55615b187cd0 by thread T1:
        #0 ScriptServer::thread_enter() /home/rcorre/src/godot/godot/core/object/script_language.cpp:244:22 (godot.linuxbsd.editor.x86_64.llvm.san+0x9e54aed) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #1 Thread::callback(unsigned long, Thread::Settings const&, void (*)(void*), void*) /home/rcorre/src/godot/godot/core/os/thread.cpp:61:2 (godot.linuxbsd.editor.x86_64.llvm.san+0x9464ab0) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #2 void std::__invoke_impl<void, void (*)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long, Thread::Settings, void (*)(void*), void*>(std::__invoke_other, void (*&&)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long&&, Thread::Settings&&, void (*&&)(void*), void*&&) /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/12.2.1/../../../../include/c++/12.2.1/bits/invoke.h:61:14 (godot.linuxbsd.editor.x86_64.llvm.san+0x9465283) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #3 std::__invoke_result<void (*)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long, Thread::Settings, void (*)(void*), void*>::type std::__invoke<void (*)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long, Thread::Settings, void (*)(void*), void*>(void (*&&)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long&&, Thread::Settings&&, void (*&&)(void*), void*&&) /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/12.2.1/../../../../include/c++/12.2.1/bits/invoke.h:96:14 (godot.linuxbsd.editor.x86_64.llvm.san+0x9465283)
        #4 void std::thread::_Invoker<std::tuple<void (*)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long, Thread::Settings, void (*)(void*), void*>>::_M_invoke<0ul, 1ul, 2ul, 3ul, 4ul>(std::_Index_tuple<0ul, 1ul, 2ul, 3ul, 4ul>) /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/12.2.1/../../../../include/c++/12.2.1/bits/std_thread.h:258:13 (godot.linuxbsd.editor.x86_64.llvm.san+0x9465283)
        #5 std::thread::_Invoker<std::tuple<void (*)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long, Thread::Settings, void (*)(void*), void*>>::operator()() /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/12.2.1/../../../../include/c++/12.2.1/bits/std_thread.h:265:11 (godot.linuxbsd.editor.x86_64.llvm.san+0x9465283)
        #6 std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(unsigned long, Thread::Settings const&, void (*)(void*), void*), unsigned long, Thread::Settings, void (*)(void*), void*>>>::_M_run() /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/12.2.1/../../../../include/c++/12.2.1/bits/std_thread.h:210:13 (godot.linuxbsd.editor.x86_64.llvm.san+0x9465283)
        #7 execute_native_thread_routine /usr/src/debug/gcc/gcc/libstdc++-v3/src/c++11/thread.cc:82:18 (libstdc++.so.6+0xd72c2) (BuildId: 6fe66a2d539a78c993bd2d377e00fad389220963)

      Location is global 'ScriptServer::_language_count' of size 4 at 0x55615b187cd0 (godot.linuxbsd.editor.x86_64.llvm.san+0xbf46cd0)

      Thread T1 (tid=9431, running) created by main thread at:
        #0 pthread_create <null> (godot.linuxbsd.editor.x86_64.llvm.san+0x2de5776) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #1 __gthread_create /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu/bits/gthr-default.h:663:35 (libstdc++.so.6+0xd73a9) (BuildId: 6fe66a2d539a78c993bd2d377e00fad389220963)
        #2 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State>>, void (*)()) /usr/src/debug/gcc/gcc/libstdc++-v3/src/c++11/thread.cc:147:37 (libstdc++.so.6+0xd73a9)
        #3 IP::IP() /home/rcorre/src/godot/godot/core/io/ip.cpp:347:19 (godot.linuxbsd.editor.x86_64.llvm.san+0x962cbcd) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #4 IPUnix::IPUnix() /home/rcorre/src/godot/godot/drivers/unix/ip_unix.cpp:261:9 (godot.linuxbsd.editor.x86_64.llvm.san+0x4aee599) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #5 IPUnix::_create_unix() /home/rcorre/src/godot/godot/drivers/unix/ip_unix.cpp:258:9 (godot.linuxbsd.editor.x86_64.llvm.san+0x4aee599)
        #6 IP::create() /home/rcorre/src/godot/godot/core/io/ip.cpp:339:9 (godot.linuxbsd.editor.x86_64.llvm.san+0x962ca5e) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #7 register_core_types() /home/rcorre/src/godot/godot/core/register_core_types.cpp:279:7 (godot.linuxbsd.editor.x86_64.llvm.san+0x93e2333) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #8 Main::setup(char const*, int, char**, bool) /home/rcorre/src/godot/godot/main/main.cpp:690:2 (godot.linuxbsd.editor.x86_64.llvm.san+0x2f08a49) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)
        #9 main /home/rcorre/src/godot/godot/platform/linuxbsd/godot_linuxbsd.cpp:61:14 (godot.linuxbsd.editor.x86_64.llvm.san+0x2e67e1f) (BuildId: 780a9db7c37d88e78d5ee659c4fa1cd378abd048)

    SUMMARY: ThreadSanitizer: data race /home/rcorre/src/godot/godot/core/object/script_language.cpp:177:28 in ScriptServer::register_language(ScriptLanguage*)
    ```

    Co-authored-by: Pedro J. Estébanez <[email protected]>

commit a2ce7a8f8817f516995c0e88cae4519a50ab9639
Merge: ee41b2097c bf04c55175
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 13:52:42 2023 +0200

    Merge pull request #78494 from kinami-imai/SSDinaTvuI8geW91IGFsbAo=

    Fix lambda parsing continuing on subsequent lines

commit bf04c5517534848970de1652866b13afac50eba9
Author: 今井きなみ <[email protected]>
Date:   Tue Jun 20 00:47:18 2023 +0200

    Fix lambda parsing continuing on subsequent lines #73273

commit e0f644a48da49843ad63a06982af85f13783899c
Author: RedworkDE <[email protected]>
Date:   Fri Mar 31 11:53:16 2023 +0200

    C#: Fix editor integration breaking and causing error spam when reloading assemblies fails

    - Do not reload scripts from non-collectible assemblies
    - Do not load GodotTools as collectible
    - Do not attempt to reload the same project assembly forever

commit 9ddd3c2af67f440092d5284992246f1b4bf2cf25
Author: Jan Haller <[email protected]>
Date:   Wed Jun 21 12:47:48 2023 +0200

    GDExtension `@since` attribute

    All GDExtension function pointer types are versioned using a `@since` attribute, denoting the Godot minor version in
    which they were introduced. This allows bindings to query if a feature is available for a target API version, or provide
    a polyfill/fallback for it. It also serves as documentation for humans giving a feeling about recency of features.

commit ee41b2097c7881bcd63bb7d5d5690fad8a9ade1d
Merge: 735bf14ae7 6e182d41f4
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 12:43:01 2023 +0200

    Merge pull request #78509 from MewPurPur/redraw-code-edit-on-mouse-exit

    Hide breakpoint indicator when mouse leaves CodeEdit

commit 735bf14ae7f6d6dbd7f66c3117f588fb69b0ff03
Merge: ebd44641c5 ab4e89ecde
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 12:42:54 2023 +0200

    Merge pull request #76636 from angel-721/test-http

    Add HTTPClient unit tests

commit ab4e89ecde3edb9018fee6d541b795ea5a82ea15
Author: angel-721 <[email protected]>
Date:   Sun Apr 30 18:02:23 2023 -0600

    Add HTTPClient unit tests

commit 6e182d41f4aed3d313435d410e52e2aadb0650db
Author: MewPurPur <[email protected]>
Date:   Wed Jun 21 11:22:46 2023 +0200

    Hide breakpoint indicator when mouse leaves CodeEdit

commit ebd44641c53ecfafb3fa0bd5f0f6abcbc3a25e05
Merge: 4fc045e9b5 c1c5b0a435
Author: Yuri Sizov <[email protected]>
Date:   Wed Jun 21 11:19:36 2023 +0200

    Merge pull request #78492 from KoBeWi/too_slow

    Update indices after removing custom data layers

commit 4fc045e9b53becf063b50a457709ade403235d80
Merge: ada712e06a ac36776729
Author: Yuri Sizov <[email protected]>
Date:   Wed Jun 21 11:19:24 2023 +0200

    Merge pull request #76152 from timothyqiu/tile-resize-clamp

    Fix tile resizing towards atlas boundary

commit ada712e06a471da2a2f4646237830bbd7980c114
Merge: 5285927f51 42faab826d
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 10:20:11 2023 +0200

    Merge pull request #78504 from timothyqiu/gridmap-selection

    Fix GridMap tile picking when a search filter is applied

commit 5285927f5185ed0478061abdeba75890930bd2ca
Merge: d252f43a86 0d0e8b0a8a
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 10:19:47 2023 +0200

    Merge pull request #78495 from lyuma/import_tracks_single_clip

    Fix Import Tracks import setting for single clip

commit d252f43a865abaa1074f273fe4e44a75efbcc796
Merge: 3e5c50bc2f e1bdde911c
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 10:19:24 2023 +0200

    Merge pull request #78449 from Scony/add-agent-n-map-navserver-tests

    Add `agent` and `map` tests for 'NavigationServer3D'

commit 3e5c50bc2f3eec3415861587ab292a11decf5bf1
Merge: 78518be194 9dc850a2ea
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 10:19:00 2023 +0200

    Merge pull request #78250 from Ryan-000/master

    Clarify that authority is not automatically replicated

commit 78518be1946da573232731489e19cc74ea5f4d10
Merge: 9e56f28d0e c39cae4dcf
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 10:18:37 2023 +0200

    Merge pull request #75444 from lpriebe/editor-run-arg-split-fix

    Prevent quoted args in `editor/main_run_args` from being split at spaces

commit 9e56f28d0e77530f21bd38d1ef5dfb9b31072818
Merge: 5025d95d41 19d77ea90d
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 10:18:09 2023 +0200

    Merge pull request #75345 from Rindbee/fix-wrong-description-in-EditorSettings

    Fix wrong descriptions in EditorSettings

commit 5025d95d41447cf1b85008095638a0a8dffab999
Merge: 38ae7b58d1 20ceba9e82
Author: Rémi Verschelde <[email protected]>
Date:   Wed Jun 21 10:17:37 2023 +0200

    Merge pull request #69027 from Uxeron/AudioListener2DRotationFix

    Fix AudioListener2D ignoring rotation for positional audio

commit 20ceba9e820695aed4491b732ac743f3b92f93bf
Author: Uxeron <[email protected]>
Date:   Tue Nov 22 22:37:38 2022 +0200

    Fix AudioListener2D ignoring rotation

commit 42faab826d5cfc9225d02bb5931fad9b1e336264
Author: Haoyu Qiu <[email protected]>
Date:   Wed Jun 21 12:02:07 2023 +0800

    Fix GridMap tile picking when a search filter is applied

commit 952b4b3f3829f9185e13de62bb4c8ac9c27db43a
Author: Bastiaan Olij <[email protected]>
Date:   Wed Jun 21 10:59:12 2023 +1000

    Apply reprojection in multiview for our cluster lookup

commit c1c5b0a4357a8f84fa29aa199b98af54d4b25537
Author: kobewi <[email protected]>
Date:   Wed Jun 21 00:01:59 2023 +0200

    Update indices after removing custom data layers

commit 38ae7b58d17b63def71a773c1da6cd17406f81a2
Merge: 329652b6fe 13e65da804
Author: Yuri Sizov <[email protected]>
Date:   Wed Jun 21 03:03:19 2023 +0200

    Merge pull request #78350 from ajreckof/you-know-when-you-want-to-search-this-member-you-don't-know-and-then-you-have-the-script-editor-all-over-the-place-now-it-should-not-happen-anymore-hopefully

    Fix placement and style of the "Make Floating" button

commit 19d77ea90d5214f3c54abff0bb5d447564892fbb
Author: Rindbee <[email protected]>
Date:   Sun Mar 26 13:11:24 2023 +0800

    Fix wrong descriptions in EditorSettings

    Fix wrong descriptions about `editors/3d/grid_division_level_max`
    and `editors/3d/grid_division_level_min`.

commit 13e65da804f0b94423c20af739e0b53dc3fe91f0
Author: ajreckof <[email protected]>
Date:   Wed Jun 21 01:00:37 2023 +0200

    Fix wrong placement of the Make Floating Button.

commit 0d0e8b0a8a9ae412a43916ba091ad79af94adeb8
Author: Lyuma <[email protected]>
Date:   Tue Jun 20 15:49:38 2023 -0700

    Fix Import Tracks import setting for single clip

commit 9dc850a2ea6b344e849580f6e45058176ffa98d9
Author: Ryan Memarpour <[email protected]>
Date:   Wed Jun 14 20:16:30 2023 -0400

    Clarify that authority is not automatically replicated.

commit 329652b6feac2114c4e30062f18ece36d4e3addc
Merge: 58fae90ff3 ceed30c442
Author: Yuri Sizov <[email protected]>
Date:   Tue Jun 20 21:19:20 2023 +0200

    Merge pull request #78392 from Gallilus/master

    Fix `Ref<>.is_valid()` for ScriptInstanceExtension

commit 58fae90ff39c30d19ecd902d3ae9a4de136ca501
Merge: e002fb232a c54d407fa5
Author: Yuri Sizov <[email protected]>
Date:   Tue Jun 20 20:49:16 2023 +0200

    Merge pull request #78477 from groud/fix_tileset_set_as_local_to_scene

    Fixes TileSet set as local to scene

commit e002fb232a36e652bd2bdebf1dda6837ed89f51c
Merge: ab545ece85 01f887ee4f
Author: Yuri Sizov <[email protected]>
Date:   Tue Jun 20 20:48:42 2023 +0200

    Merge pull request #77717 from L4Vo5/clarify-idle-enums

    Clarify when things with _IDLE and _PHYSICS enums will run

commit ab545ece85016ad16f0274ba6f40d1ea3d81d9a8
Merge: db08287b18 4067907074
Author: Yuri Sizov <[email protected]>
Date:   Tue Jun 20 20:39:52 2023 +0200

    Merge pull request #76398 from spanzeri/insert-key-crash

    Fix insert key crash with no animation

commit db08287b18cdba4377a42304f4b2b192b6e856e5
Merge: d7af287ce3 1a70d82606
Author: Yuri Sizov <[email protected]>
Date:   Tue Jun 20 20:38:02 2023 +0200

    Merge pull request #78456 from aaronfranke/tex-format-should

    Check if the required texture format is imported in the export dialog

commit ceed30c44279bd56665e72044ed25e8e86f6eb25
Author: David Cambré <[email protected]>
Date:   Sun Jun 18 11:07:04 2023 +0200

    Fix Ref<>.is_valid() for ScriptInstanceExtension

    Only check the reference not the value.

commit 01f887ee4f9bbe4516730e9382d9bfbfe53d3df4
Author: L4Vo5 <[email protected]>
Date:   Wed May 31 20:38:19 2023 -0300

    Clarify when things with _IDLE and _PHYSICS enums will run

commit 1a70d8260643b769587bf95f12d42d08d74d1b5b
Author: Aaron Franke <[email protected]>
Date:   Mon Jun 19 20:03:51 2023 -0500

    Check if the required texture format is imported in the export dialog

commit 263c909349cb64d988bba26eb62c01a3a0b19791
Author: David Snopek <[email protected]>
Date:   Fri May 26 16:40:53 2023 -0500

    Fix text_server_adv compiling as a GDExtension

commit c54d407fa55f49c399ee9eb03066612f90aa20f3
Author: Gilles Roudière <[email protected]>
Date:   Tue Jun 20 16:35:22 2023 +0200

    Fixes TileSet set as local to scene

commit e1bdde911c21c76e866f16e4208d517438e44d2e
Author: Pawel Lampe <[email protected]>
Date:   Mon Jun 19 23:41:24 2023 +0200

    Add `agent` and `map` tests for 'NavigationServer3D'

    This commits fixes a bug in `free()` function as well.

commit 4067907074f4d2141f03f5dec82bfa71bf7a51bc
Author: Samuele Panzeri <[email protected]>
Date:   Mon Apr 24 12:46:07 2023 +0200

    Fix insert key crash with no animation

commit d7af287ce3108f74799a7d0efd59b454253f6f68
Merge: 248e5245e4 f1e79e2581
Author: Yuri Sizov <[email protected]>
Date:   Tue Jun 20 17:39:08 2023 +0200

    Merge pull request #78478 from YuriSizov/gdscript-fix-container-element-cmp

    Make container element type comparison safe

commit f1e79e2581047f954cd7739f2c5f7c45775131ae
Author: Yuri Sizov <[email protected]>
Date:   Tue Jun 20 17:04:57 2023 +0200

    Make container element type comparison safe

commit 248e5245e41ed80069eca12fcb523092fe848f28
Merge: 904db6e8cb 2a12213c31
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 15:12:39 2023 +0200

    Merge pull request #73540 from mashumafi/fix-typed-array-add

    Fix: Typed arrays aren't working with +

commit 904db6e8cbc3902f8ff93149d54f7d6f5d97bcea
Merge: af08b17f97 94b1bc0d68
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 14:56:22 2023 +0200

    Merge pull request #78467 from groud/fix_tilemap_preview

    Fix TileMap draw preview when switching CanvasItem editor tool

commit af08b17f97459b74bcb7253fb14baee06793f057
Merge: 70182cf708 8f6166bd14
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 14:56:19 2023 +0200

    Merge pull request #78466 from raulsntos/dotnet/define-constants-without-whitespace

    C#: Remove whitespace from define constants

commit 70182cf708140be91965dafaa7660cb8d380e30b
Merge: 22631f2ce3 8c564cd974
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 14:56:16 2023 +0200

    Merge pull request #78462 from akien-mga/ci-scu-linux-san

    CI: Use SCU build for Linux w/ sanitizers build

commit 22631f2ce31a4239dee2538ddb155c15536eebf6
Merge: 7dc69ff230 90446fe9f3
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 14:56:13 2023 +0200

    Merge pull request #78435 from akien-mga/scons-platform-icons

    SCons: Move platform logo/run icon to `export` folder

commit 7dc69ff2302fb1d1f47c3d0307915af063977b6b
Merge: dbe8712d4e e344bab8af
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 14:56:07 2023 +0200

    Merge pull request #74759 from AThousandShips/rid_overflow

    Handle RID validator overflow

commit 8f6166bd1451e2fd877f7ee921f874fab48f5a56
Author: Raul Santos <[email protected]>
Date:   Tue Jun 20 12:03:37 2023 +0200

    C#: Remove whitespace from define constants

    Co-authored-by: RedworkDE <[email protected]>

commit e344bab8af93649b0e00fade9362b704b7205251
Author: Ninni Pipping <[email protected]>
Date:   Fri Mar 10 17:25:28 2023 +0100

    Handle RID validator overflow

commit 90446fe9f381eaaa86caed2facc09ee1cf5fb52b
Author: Rémi Verschelde <[email protected]>
Date:   Mon Jun 19 11:28:22 2023 +0200

    SCons: Move platform logo/run icon to `export` folder

    Follow-up to #75932.
    Since these icons are only used by the export plugin, it makes sense to
    move them and generate the headers there.

    The whole `detect.is_active()` logic seems to be a leftover from before
    times, as far back as 1.0-stable it already wasn't used for anything.

    So I'm removing it and moving the export icon generation to
    `platform_methods`, where it makes more sense.

commit 8c564cd97406533e8e9a65e168979448930f94cb
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 10:09:01 2023 +0200

    CI: Use SCU build for Linux w/ sanitizers build

    It's the slowest build so a speedup from SCU is welcome.
    The other purpose of this change is to actually catch global scope
    conflicts which would break the SCU build.

    SCU builds have drawbacks as they won't fully validate that the
    includes are correct, but we should have enough other builds in the CI
    build matrix to catch this type of bug.

commit dbe8712d4eda555829283624df7c79faa4bc02ea
Merge: ddaefb3cd6 edff9ebd18
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 13:14:26 2023 +0200

    Merge pull request #78463 from AThousandShips/string_slice_doc

    Clarify `String.get_slice` behavior

commit ddaefb3cd680d19db6bacd03ffc38ac7a9ef0ec8
Merge: 798663294f a981158d1a
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 13:14:23 2023 +0200

    Merge pull request #78455 from aaronfranke/macos-fix-tex-format-valid

    macOS: Finish checking templates before validating texture formats

commit 798663294fca62619132f40d8f662be2bad41a33
Merge: 159f1ec301 bd65ae633d
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 13:14:20 2023 +0200

    Merge pull request #78452 from raulsntos/dotnet/compat-methods

    C#: Add compat overloads

commit 159f1ec3013065603a0998c94c75908fa91dcde9
Merge: 65628f23c5 8cdab04d7f
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 13:14:10 2023 +0200

    Merge pull request #78398 from Sauermann/fix-immediate-focus-out

    Fix that the focus-out notification got sent deferred

commit 65628f23c51d5a0e19582683a8ad766a70dee71a
Merge: b16ae85ce8 ce7f648694
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 13:14:07 2023 +0200

    Merge pull request #78175 from phil-hudson/fix-#78105

    Android: Set pending intent flag to stop insta-crash

commit b16ae85ce8a94cc51d9d23289c2f92f034c2c87f
Merge: 73ac33342f a0577eb23b
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 13:14:03 2023 +0200

    Merge pull request #78465 from dalexeev/gds-fix-get-script-name-collision

    GDScript: Fix `_get_script_name()` function collision for SCU build

commit 94b1bc0d6828aac50a78510df615d79d65a82fb4
Author: Gilles Roudière <[email protected]>
Date:   Tue Jun 20 12:12:01 2023 +0200

    Fix TileMap draw preview when switching CI editor tool

commit bd65ae633d527c7362ae8c7211d6bde627a2a841
Author: Raul Santos <[email protected]>
Date:   Thu Jun 8 21:18:49 2023 +0200

    C#: Add compat overloads

commit a0577eb23b303b2f60a9237c877bd2ca370a6cc2
Author: Danil Alexeev <[email protected]>
Date:   Tue Jun 20 12:03:54 2023 +0300

    GDScript: Fix `_get_script_name()` function collision for SCU build

commit ce7f648694300a34747c5bab665f7d7f5e51ff61
Author: Phil Hudson <[email protected]>
Date:   Tue Jun 13 18:52:57 2023 +0800

    fix(android): set pending intent flag to stop insta-crash

    fix(android): add conditional check for minimum sdk version

    fix(android): formatting

    fix(android): formatting

    fix(android): formatting

    fix(android): formatting again

commit edff9ebd1803a386aa3f5764a6cd338f027f375e
Author: Ninni Pipping <[email protected]>
Date:   Tue Jun 20 10:30:02 2023 +0200

    Clarify `String.get_slice` behavior

    Clarify that the function returns the whole string if there is no
    instances of the delimiter in the string.

commit 73ac33342fa8326e533604f43494844483dcca3d
Merge: dca1e0bef7 f3a6e04f8b
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 09:22:03 2023 +0200

    Merge pull request #78442 from smix8/navmesh_bake_geo_errors_4.x

    Fix potential crashes in navmesh bake geometry functions

commit dca1e0bef71ba33f895fff92acf0d331807a6433
Merge: 94a4da9de6 66272ea26e
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 09:21:39 2023 +0200

    Merge pull request #78436 from BastiaanOlij/fix_stereo_fog

    Fix volumetric fog in stereo by projection vertex in combined space

commit 94a4da9de60170e8b634fb7cc793cd4be43b9496
Merge: 0653f7a5b0 4492f7ff97
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 09:21:15 2023 +0200

    Merge pull request #78236 from AThousandShips/nine_tex_fix

    Make `NinePatchRect` listen to texture changes

commit 0653f7a5b05861288d6ffe519de2a2cf5ee21d8e
Merge: ca3283b22b 42bc437615
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 09:20:52 2023 +0200

    Merge pull request #77722 from ApplecrispEric/drag-drop-autocomplete

    Cancel autocomplete after initiating drag

commit ca3283b22b80a7f6a53ec05c5042d751cacff407
Merge: 2861253884 16f6f40669
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 09:20:27 2023 +0200

    Merge pull request #77278 from davthedev/stylebox-flat-polys-optimize

    Remove useless polygons from StyleBoxFlat drawing

commit 28612538847c812c4622ee4afb4e7aa2a58d032d
Merge: 49dedd6ce4 d19c376d2e
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 09:20:00 2023 +0200

    Merge pull request #74985 from Rubonnek/fix-audio-effect-leak-master

    Fix AudioEffectRecord circular reference

commit 49dedd6ce48b14bff89f0683a19e5904af930701
Merge: 217a20a8a0 4aecba68e3
Author: Rémi Verschelde <[email protected]>
Date:   Tue Jun 20 09:19:33 2023 +0200

    Merge pull request #74567 from Garym3/3-to-4-converter-brace-aggregate-fix

    Fix braces handling when parsing method arguments on project conversion

commit 4492f7ff970e766dccf85e4a59c9a984ebfb759b
Author: Ninni Pipping <[email protected]>
Date:   Wed Jun 14 10:33:04 2023 +0200

    Make `NinePatchRect` listen to texture changes

commit 4aecba68e347a31943dd864a5cb4b8628f351665
Author: Garym3 <[email protected]>
Date:   Mon Jun 19 22:46:42 2023 +…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Certain images are ignored when creating AtlasTextures with Import Mode set to 'Mesh2D'
5 participants