Skip to content

Commit

Permalink
Merge pull request #3 from erayzesen/bugfix/fix-glitches-in-welcome-s…
Browse files Browse the repository at this point in the history
…cene

Resolve Self-Collision Issues and Revise the 'Welcome' Example Scene
  • Loading branch information
erayzesen authored Jan 5, 2025
2 parents 44e835d + f763487 commit d71e8c5
Show file tree
Hide file tree
Showing 51 changed files with 2,284 additions and 2,137 deletions.
Binary file modified .sconsign.dblite
Binary file not shown.
Binary file not shown.
24 changes: 12 additions & 12 deletions project/examples/1_welcome/main.tscn
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ data_particle_positions = PackedVector2Array(-48, -80, 48, -80, -32, -48, -32, 1
data_particle_radius = PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
data_particle_is_internal = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1)
data_springs = Array[PackedInt32Array]([PackedInt32Array(13, 11), PackedInt32Array(11, 10), PackedInt32Array(10, 9), PackedInt32Array(9, 8), PackedInt32Array(8, 0), PackedInt32Array(1, 7), PackedInt32Array(7, 5), PackedInt32Array(5, 6), PackedInt32Array(16, 15), PackedInt32Array(15, 14), PackedInt32Array(14, 13), PackedInt32Array(2, 4), PackedInt32Array(4, 3), PackedInt32Array(3, 12), PackedInt32Array(17, 19), PackedInt32Array(19, 18), PackedInt32Array(18, 16), PackedInt32Array(0, 20), PackedInt32Array(20, 21), PackedInt32Array(2, 22), PackedInt32Array(21, 24), PackedInt32Array(22, 23), PackedInt32Array(12, 25), PackedInt32Array(25, 26), PackedInt32Array(23, 27), PackedInt32Array(27, 28), PackedInt32Array(28, 6), PackedInt32Array(24, 1), PackedInt32Array(26, 17)])
data_internal_springs = Array[PackedInt32Array]([PackedInt32Array(28, 5), PackedInt32Array(6, 27), PackedInt32Array(27, 5), PackedInt32Array(27, 7), PackedInt32Array(5, 23), PackedInt32Array(23, 7), PackedInt32Array(23, 24), PackedInt32Array(22, 24), PackedInt32Array(23, 21), PackedInt32Array(21, 22), PackedInt32Array(22, 20), PackedInt32Array(20, 2), PackedInt32Array(2, 21), PackedInt32Array(2, 8), PackedInt32Array(0, 2), PackedInt32Array(8, 20), PackedInt32Array(9, 4), PackedInt32Array(9, 2), PackedInt32Array(4, 8), PackedInt32Array(9, 3), PackedInt32Array(10, 4), PackedInt32Array(3, 10), PackedInt32Array(11, 3), PackedInt32Array(12, 10), PackedInt32Array(11, 12), PackedInt32Array(12, 14), PackedInt32Array(14, 11), PackedInt32Array(12, 13), PackedInt32Array(12, 15), PackedInt32Array(25, 16), PackedInt32Array(15, 26), PackedInt32Array(26, 16), PackedInt32Array(16, 17), PackedInt32Array(16, 19), PackedInt32Array(17, 18), PackedInt32Array(26, 19), PackedInt32Array(1, 23), PackedInt32Array(7, 24), PackedInt32Array(14, 25), PackedInt32Array(15, 25)])
data_internal_springs = Array[PackedInt32Array]([PackedInt32Array(6, 27), PackedInt32Array(27, 5), PackedInt32Array(5, 23), PackedInt32Array(23, 7), PackedInt32Array(23, 24), PackedInt32Array(23, 21), PackedInt32Array(21, 22), PackedInt32Array(22, 20), PackedInt32Array(20, 2), PackedInt32Array(2, 8), PackedInt32Array(0, 2), PackedInt32Array(9, 4), PackedInt32Array(4, 8), PackedInt32Array(9, 3), PackedInt32Array(3, 10), PackedInt32Array(12, 10), PackedInt32Array(11, 12), PackedInt32Array(12, 14), PackedInt32Array(12, 15), PackedInt32Array(25, 16), PackedInt32Array(26, 16), PackedInt32Array(16, 17), PackedInt32Array(17, 18), PackedInt32Array(7, 24), PackedInt32Array(15, 25), PackedInt32Array(13, 12)])
data_polygon = PackedInt32Array(13, 11, 10, 9, 8, 0, 20, 21, 24, 1, 7, 5, 6, 28, 27, 23, 22, 2, 4, 3, 12, 25, 26, 17, 19, 18, 16, 15, 14)

