box2d-bindings 0.1.5-aarch64-linux → 0.1.6-aarch64-linux
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ChangeLog +4 -0
- data/README.md +1 -1
- data/lib/box2d_base.rb +2 -0
- data/lib/box2d_collision.rb +47 -43
- data/lib/box2d_main.rb +4 -0
- data/lib/box2d_math_inline_functions.rb +1 -0
- data/lib/box2d_types.rb +11 -5
- data/lib/libbox2d.aarch64.so +0 -0
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 82def3d2a8519e7f1518a76996a0127f4328cd4195c4bb471d7c36b33979ecd7
|
|
4
|
+
data.tar.gz: ace953dcb903081f5e1c7bd57ca319d69302ce6ecf455d0cce7ffd9ccabc5281
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d6fb9947cdc62d72f56d94db4bb77f080d21c5c26cfe5e857040b57d138c49a0e57b6b850c64be5a9d14d637520f577ac9279a882c8e91275a27f6c85122d128
|
|
7
|
+
data.tar.gz: 773a532dd4433c9f7bc2563686a89d46e345d047179dad40e4a999b7e1675354776f801325fcb25de3bf0783389bfe079454748a0343dd918da3dbcd5580cb7f
|
data/ChangeLog
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
2026-04-26 vaiorabbit <http://twitter.com/vaiorabbit>
|
|
2
|
+
|
|
3
|
+
* https://github.com/erincatto/box2d/commit/ddfd9df727a06940af34b5bc2ef79bcaba287d50
|
|
4
|
+
|
|
1
5
|
2026-03-11 vaiorabbit <http://twitter.com/vaiorabbit>
|
|
2
6
|
|
|
3
7
|
* https://github.com/erincatto/box2d/commit/5778d748bb06fdabcd46cb0d56646d8b2d6a4be7
|
data/README.md
CHANGED
data/lib/box2d_base.rb
CHANGED
|
@@ -10,6 +10,7 @@ module Box2D
|
|
|
10
10
|
extend FFI::Library
|
|
11
11
|
# Define/Macro
|
|
12
12
|
|
|
13
|
+
ENABLE_VALIDATION = 0
|
|
13
14
|
HASH_INIT = 5381
|
|
14
15
|
|
|
15
16
|
# Enum
|
|
@@ -55,6 +56,7 @@ module Box2D
|
|
|
55
56
|
[:SetAssertFcn, :b2SetAssertFcn, [:pointer], :void],
|
|
56
57
|
[:SetLogFcn, :b2SetLogFcn, [:pointer], :void],
|
|
57
58
|
[:GetVersion, :b2GetVersion, [], Version.by_value],
|
|
59
|
+
[:InternalAssert, :b2InternalAssert, [:pointer, :pointer, :int], :int],
|
|
58
60
|
[:GetTicks, :b2GetTicks, [], :ulong_long],
|
|
59
61
|
[:GetMilliseconds, :b2GetMilliseconds, [:ulong_long], :float],
|
|
60
62
|
[:GetMillisecondsAndReset, :b2GetMillisecondsAndReset, [:pointer], :float],
|
data/lib/box2d_collision.rb
CHANGED
|
@@ -82,44 +82,6 @@ module Box2D
|
|
|
82
82
|
end
|
|
83
83
|
end
|
|
84
84
|
|
|
85
|
-
class SimplexCache < FFI::Struct
|
|
86
|
-
layout(
|
|
87
|
-
:count, :ushort,
|
|
88
|
-
:indexA, [:uchar, 3],
|
|
89
|
-
:indexB, [:uchar, 3],
|
|
90
|
-
)
|
|
91
|
-
def count = self[:count]
|
|
92
|
-
def count=(v) self[:count] = v end
|
|
93
|
-
def indexA = self[:indexA]
|
|
94
|
-
def indexA=(v) self[:indexA] = v end
|
|
95
|
-
def indexB = self[:indexB]
|
|
96
|
-
def indexB=(v) self[:indexB] = v end
|
|
97
|
-
def self.create_as(_count_, _indexA_, _indexB_)
|
|
98
|
-
instance = SimplexCache.new
|
|
99
|
-
instance[:count] = _count_
|
|
100
|
-
instance[:indexA] = _indexA_
|
|
101
|
-
instance[:indexB] = _indexB_
|
|
102
|
-
instance
|
|
103
|
-
end
|
|
104
|
-
end
|
|
105
|
-
|
|
106
|
-
class Hull < FFI::Struct
|
|
107
|
-
layout(
|
|
108
|
-
:points, [Vec2, 8],
|
|
109
|
-
:count, :int,
|
|
110
|
-
)
|
|
111
|
-
def points = self[:points]
|
|
112
|
-
def points=(v) self[:points] = v end
|
|
113
|
-
def count = self[:count]
|
|
114
|
-
def count=(v) self[:count] = v end
|
|
115
|
-
def self.create_as(_points_, _count_)
|
|
116
|
-
instance = Hull.new
|
|
117
|
-
instance[:points] = _points_
|
|
118
|
-
instance[:count] = _count_
|
|
119
|
-
instance
|
|
120
|
-
end
|
|
121
|
-
end
|
|
122
|
-
|
|
123
85
|
class RayCastInput < FFI::Struct
|
|
124
86
|
layout(
|
|
125
87
|
:origin, Vec2,
|
|
@@ -346,6 +308,23 @@ module Box2D
|
|
|
346
308
|
end
|
|
347
309
|
end
|
|
348
310
|
|
|
311
|
+
class Hull < FFI::Struct
|
|
312
|
+
layout(
|
|
313
|
+
:points, [Vec2, 8],
|
|
314
|
+
:count, :int,
|
|
315
|
+
)
|
|
316
|
+
def points = self[:points]
|
|
317
|
+
def points=(v) self[:points] = v end
|
|
318
|
+
def count = self[:count]
|
|
319
|
+
def count=(v) self[:count] = v end
|
|
320
|
+
def self.create_as(_points_, _count_)
|
|
321
|
+
instance = Hull.new
|
|
322
|
+
instance[:points] = _points_
|
|
323
|
+
instance[:count] = _count_
|
|
324
|
+
instance
|
|
325
|
+
end
|
|
326
|
+
end
|
|
327
|
+
|
|
349
328
|
class SegmentDistanceResult < FFI::Struct
|
|
350
329
|
layout(
|
|
351
330
|
:closest1, Vec2,
|
|
@@ -375,6 +354,27 @@ module Box2D
|
|
|
375
354
|
end
|
|
376
355
|
end
|
|
377
356
|
|
|
357
|
+
class SimplexCache < FFI::Struct
|
|
358
|
+
layout(
|
|
359
|
+
:count, :ushort,
|
|
360
|
+
:indexA, [:uchar, 3],
|
|
361
|
+
:indexB, [:uchar, 3],
|
|
362
|
+
)
|
|
363
|
+
def count = self[:count]
|
|
364
|
+
def count=(v) self[:count] = v end
|
|
365
|
+
def indexA = self[:indexA]
|
|
366
|
+
def indexA=(v) self[:indexA] = v end
|
|
367
|
+
def indexB = self[:indexB]
|
|
368
|
+
def indexB=(v) self[:indexB] = v end
|
|
369
|
+
def self.create_as(_count_, _indexA_, _indexB_)
|
|
370
|
+
instance = SimplexCache.new
|
|
371
|
+
instance[:count] = _count_
|
|
372
|
+
instance[:indexA] = _indexA_
|
|
373
|
+
instance[:indexB] = _indexB_
|
|
374
|
+
instance
|
|
375
|
+
end
|
|
376
|
+
end
|
|
377
|
+
|
|
378
378
|
class DistanceInput < FFI::Struct
|
|
379
379
|
layout(
|
|
380
380
|
:proxyA, ShapeProxy,
|
|
@@ -617,10 +617,11 @@ module Box2D
|
|
|
617
617
|
|
|
618
618
|
class ManifoldPoint < FFI::Struct
|
|
619
619
|
layout(
|
|
620
|
-
:
|
|
620
|
+
:clipPoint, Vec2,
|
|
621
621
|
:anchorA, Vec2,
|
|
622
622
|
:anchorB, Vec2,
|
|
623
623
|
:separation, :float,
|
|
624
|
+
:baseSeparation, :float,
|
|
624
625
|
:normalImpulse, :float,
|
|
625
626
|
:tangentImpulse, :float,
|
|
626
627
|
:totalNormalImpulse, :float,
|
|
@@ -628,14 +629,16 @@ module Box2D
|
|
|
628
629
|
:id, :ushort,
|
|
629
630
|
:persisted, :bool,
|
|
630
631
|
)
|
|
631
|
-
def
|
|
632
|
-
def
|
|
632
|
+
def clipPoint = self[:clipPoint]
|
|
633
|
+
def clipPoint=(v) self[:clipPoint] = v end
|
|
633
634
|
def anchorA = self[:anchorA]
|
|
634
635
|
def anchorA=(v) self[:anchorA] = v end
|
|
635
636
|
def anchorB = self[:anchorB]
|
|
636
637
|
def anchorB=(v) self[:anchorB] = v end
|
|
637
638
|
def separation = self[:separation]
|
|
638
639
|
def separation=(v) self[:separation] = v end
|
|
640
|
+
def baseSeparation = self[:baseSeparation]
|
|
641
|
+
def baseSeparation=(v) self[:baseSeparation] = v end
|
|
639
642
|
def normalImpulse = self[:normalImpulse]
|
|
640
643
|
def normalImpulse=(v) self[:normalImpulse] = v end
|
|
641
644
|
def tangentImpulse = self[:tangentImpulse]
|
|
@@ -648,12 +651,13 @@ module Box2D
|
|
|
648
651
|
def id=(v) self[:id] = v end
|
|
649
652
|
def persisted = self[:persisted]
|
|
650
653
|
def persisted=(v) self[:persisted] = v end
|
|
651
|
-
def self.create_as(
|
|
654
|
+
def self.create_as(_clipPoint_, _anchorA_, _anchorB_, _separation_, _baseSeparation_, _normalImpulse_, _tangentImpulse_, _totalNormalImpulse_, _normalVelocity_, _id_, _persisted_)
|
|
652
655
|
instance = ManifoldPoint.new
|
|
653
|
-
instance[:
|
|
656
|
+
instance[:clipPoint] = _clipPoint_
|
|
654
657
|
instance[:anchorA] = _anchorA_
|
|
655
658
|
instance[:anchorB] = _anchorB_
|
|
656
659
|
instance[:separation] = _separation_
|
|
660
|
+
instance[:baseSeparation] = _baseSeparation_
|
|
657
661
|
instance[:normalImpulse] = _normalImpulse_
|
|
658
662
|
instance[:tangentImpulse] = _tangentImpulse_
|
|
659
663
|
instance[:totalNormalImpulse] = _totalNormalImpulse_
|
data/lib/box2d_main.rb
CHANGED
|
@@ -54,6 +54,8 @@ module Box2D
|
|
|
54
54
|
[:World_GetGravity, :b2World_GetGravity, [WorldId.by_value], Vec2.by_value],
|
|
55
55
|
[:World_Explode, :b2World_Explode, [WorldId.by_value, :pointer], :void],
|
|
56
56
|
[:World_SetContactTuning, :b2World_SetContactTuning, [WorldId.by_value, :float, :float, :float], :void],
|
|
57
|
+
[:World_SetContactRecycleDistance, :b2World_SetContactRecycleDistance, [WorldId.by_value, :float], :void],
|
|
58
|
+
[:World_GetContactRecycleDistance, :b2World_GetContactRecycleDistance, [WorldId.by_value], :float],
|
|
57
59
|
[:World_SetMaximumLinearSpeed, :b2World_SetMaximumLinearSpeed, [WorldId.by_value, :float], :void],
|
|
58
60
|
[:World_GetMaximumLinearSpeed, :b2World_GetMaximumLinearSpeed, [WorldId.by_value], :float],
|
|
59
61
|
[:World_EnableWarmStarting, :b2World_EnableWarmStarting, [WorldId.by_value, :bool], :void],
|
|
@@ -65,6 +67,8 @@ module Box2D
|
|
|
65
67
|
[:World_GetUserData, :b2World_GetUserData, [WorldId.by_value], :pointer],
|
|
66
68
|
[:World_SetFrictionCallback, :b2World_SetFrictionCallback, [WorldId.by_value, :pointer], :void],
|
|
67
69
|
[:World_SetRestitutionCallback, :b2World_SetRestitutionCallback, [WorldId.by_value, :pointer], :void],
|
|
70
|
+
[:World_SetWorkerCount, :b2World_SetWorkerCount, [WorldId.by_value, :int], :void],
|
|
71
|
+
[:World_GetWorkerCount, :b2World_GetWorkerCount, [WorldId.by_value], :int],
|
|
68
72
|
[:World_DumpMemoryStats, :b2World_DumpMemoryStats, [WorldId.by_value], :void],
|
|
69
73
|
[:World_RebuildStaticTree, :b2World_RebuildStaticTree, [WorldId.by_value], :void],
|
|
70
74
|
[:World_EnableSpeculative, :b2World_EnableSpeculative, [WorldId.by_value, :bool], :void],
|
|
@@ -28,6 +28,7 @@ module Box2D
|
|
|
28
28
|
[:MaxInt, :b2MaxInt, [:int, :int], :int],
|
|
29
29
|
[:AbsInt, :b2AbsInt, [:int], :int],
|
|
30
30
|
[:ClampInt, :b2ClampInt, [:int, :int, :int], :int],
|
|
31
|
+
[:CeilingInt, :b2CeilingInt, [:int, :int], :int],
|
|
31
32
|
[:MinFloat, :b2MinFloat, [:float, :float], :float],
|
|
32
33
|
[:MaxFloat, :b2MaxFloat, [:float, :float], :float],
|
|
33
34
|
[:AbsFloat, :b2AbsFloat, [:float], :float],
|
data/lib/box2d_types.rb
CHANGED
|
@@ -175,6 +175,11 @@ module Box2D
|
|
|
175
175
|
HexColor_colorBox2DBlue = 3190463
|
|
176
176
|
HexColor_colorBox2DGreen = 9226532
|
|
177
177
|
HexColor_colorBox2DYellow = 16772748
|
|
178
|
+
ContactDrawType_drawContacts_None = 0
|
|
179
|
+
ContactDrawType_drawContacts_Clip = 1
|
|
180
|
+
ContactDrawType_drawContacts_AnchorA = 2
|
|
181
|
+
ContactDrawType_drawContacts_AnchorB = 3
|
|
182
|
+
ContactDrawType_drawContacts_Average = 4
|
|
178
183
|
|
|
179
184
|
# Typedef
|
|
180
185
|
|
|
@@ -192,6 +197,7 @@ module Box2D
|
|
|
192
197
|
typedef :pointer, :b2CastResultFcn
|
|
193
198
|
typedef :pointer, :b2PlaneResultFcn
|
|
194
199
|
typedef :int, :b2HexColor
|
|
200
|
+
typedef :int, :b2ContactDrawType
|
|
195
201
|
|
|
196
202
|
# Struct
|
|
197
203
|
|
|
@@ -1449,13 +1455,13 @@ module Box2D
|
|
|
1449
1455
|
:drawingBounds, AABB,
|
|
1450
1456
|
:forceScale, :float,
|
|
1451
1457
|
:jointScale, :float,
|
|
1458
|
+
:contactDrawType, :int,
|
|
1452
1459
|
:drawShapes, :bool,
|
|
1453
1460
|
:drawJoints, :bool,
|
|
1454
1461
|
:drawJointExtras, :bool,
|
|
1455
1462
|
:drawBounds, :bool,
|
|
1456
1463
|
:drawMass, :bool,
|
|
1457
1464
|
:drawBodyNames, :bool,
|
|
1458
|
-
:drawContactPoints, :bool,
|
|
1459
1465
|
:drawGraphColors, :bool,
|
|
1460
1466
|
:drawContactFeatures, :bool,
|
|
1461
1467
|
:drawContactNormals, :bool,
|
|
@@ -1488,6 +1494,8 @@ module Box2D
|
|
|
1488
1494
|
def forceScale=(v) self[:forceScale] = v end
|
|
1489
1495
|
def jointScale = self[:jointScale]
|
|
1490
1496
|
def jointScale=(v) self[:jointScale] = v end
|
|
1497
|
+
def contactDrawType = self[:contactDrawType]
|
|
1498
|
+
def contactDrawType=(v) self[:contactDrawType] = v end
|
|
1491
1499
|
def drawShapes = self[:drawShapes]
|
|
1492
1500
|
def drawShapes=(v) self[:drawShapes] = v end
|
|
1493
1501
|
def drawJoints = self[:drawJoints]
|
|
@@ -1500,8 +1508,6 @@ module Box2D
|
|
|
1500
1508
|
def drawMass=(v) self[:drawMass] = v end
|
|
1501
1509
|
def drawBodyNames = self[:drawBodyNames]
|
|
1502
1510
|
def drawBodyNames=(v) self[:drawBodyNames] = v end
|
|
1503
|
-
def drawContactPoints = self[:drawContactPoints]
|
|
1504
|
-
def drawContactPoints=(v) self[:drawContactPoints] = v end
|
|
1505
1511
|
def drawGraphColors = self[:drawGraphColors]
|
|
1506
1512
|
def drawGraphColors=(v) self[:drawGraphColors] = v end
|
|
1507
1513
|
def drawContactFeatures = self[:drawContactFeatures]
|
|
@@ -1516,7 +1522,7 @@ module Box2D
|
|
|
1516
1522
|
def drawIslands=(v) self[:drawIslands] = v end
|
|
1517
1523
|
def context = self[:context]
|
|
1518
1524
|
def context=(v) self[:context] = v end
|
|
1519
|
-
def self.create_as(_DrawPolygonFcn_, _DrawSolidPolygonFcn_, _DrawCircleFcn_, _DrawSolidCircleFcn_, _DrawSolidCapsuleFcn_, _DrawLineFcn_, _DrawTransformFcn_, _DrawPointFcn_, _DrawStringFcn_, _drawingBounds_, _forceScale_, _jointScale_, _drawShapes_, _drawJoints_, _drawJointExtras_, _drawBounds_, _drawMass_, _drawBodyNames_,
|
|
1525
|
+
def self.create_as(_DrawPolygonFcn_, _DrawSolidPolygonFcn_, _DrawCircleFcn_, _DrawSolidCircleFcn_, _DrawSolidCapsuleFcn_, _DrawLineFcn_, _DrawTransformFcn_, _DrawPointFcn_, _DrawStringFcn_, _drawingBounds_, _forceScale_, _jointScale_, _contactDrawType_, _drawShapes_, _drawJoints_, _drawJointExtras_, _drawBounds_, _drawMass_, _drawBodyNames_, _drawGraphColors_, _drawContactFeatures_, _drawContactNormals_, _drawContactForces_, _drawFrictionForces_, _drawIslands_, _context_)
|
|
1520
1526
|
instance = DebugDraw.new
|
|
1521
1527
|
instance[:DrawPolygonFcn] = _DrawPolygonFcn_
|
|
1522
1528
|
instance[:DrawSolidPolygonFcn] = _DrawSolidPolygonFcn_
|
|
@@ -1530,13 +1536,13 @@ module Box2D
|
|
|
1530
1536
|
instance[:drawingBounds] = _drawingBounds_
|
|
1531
1537
|
instance[:forceScale] = _forceScale_
|
|
1532
1538
|
instance[:jointScale] = _jointScale_
|
|
1539
|
+
instance[:contactDrawType] = _contactDrawType_
|
|
1533
1540
|
instance[:drawShapes] = _drawShapes_
|
|
1534
1541
|
instance[:drawJoints] = _drawJoints_
|
|
1535
1542
|
instance[:drawJointExtras] = _drawJointExtras_
|
|
1536
1543
|
instance[:drawBounds] = _drawBounds_
|
|
1537
1544
|
instance[:drawMass] = _drawMass_
|
|
1538
1545
|
instance[:drawBodyNames] = _drawBodyNames_
|
|
1539
|
-
instance[:drawContactPoints] = _drawContactPoints_
|
|
1540
1546
|
instance[:drawGraphColors] = _drawGraphColors_
|
|
1541
1547
|
instance[:drawContactFeatures] = _drawContactFeatures_
|
|
1542
1548
|
instance[:drawContactNormals] = _drawContactNormals_
|
data/lib/libbox2d.aarch64.so
CHANGED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: box2d-bindings
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.6
|
|
5
5
|
platform: aarch64-linux
|
|
6
6
|
authors:
|
|
7
7
|
- vaiorabbit
|
|
@@ -64,7 +64,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
64
64
|
- !ruby/object:Gem::Version
|
|
65
65
|
version: '0'
|
|
66
66
|
requirements: []
|
|
67
|
-
rubygems_version: 4.0.
|
|
67
|
+
rubygems_version: 4.0.6
|
|
68
68
|
specification_version: 4
|
|
69
69
|
summary: Ruby bindings for Box2D
|
|
70
70
|
test_files: []
|