test_collision_pairs.tscn 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. [gd_scene load_steps=8 format=3 uid="uid://pm3t5nl2v6gj"]
  2. [ext_resource type="Script" uid="uid://cvlh3pf74fsjr" path="res://tests/functional/test_collision_pairs.gd" id="1"]
  3. [ext_resource type="Texture2D" uid="uid://c5duuyhbmd0m4" path="res://assets/texture/godot-head.png" id="2"]
  4. [ext_resource type="PackedScene" uid="uid://blh3twy74kbkv" path="res://tests/test_options.tscn" id="3"]
  5. [sub_resource type="RectangleShape2D" id="1"]
  6. size = Vector2(80, 120)
  7. [sub_resource type="CircleShape2D" id="2"]
  8. radius = 60.0
  9. [sub_resource type="CapsuleShape2D" id="3"]
  10. radius = 30.0
  11. height = 110.0
  12. [sub_resource type="ConcavePolygonShape2D" id="4"]
  13. segments = PackedVector2Array(-5.93512, -43.2195, 6.44476, -42.9695, 6.44476, -42.9695, 11.127, -54.3941, 11.127, -54.3941, 26.9528, -49.4309, 26.9528, -49.4309, 26.2037, -36.508, 26.2037, -36.508, 37.5346, -28.1737, 37.5346, -28.1737, 47.6282, -34.3806, 47.6282, -34.3806, 58.0427, -20.9631, 58.0427, -20.9631, 51.113, -10.2876, 51.113, -10.2876, 50.9869, 35.2694, 50.9869, 35.2694, 38.8, 47.5, 38.8, 47.5, 15.9852, 54.3613, 15.9852, 54.3613, -14.9507, 54.1845, -14.9507, 54.1845, -36.5, 48.1, -36.5, 48.1, -50.4828, 36.33, -50.4828, 36.33, -51.3668, -9.98545, -51.3668, -9.98545, -57.8889, -20.5885, -57.8889, -20.5885, -46.9473, -34.7342, -46.9473, -34.7342, -37.4014, -28.547, -37.4014, -28.547, -26.0876, -37.0323, -26.0876, -37.0323, -26.9862, -49.15, -26.9862, -49.15, -11.4152, -54.5332, -11.4152, -54.5332, -5.93512, -43.2195)
  14. [node name="Test" type="Node2D"]
  15. script = ExtResource("1")
  16. [node name="Options" parent="." instance=ExtResource("3")]
  17. [node name="Shapes" type="Node2D" parent="."]
  18. z_index = -1
  19. z_as_relative = false
  20. [node name="RigidBodyRectangle" type="RigidBody2D" parent="Shapes"]
  21. position = Vector2(114.877, 248.76)
  22. freeze = true
  23. [node name="CollisionShape2D" type="CollisionShape2D" parent="Shapes/RigidBodyRectangle"]
  24. rotation = -1.19206
  25. scale = Vector2(1.2, 1.2)
  26. shape = SubResource("1")
  27. debug_color = Color(1, 1, 0, 0.0980392)
  28. [node name="RigidBodySphere" type="RigidBody2D" parent="Shapes"]
  29. position = Vector2(314.894, 257.658)
  30. freeze = true
  31. [node name="CollisionShape2D" type="CollisionShape2D" parent="Shapes/RigidBodySphere"]
  32. shape = SubResource("2")
  33. debug_color = Color(1, 1, 0, 0.0980392)
  34. [node name="RigidBodyCapsule" type="RigidBody2D" parent="Shapes"]
  35. position = Vector2(465.629, 261.204)
  36. freeze = true
  37. [node name="CollisionShape2D" type="CollisionShape2D" parent="Shapes/RigidBodyCapsule"]
  38. rotation = -0.202458
  39. scale = Vector2(1.2, 1.2)
  40. shape = SubResource("3")
  41. debug_color = Color(1, 1, 0, 0.0980392)
  42. [node name="RigidBodyConvexPolygon" type="RigidBody2D" parent="Shapes"]
  43. position = Vector2(613.385, 252.771)
  44. freeze = true
  45. [node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="Shapes/RigidBodyConvexPolygon"]
  46. polygon = PackedVector2Array(10.7, -54.5, 28.3596, -49.4067, 47.6282, -34.3806, 57.9717, -20.9447, 50.9869, 35.2694, 38.8, 47.5, 15.9852, 54.3613, -14.9507, 54.1845, -36.5, 48.1, -50.4828, 36.33, -58.0115, -20.515, -46.9473, -34.7342, -26.0876, -50.1138, -11.4152, -54.5332)
  47. [node name="GodotIcon" type="Sprite2D" parent="Shapes/RigidBodyConvexPolygon"]
  48. modulate = Color(1, 1, 1, 0.392157)
  49. texture = ExtResource("2")
  50. [node name="RigidBodyConcavePolygon" type="RigidBody2D" parent="Shapes"]
  51. position = Vector2(771.159, 252.771)
  52. freeze = true
  53. [node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="Shapes/RigidBodyConcavePolygon"]
  54. polygon = PackedVector2Array(-5.93512, -43.2195, 6.44476, -42.9695, 11.127, -54.3941, 26.9528, -49.4309, 26.2037, -36.508, 37.5346, -28.1737, 47.6282, -34.3806, 58.0427, -20.9631, 51.113, -10.2876, 50.9869, 35.2694, 38.8, 47.5, 15.9852, 54.3613, -14.9507, 54.1845, -36.5, 48.1, -50.4828, 36.33, -51.3668, -9.98545, -57.8889, -20.5885, -46.9473, -34.7342, -37.4014, -28.547, -26.0876, -37.0323, -26.9862, -49.15, -11.4152, -54.5332)
  55. [node name="GodotIcon" type="Sprite2D" parent="Shapes/RigidBodyConcavePolygon"]
  56. modulate = Color(1, 1, 1, 0.392157)
  57. texture = ExtResource("2")
  58. [node name="RigidBodyConcaveSegments" type="RigidBody2D" parent="Shapes"]
  59. position = Vector2(930.097, 252.771)
  60. freeze = true
  61. [node name="CollisionShape2D" type="CollisionShape2D" parent="Shapes/RigidBodyConcaveSegments"]
  62. shape = SubResource("4")
  63. debug_color = Color(1, 1, 0, 0.0980392)
  64. [node name="GodotIcon" type="Sprite2D" parent="Shapes/RigidBodyConcaveSegments"]
  65. modulate = Color(1, 1, 1, 0.392157)
  66. texture = ExtResource("2")
  67. [node name="Controls" type="VBoxContainer" parent="."]
  68. anchors_preset = 15
  69. anchor_right = 1.0
  70. anchor_bottom = 1.0
  71. offset_left = 25.3619
  72. offset_top = 416.765
  73. offset_right = 218.362
  74. offset_bottom = 458.765
  75. theme_override_constants/separation = 10
  76. [node name="OffsetH" type="HBoxContainer" parent="Controls"]
  77. layout_mode = 2
  78. theme_override_constants/separation = 20
  79. alignment = 2
  80. [node name="Label" type="Label" parent="Controls/OffsetH"]
  81. layout_mode = 2
  82. text = "Offset H"
  83. [node name="HSlider" type="HSlider" parent="Controls/OffsetH"]
  84. custom_minimum_size = Vector2(200, 0)
  85. layout_mode = 2
  86. min_value = -1.0
  87. max_value = 1.0
  88. step = 0.01
  89. [node name="OffsetV" type="HBoxContainer" parent="Controls"]
  90. layout_mode = 2
  91. theme_override_constants/separation = 20
  92. alignment = 2
  93. [node name="Label" type="Label" parent="Controls/OffsetV"]
  94. layout_mode = 2
  95. text = "Offset V"
  96. [node name="HSlider" type="HSlider" parent="Controls/OffsetV"]
  97. custom_minimum_size = Vector2(200, 0)
  98. layout_mode = 2
  99. min_value = -1.0
  100. max_value = 1.0
  101. step = 0.01
  102. [connection signal="value_changed" from="Controls/OffsetH/HSlider" to="." method="set_h_offset"]
  103. [connection signal="value_changed" from="Controls/OffsetV/HSlider" to="." method="set_v_offset"]