[node name="WordU" type="QSoftBodyNode" parent="."]
Expand All @@ -111,7 +111,7 @@ data_particle_positions = PackedVector2Array(-64, -80, 64, -80, -32, -80, 32, -8
data_particle_radius = PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
data_particle_is_internal = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
data_springs = Array[PackedInt32Array]([PackedInt32Array(4, 18), PackedInt32Array(18, 17), PackedInt32Array(17, 16), PackedInt32Array(16, 15), PackedInt32Array(0, 2), PackedInt32Array(2, 14), PackedInt32Array(0, 15), PackedInt32Array(14, 13), PackedInt32Array(13, 12), PackedInt32Array(12, 11), PackedInt32Array(11, 9), PackedInt32Array(9, 10), PackedInt32Array(23, 21), PackedInt32Array(10, 23), PackedInt32Array(21, 19), PackedInt32Array(19, 3), PackedInt32Array(3, 1), PackedInt32Array(1, 20), PackedInt32Array(20, 22), PackedInt32Array(22, 22), PackedInt32Array(22, 24), PackedInt32Array(24, 25), PackedInt32Array(25, 7), PackedInt32Array(7, 6), PackedInt32Array(6, 8), PackedInt32Array(8, 5), PackedInt32Array(5, 4)])
data_internal_springs = Array[PackedInt32Array]([PackedInt32Array(2, 15), PackedInt32Array(0, 14), PackedInt32Array(14, 16), PackedInt32Array(15, 13), PackedInt32Array(13, 17), PackedInt32Array(16, 12), PackedInt32Array(12, 18), PackedInt32Array(17, 11), PackedInt32Array(11, 5), PackedInt32Array(18, 11), PackedInt32Array(11, 4), PackedInt32Array(5, 18), PackedInt32Array(5, 9), PackedInt32Array(11, 8), PackedInt32Array(9, 6), PackedInt32Array(8, 10), PackedInt32Array(10, 25), PackedInt32Array(6, 10), PackedInt32Array(10, 7), PackedInt32Array(6, 25), PackedInt32Array(24, 10), PackedInt32Array(23, 25), PackedInt32Array(23, 24), PackedInt32Array(23, 22), PackedInt32Array(21, 24), PackedInt32Array(21, 22), PackedInt32Array(21, 20), PackedInt32Array(19, 22), PackedInt32Array(19, 20), PackedInt32Array(19, 1), PackedInt32Array(3, 20), PackedInt32Array(15, 14), PackedInt32Array(16, 13), PackedInt32Array(17, 12)])
data_internal_springs = Array[PackedInt32Array]([PackedInt32Array(0, 14), PackedInt32Array(15, 13), PackedInt32Array(16, 12), PackedInt32Array(17, 11), PackedInt32Array(11, 5), PackedInt32Array(18, 11), PackedInt32Array(11, 4), PackedInt32Array(11, 8), PackedInt32Array(9, 6), PackedInt32Array(10, 25), PackedInt32Array(6, 10), PackedInt32Array(6, 25), PackedInt32Array(23, 25), PackedInt32Array(23, 24), PackedInt32Array(21, 24), PackedInt32Array(21, 22), PackedInt32Array(19, 22), PackedInt32Array(19, 20), PackedInt32Array(3, 20), PackedInt32Array(15, 14), PackedInt32Array(16, 13), PackedInt32Array(17, 12), PackedInt32Array(8, 9)])
data_polygon = PackedInt32Array(0, 2, 14, 13, 12, 11, 9, 10, 23, 21, 19, 3, 1, 20, 22, 24, 25, 7, 6, 8, 5, 4, 18, 17, 16, 15)

[node name="WordA" type="QSoftBodyNode" parent="."]
Expand All @@ -134,7 +134,7 @@ data_particle_positions = PackedVector2Array(48, -80, 0, -80, 32, -80, 3.1e-05,
data_particle_radius = PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
data_particle_is_internal = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
data_springs = Array[PackedInt32Array]([PackedInt32Array(9, 8), PackedInt32Array(8, 5), PackedInt32Array(5, 1), PackedInt32Array(1, 2), PackedInt32Array(2, 0), PackedInt32Array(0, 6), PackedInt32Array(6, 10), PackedInt32Array(10, 12), PackedInt32Array(12, 16), PackedInt32Array(16, 15), PackedInt32Array(15, 18), PackedInt32Array(18, 19), PackedInt32Array(19, 20), PackedInt32Array(20, 14), PackedInt32Array(14, 23), PackedInt32Array(24, 23), PackedInt32Array(24, 26), PackedInt32Array(26, 29), PackedInt32Array(29, 27), PackedInt32Array(27, 28), PackedInt32Array(28, 25), PackedInt32Array(25, 22), PackedInt32Array(22, 21), PackedInt32Array(21, 17), PackedInt32Array(17, 13), PackedInt32Array(13, 11), PackedInt32Array(11, 4), PackedInt32Array(4, 3), PackedInt32Array(3, 7), PackedInt32Array(7, 9)])
data_internal_springs = Array[PackedInt32Array]([PackedInt32Array(9, 5), PackedInt32Array(7, 8), PackedInt32Array(5, 7), PackedInt32Array(7, 1), PackedInt32Array(3, 5), PackedInt32Array(1, 3), PackedInt32Array(3, 2), PackedInt32Array(4, 1), PackedInt32Array(2, 4), PackedInt32Array(4, 6), PackedInt32Array(0, 4), PackedInt32Array(2, 6), PackedInt32Array(4, 10), PackedInt32Array(11, 10), PackedInt32Array(11, 6), PackedInt32Array(11, 12), PackedInt32Array(10, 13), PackedInt32Array(13, 12), PackedInt32Array(12, 17), PackedInt32Array(13, 16), PackedInt32Array(17, 16), PackedInt32Array(17, 18), PackedInt32Array(16, 18), PackedInt32Array(15, 17), PackedInt32Array(21, 19), PackedInt32Array(19, 17), PackedInt32Array(18, 21), PackedInt32Array(21, 20), PackedInt32Array(19, 22), PackedInt32Array(22, 20), PackedInt32Array(23, 22), PackedInt32Array(22, 14), PackedInt32Array(20, 23), PackedInt32Array(23, 25), PackedInt32Array(22, 24), PackedInt32Array(24, 25), PackedInt32Array(25, 29), PackedInt32Array(26, 25), PackedInt32Array(29, 24), PackedInt32Array(25, 27), PackedInt32Array(28, 29)])
data_internal_springs = Array[PackedInt32Array]([PackedInt32Array(7, 8), PackedInt32Array(5, 7), PackedInt32Array(7, 1), PackedInt32Array(1, 3), PackedInt32Array(3, 2), PackedInt32Array(2, 4), PackedInt32Array(4, 6), PackedInt32Array(2, 6), PackedInt32Array(11, 10), PackedInt32Array(11, 6), PackedInt32Array(13, 12), PackedInt32Array(12, 17), PackedInt32Array(17, 16), PackedInt32Array(17, 18), PackedInt32Array(16, 18), PackedInt32Array(21, 19), PackedInt32Array(19, 17), PackedInt32Array(21, 20), PackedInt32Array(22, 20), PackedInt32Array(23, 22), PackedInt32Array(22, 14), PackedInt32Array(24, 25), PackedInt32Array(25, 29), PackedInt32Array(29, 24), PackedInt32Array(25, 27), PackedInt32Array(10, 13), PackedInt32Array(23, 25)])
data_polygon = PackedInt32Array(8, 5, 1, 2, 0, 6, 10, 12, 16, 15, 18, 19, 20, 14, 23, 24, 26, 29, 27, 28, 25, 22, 21, 17, 13, 11, 4, 3, 7, 9)

[node name="WordR" type="QSoftBodyNode" parent="."]
Expand All @@ -156,16 +156,16 @@ data_particle_positions = PackedVector2Array(-64, 80, -64, 48, -64, 16, -64, -16
data_particle_radius = PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
data_particle_is_internal = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
data_springs = Array[PackedInt32Array]([PackedInt32Array(17, 0), PackedInt32Array(1, 0), PackedInt32Array(1, 2), PackedInt32Array(2, 3), PackedInt32Array(3, 4), PackedInt32Array(4, 5), PackedInt32Array(5, 6), PackedInt32Array(6, 7), PackedInt32Array(7, 8), PackedInt32Array(8, 9), PackedInt32Array(9, 10), PackedInt32Array(10, 11), PackedInt32Array(11, 12), PackedInt32Array(12, 13), PackedInt32Array(13, 14), PackedInt32Array(14, 15), PackedInt32Array(16, 17), PackedInt32Array(16, 18), PackedInt32Array(18, 15)])
data_internal_springs = Array[PackedInt32Array]([PackedInt32Array(0, 16), PackedInt32Array(17, 1), PackedInt32Array(1, 16), PackedInt32Array(1, 18), PackedInt32Array(2, 16), PackedInt32Array(2, 18), PackedInt32Array(2, 15), PackedInt32Array(3, 18), PackedInt32Array(3, 15), PackedInt32Array(3, 14), PackedInt32Array(15, 4), PackedInt32Array(14, 7), PackedInt32Array(4, 7), PackedInt32Array(14, 5), PackedInt32Array(4, 6), PackedInt32Array(3, 7), PackedInt32Array(14, 8), PackedInt32Array(7, 13), PackedInt32Array(8, 13), PackedInt32Array(13, 9), PackedInt32Array(12, 8), PackedInt32Array(12, 9), PackedInt32Array(12, 10), PackedInt32Array(9, 11), PackedInt32Array(10, 13), PackedInt32Array(11, 8)])
data_internal_springs = Array[PackedInt32Array]([PackedInt32Array(1, 16), PackedInt32Array(1, 18), PackedInt32Array(2, 18), PackedInt32Array(3, 15), PackedInt32Array(3, 14), PackedInt32Array(14, 7), PackedInt32Array(4, 7), PackedInt32Array(4, 6), PackedInt32Array(3, 7), PackedInt32Array(14, 8), PackedInt32Array(8, 13), PackedInt32Array(13, 9), PackedInt32Array(12, 9), PackedInt32Array(12, 10), PackedInt32Array(2, 15), PackedInt32Array(0, 16)])
data_polygon = PackedInt32Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 18, 16, 17)

[node name="WordK" type="QSoftBodyNode" parent="."]
rigidity = 0.3
self_collision = true
shape_matching = true
shape_matching_rate = 0.35
position = Vector2(782, 133)
rotation = -0.261799
position = Vector2(768, 128)
rotation = 0.178834

[node name="QMeshAdvancedNode" type="QMeshAdvancedNode" parent="WordK"]
enable_vector_rendering = true
Expand All @@ -175,9 +175,9 @@ enable_stroke = true
stroke_color = Color(0.0862745, 0.0901961, 0.101961, 1)
enable_curved_corners = true
curve_length = 3.0
data_particle_positions = PackedVector2Array(-64.5, -79.5, -64.5001, -47.5, -64.5, -15.5, -64.5, 16.5, -64.5001, 48.5, -64.5, 80.5, -32.5, -79.5, -32.5, -47.5, -32.5, -15.5, -32.5, 16.5, -32.5, 48.5, -32.5, 80.5, 31.5, -79.5, 63.4999, -63.5, -16.5, -31.5, -0.499998, 0.500001, -16.5, 32.5, 63.4999, 64.5, 31.5001, 80.5, 15.5, -15.5, 31.5, -31.5, 47.5, -47.5, -0.499998, -47.5, 15.5, -63.5, 15.5, 16.5, -0.499998, 48.5, 31.5, 32.5, 15.5, 64.5, 47.5, 48.5)
data_particle_radius = PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
data_particle_is_internal = PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
data_springs = Array[PackedInt32Array]([PackedInt32Array(0, 1), PackedInt32Array(1, 2), PackedInt32Array(2, 3), PackedInt32Array(3, 4), PackedInt32Array(4, 5), PackedInt32Array(5, 11), PackedInt32Array(11, 10), PackedInt32Array(9, 10), PackedInt32Array(9, 16), PackedInt32Array(0, 6), PackedInt32Array(6, 7), PackedInt32Array(7, 8), PackedInt32Array(8, 14), PackedInt32Array(14, 22), PackedInt32Array(22, 23), PackedInt32Array(23, 12), PackedInt32Array(13, 21), PackedInt32Array(21, 20), PackedInt32Array(20, 19), PackedInt32Array(19, 15), PackedInt32Array(16, 25), PackedInt32Array(25, 27), PackedInt32Array(27, 18), PackedInt32Array(17, 28), PackedInt32Array(28, 26), PackedInt32Array(26, 24), PackedInt32Array(24, 15)])
data_internal_springs = Array[PackedInt32Array]([PackedInt32Array(1, 7), PackedInt32Array(2, 8), PackedInt32Array(3, 9), PackedInt32Array(8, 9), PackedInt32Array(4, 10), PackedInt32Array(6, 1), PackedInt32Array(0, 7), PackedInt32Array(7, 2), PackedInt32Array(1, 8), PackedInt32Array(8, 3), PackedInt32Array(2, 9), PackedInt32Array(9, 4), PackedInt32Array(3, 10), PackedInt32Array(10, 5), PackedInt32Array(4, 11), PackedInt32Array(15, 8), PackedInt32Array(15, 9), PackedInt32Array(14, 19), PackedInt32Array(22, 20), PackedInt32Array(23, 21), PackedInt32Array(12, 13), PackedInt32Array(16, 24), PackedInt32Array(25, 26), PackedInt32Array(27, 28), PackedInt32Array(18, 17), PackedInt32Array(8, 19), PackedInt32Array(14, 15), PackedInt32Array(14, 20), PackedInt32Array(19, 22), PackedInt32Array(22, 21), PackedInt32Array(20, 23), PackedInt32Array(23, 13), PackedInt32Array(21, 12), PackedInt32Array(9, 24), PackedInt32Array(15, 16), PackedInt32Array(16, 26), PackedInt32Array(24, 25), PackedInt32Array(25, 28), PackedInt32Array(26, 27), PackedInt32Array(27, 17), PackedInt32Array(28, 18)])
data_polygon = PackedInt32Array(5, 4, 3, 2, 1, 0, 6, 7, 8, 14, 22, 23, 12, 13, 21, 20, 19, 15, 24, 26, 28, 17, 18, 27, 25, 16, 9, 10, 11)
data_particle_positions = PackedVector2Array(-48, -80, -48, -48, -48, -16, -48, 16, -48, 48, -48, 80, -16, -80, -16, -48, -16, -16, -16, 16, -16, 48, -16, 80, 48, -80, 80, -64, 16, 0, 80, 64, 48, 80, 48, -32, 16, -48, 16, 48, 48, 32)
data_particle_radius = PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
data_particle_is_internal = PackedByteArray(1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
data_springs = Array[PackedInt32Array]([PackedInt32Array(0, 6), PackedInt32Array(6, 7), PackedInt32Array(7, 8), PackedInt32Array(12, 13), PackedInt32Array(15, 16), PackedInt32Array(9, 10), PackedInt32Array(10, 11), PackedInt32Array(11, 5), PackedInt32Array(5, 4), PackedInt32Array(4, 3), PackedInt32Array(2, 1), PackedInt32Array(1, 0), PackedInt32Array(8, 18), PackedInt32Array(18, 12), PackedInt32Array(13, 17), PackedInt32Array(17, 14), PackedInt32Array(14, 20), PackedInt32Array(20, 15), PackedInt32Array(16, 19), PackedInt32Array(19, 9), PackedInt32Array(2, 3)])
data_internal_springs = Array[PackedInt32Array]([PackedInt32Array(1, 7), PackedInt32Array(2, 8), PackedInt32Array(3, 9), PackedInt32Array(4, 10), PackedInt32Array(18, 17), PackedInt32Array(20, 19), PackedInt32Array(0, 7), PackedInt32Array(1, 8), PackedInt32Array(3, 10), PackedInt32Array(4, 11), PackedInt32Array(8, 14), PackedInt32Array(9, 14), PackedInt32Array(2, 9), PackedInt32Array(18, 14), PackedInt32Array(12, 17), PackedInt32Array(14, 19), PackedInt32Array(20, 16), PackedInt32Array(8, 9)])
data_polygon = PackedInt32Array(0, 6, 7, 8, 18, 12, 13, 17, 14, 20, 15, 16, 19, 9, 10, 11, 5, 4, 3, 2, 1)
Loading

0 comments on commit d71e8c5

Please sign in to comment.