gitextract_pvwrcex8/ ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ └── issue.md │ └── workflows/ │ ├── build-demo.yml │ ├── deploy-docs.yml │ ├── deterministic-hash.yml │ ├── jitter-tests.yml │ ├── publish.yml │ └── test-deploy-docs.yml ├── LICENSE ├── README.md ├── docfx/ │ ├── .gitignore │ ├── AppBundle/ │ │ ├── WebDemo.runtimeconfig.json │ │ ├── _framework/ │ │ │ ├── Jitter2.wasm │ │ │ ├── Raylib-cs.wasm │ │ │ ├── System.Collections.wasm │ │ │ ├── System.Private.CoreLib.wasm │ │ │ ├── System.Runtime.InteropServices.JavaScript.wasm │ │ │ ├── WebDemo.wasm │ │ │ ├── blazor.boot.json │ │ │ ├── dotnet.js │ │ │ ├── dotnet.native.js │ │ │ ├── dotnet.native.wasm │ │ │ ├── dotnet.runtime.js │ │ │ └── supportFiles/ │ │ │ ├── 0_JetBrainsMono-LICENSE.txt │ │ │ ├── 2_lighting.fs │ │ │ └── 3_lighting.vs │ │ ├── index.html │ │ ├── main.js │ │ └── package.json │ ├── docfx.json │ ├── docs/ │ │ ├── changelog.md │ │ ├── documentation/ │ │ │ ├── arbiters.md │ │ │ ├── bodies.md │ │ │ ├── constraints.md │ │ │ ├── dynamictree.md │ │ │ ├── filters.md │ │ │ ├── general.md │ │ │ ├── images/ │ │ │ │ └── dynamictree.odp │ │ │ ├── shapes.md │ │ │ └── world.md │ │ ├── introduction.md │ │ ├── toc.yml │ │ └── tutorials/ │ │ ├── boxes/ │ │ │ ├── hello-world.md │ │ │ ├── project-setup.md │ │ │ └── render-loop.md │ │ └── teapots/ │ │ ├── aftermath.md │ │ ├── hello-world.md │ │ ├── hull-sampling.md │ │ └── project-setup.md │ ├── index.md │ ├── run.sh │ ├── template/ │ │ └── public/ │ │ └── main.js │ └── toc.yml ├── other/ │ ├── ContactClipping/ │ │ ├── ClipDebug.cs │ │ ├── JitterClipVisualizer.csproj │ │ └── Program.cs │ ├── GodotDemo/ │ │ ├── .gitattributes │ │ ├── .gitignore │ │ ├── JitterGodot.csproj │ │ ├── JitterGodot.sln │ │ ├── Program.cs │ │ ├── README.md │ │ ├── assets/ │ │ │ ├── box.png.import │ │ │ └── floor.png.import │ │ ├── box.material │ │ ├── icon.svg.import │ │ ├── main_scene.tscn │ │ └── project.godot │ ├── GodotSoftBodies/ │ │ ├── .gitattributes │ │ ├── .gitignore │ │ ├── JitterGodot.csproj │ │ ├── JitterGodot.sln │ │ ├── Program.cs │ │ ├── README.md │ │ ├── assets/ │ │ │ └── texture_08.png.import │ │ ├── box.material │ │ ├── icon.svg.import │ │ ├── main_scene.tscn │ │ └── project.godot │ └── WebDemo/ │ ├── LICENSE │ ├── Program.cs │ ├── Properties/ │ │ ├── AssemblyInfo.cs │ │ └── launchSettings.json │ ├── README.md │ ├── RLights.cs │ ├── WebDemo.csproj │ ├── assets/ │ │ ├── JetBrainsMono-LICENSE.txt │ │ ├── lighting.fs │ │ └── lighting.vs │ ├── index.html │ ├── main.js │ ├── run │ ├── runtimeconfig.template.json │ └── runtimes/ │ └── raylib.a ├── src/ │ ├── .gitignore │ ├── Jitter2/ │ │ ├── Attributes.cs │ │ ├── Collision/ │ │ │ ├── CollisionFilter/ │ │ │ │ ├── IBroadPhaseFilter.cs │ │ │ │ ├── INarrowPhaseFilter.cs │ │ │ │ └── TriangleEdgeCollisionFilter.cs │ │ │ ├── CollisionIsland.cs │ │ │ ├── DynamicTree/ │ │ │ │ ├── DynamicTree.FindNearest.cs │ │ │ │ ├── DynamicTree.RayCast.cs │ │ │ │ ├── DynamicTree.SweepCast.cs │ │ │ │ ├── DynamicTree.cs │ │ │ │ ├── IDynamicTreeProxy.cs │ │ │ │ └── TreeBox.cs │ │ │ ├── IslandHelper.cs │ │ │ ├── NarrowPhase/ │ │ │ │ ├── CollisionManifold.cs │ │ │ │ ├── ConvexPolytope.cs │ │ │ │ ├── ISupportMappable.cs │ │ │ │ ├── MinkowskiDifference.cs │ │ │ │ ├── NarrowPhase.cs │ │ │ │ ├── SimplexSolver.cs │ │ │ │ ├── SimplexSolverAB.cs │ │ │ │ └── SupportPrimitives.cs │ │ │ ├── PairHashSet.cs │ │ │ └── Shapes/ │ │ │ ├── BoxShape.cs │ │ │ ├── CapsuleShape.cs │ │ │ ├── ConeShape.cs │ │ │ ├── ConvexHullShape.cs │ │ │ ├── CylinderShape.cs │ │ │ ├── ICloneableShape.cs │ │ │ ├── PointCloudShape.cs │ │ │ ├── RigidBodyShape.cs │ │ │ ├── Shape.cs │ │ │ ├── ShapeHelper.cs │ │ │ ├── SphereShape.cs │ │ │ ├── TransformedShape.cs │ │ │ ├── TriangleMesh.cs │ │ │ ├── TriangleShape.cs │ │ │ └── VertexSupportMap.cs │ │ ├── DataStructures/ │ │ │ ├── ISink.cs │ │ │ ├── PartitionedSet.cs │ │ │ ├── ReadOnlyHashset.cs │ │ │ ├── ReadOnlyList.cs │ │ │ ├── ShardedDictionary.cs │ │ │ ├── SlimBag.cs │ │ │ └── SpanHelper.cs │ │ ├── Dynamics/ │ │ │ ├── Arbiter.cs │ │ │ ├── Constraints/ │ │ │ │ ├── AngularMotor.cs │ │ │ │ ├── BallSocket.cs │ │ │ │ ├── ConeLimit.cs │ │ │ │ ├── Constraint.cs │ │ │ │ ├── DistanceLimit.cs │ │ │ │ ├── FixedAngle.cs │ │ │ │ ├── HingeAngle.cs │ │ │ │ ├── Internal/ │ │ │ │ │ └── QMatrix.cs │ │ │ │ ├── Limit.cs │ │ │ │ ├── LinearMotor.cs │ │ │ │ ├── PointOnLine.cs │ │ │ │ ├── PointOnPlane.cs │ │ │ │ └── TwistAngle.cs │ │ │ ├── Contact.cs │ │ │ ├── Joints/ │ │ │ │ ├── HingeJoint.cs │ │ │ │ ├── Joint.cs │ │ │ │ ├── PrismaticJoint.cs │ │ │ │ ├── UniversalJoint.cs │ │ │ │ └── WeldJoint.cs │ │ │ └── RigidBody.cs │ │ ├── IDebugDrawer.cs │ │ ├── Jitter2.csproj │ │ ├── LinearMath/ │ │ │ ├── Interop.cs │ │ │ ├── JAngle.cs │ │ │ ├── JBoundingBox.cs │ │ │ ├── JMatrix.cs │ │ │ ├── JQuaternion.cs │ │ │ ├── JTriangle.cs │ │ │ ├── JVector.cs │ │ │ ├── MathHelper.cs │ │ │ └── StableMath.cs │ │ ├── Logger.cs │ │ ├── Parallelization/ │ │ │ ├── Parallel.cs │ │ │ ├── ParallelExtensions.cs │ │ │ ├── ReaderWriterLock.cs │ │ │ └── ThreadPool.cs │ │ ├── Precision.cs │ │ ├── SoftBodies/ │ │ │ ├── BroadPhaseCollisionFilter.cs │ │ │ ├── DynamicTreeCollisionFilter.cs │ │ │ ├── SoftBody.cs │ │ │ ├── SoftBodyShape.cs │ │ │ ├── SoftBodyTetrahedron.cs │ │ │ ├── SoftBodyTriangle.cs │ │ │ └── SpringConstraint.cs │ │ ├── Tracer.cs │ │ ├── Unmanaged/ │ │ │ ├── MemoryHelper.cs │ │ │ └── PartitionedBuffer.cs │ │ ├── World.Detect.cs │ │ ├── World.Deterministic.cs │ │ ├── World.Step.cs │ │ ├── World.cs │ │ └── _package/ │ │ ├── LICENSE │ │ ├── README.md │ │ └── THIRD-PARTY-NOTICES.txt │ ├── Jitter2.sln │ ├── Jitter2.slnx │ ├── JitterBenchmark/ │ │ ├── JitterBenchmark.csproj │ │ ├── Program.cs │ │ └── Usings.cs │ ├── JitterDemo/ │ │ ├── ColorGenerator.cs │ │ ├── Conversion.cs │ │ ├── ConvexDecomposition.cs │ │ ├── Demos/ │ │ │ ├── Car/ │ │ │ │ ├── ConstraintCar.cs │ │ │ │ ├── RayCastCar.cs │ │ │ │ └── Wheel.cs │ │ │ ├── Common.cs │ │ │ ├── Demo00.cs │ │ │ ├── Demo01.cs │ │ │ ├── Demo02.cs │ │ │ ├── Demo03.cs │ │ │ ├── Demo04.cs │ │ │ ├── Demo05.cs │ │ │ ├── Demo06.cs │ │ │ ├── Demo07.cs │ │ │ ├── Demo08.cs │ │ │ ├── Demo09.cs │ │ │ ├── Demo10.cs │ │ │ ├── Demo11.cs │ │ │ ├── Demo12.cs │ │ │ ├── Demo13.cs │ │ │ ├── Demo14.cs │ │ │ ├── Demo15.cs │ │ │ ├── Demo16.cs │ │ │ ├── Demo17.cs │ │ │ ├── Demo18.cs │ │ │ ├── Demo19.cs │ │ │ ├── Demo20.cs │ │ │ ├── Demo21.cs │ │ │ ├── Demo22.cs │ │ │ ├── Demo23.cs │ │ │ ├── Demo24.cs │ │ │ ├── Demo25.cs │ │ │ ├── Demo26.cs │ │ │ ├── Demo27.cs │ │ │ ├── Demo28.cs │ │ │ ├── Demo29.cs │ │ │ ├── Demo30.cs │ │ │ ├── IDemo.cs │ │ │ ├── Misc/ │ │ │ │ ├── CcdSolver.cs │ │ │ │ ├── GearCoupling.cs │ │ │ │ ├── Octree.cs │ │ │ │ └── Player.cs │ │ │ └── SoftBody/ │ │ │ ├── PressurizedSphere.cs │ │ │ ├── SoftBodyCloth.cs │ │ │ └── SoftBodyCube.cs │ │ ├── JitterDemo.csproj │ │ ├── Playground.Debug.cs │ │ ├── Playground.Gui.cs │ │ ├── Playground.Picking.cs │ │ ├── Playground.cs │ │ ├── Program.cs │ │ ├── Renderer/ │ │ │ ├── Assets/ │ │ │ │ ├── Image.cs │ │ │ │ └── Mesh.cs │ │ │ ├── CSM/ │ │ │ │ ├── CSMInstance.cs │ │ │ │ ├── CSMRenderer.cs │ │ │ │ ├── CSMShader.cs │ │ │ │ └── Instances/ │ │ │ │ ├── Cloth.cs │ │ │ │ ├── Cone.cs │ │ │ │ ├── Cube.cs │ │ │ │ ├── Cylinder.cs │ │ │ │ ├── DebugInstance.cs │ │ │ │ ├── Floor.cs │ │ │ │ ├── HalfSphere.cs │ │ │ │ ├── MultiMesh.cs │ │ │ │ ├── Sphere.cs │ │ │ │ ├── TestCube.cs │ │ │ │ ├── TriangleMesh.cs │ │ │ │ └── Tube.cs │ │ │ ├── Camera.cs │ │ │ ├── DearImGui/ │ │ │ │ ├── ImGui.cs │ │ │ │ ├── ImGuiNative.cs │ │ │ │ └── ImGuiStructs.cs │ │ │ ├── DebugRenderer.cs │ │ │ ├── ImGuiRenderer.cs │ │ │ ├── ImportResolver.cs │ │ │ ├── OpenGL/ │ │ │ │ ├── GLDebug.cs │ │ │ │ ├── GLDevice.cs │ │ │ │ ├── GLFWWindow.cs │ │ │ │ ├── Input/ │ │ │ │ │ ├── Joystick.cs │ │ │ │ │ ├── Keyboard.cs │ │ │ │ │ └── Mouse.cs │ │ │ │ ├── LinearMath/ │ │ │ │ │ ├── Matrix4.cs │ │ │ │ │ ├── MatrixHelper.cs │ │ │ │ │ ├── Vector2.cs │ │ │ │ │ ├── Vector3.cs │ │ │ │ │ └── Vector4.cs │ │ │ │ ├── Native/ │ │ │ │ │ ├── GL.cs │ │ │ │ │ └── GLFW.cs │ │ │ │ ├── Objects/ │ │ │ │ │ ├── ArrayBuffer.cs │ │ │ │ │ ├── ElementArrayBuffer.cs │ │ │ │ │ ├── Framebuffer.cs │ │ │ │ │ ├── GLBuffer.cs │ │ │ │ │ ├── GLObject.cs │ │ │ │ │ ├── Shader.cs │ │ │ │ │ ├── Texture.cs │ │ │ │ │ └── VertexArrayObject.cs │ │ │ │ └── Uniforms.cs │ │ │ ├── RenderWindow.cs │ │ │ ├── Skybox.cs │ │ │ ├── TextureOverlay.cs │ │ │ └── VertexDefinitions.cs │ │ ├── assets/ │ │ │ ├── car.LICENSE │ │ │ ├── car.blend │ │ │ ├── car.obj │ │ │ ├── car.tga │ │ │ ├── dragon.LICENSE │ │ │ ├── level.LICENSE │ │ │ ├── level.blend │ │ │ ├── level.obj │ │ │ ├── logo.tga │ │ │ ├── teapot_hull.obj │ │ │ ├── texture_10.LICENSE │ │ │ ├── texture_10.tga │ │ │ ├── unit.tga │ │ │ └── wheel.obj │ │ └── runtimes/ │ │ ├── LICENSE │ │ ├── linux-arm64/ │ │ │ └── native/ │ │ │ └── libglfw.so.3 │ │ └── linux-x64/ │ │ └── native/ │ │ └── libglfw.so.3 │ └── JitterTests/ │ ├── Api/ │ │ ├── BoundingBoxTests.cs │ │ ├── DynamicTreeDistanceTests.cs │ │ ├── InertiaTests.cs │ │ ├── InteropTests.cs │ │ ├── MassInertiaTests.cs │ │ ├── MathTests.cs │ │ ├── RayTriangle.cs │ │ ├── RigidBodyCreationTests.cs │ │ ├── RigidBodyPropertyTests.cs │ │ ├── SequentialTests.cs │ │ ├── ShapeTests.cs │ │ ├── SupportMapTests.cs │ │ ├── UnsafeConversion.cs │ │ └── WorldTests.cs │ ├── Behavior/ │ │ ├── AddRemoveTests.cs │ │ ├── BroadPhaseUpdateTests.cs │ │ ├── CollisionFilterTests.cs │ │ ├── CollisionTests.cs │ │ ├── ConstraintLifecycleTests.cs │ │ ├── ContactLifecycleTests.cs │ │ ├── ForceImpulseTests.cs │ │ ├── MiscTests.cs │ │ ├── MotionTypeTests.cs │ │ ├── NullBodyTests.cs │ │ ├── SleepTests.cs │ │ ├── StackingTests.cs │ │ └── WorldCallbackTests.cs │ ├── Constraints/ │ │ ├── AdditionalConstraintBehaviorTests.cs │ │ ├── ConstraintSolverOutcomeTests.cs │ │ ├── ConstraintTests.cs │ │ └── DeterministicConstraintSolverTests.cs │ ├── Helper.cs │ ├── JitterTests.csproj │ ├── Regression/ │ │ ├── CollisionManifoldTests.cs │ │ ├── HistoricalRegressionTests.cs │ │ └── PersistentContactManifoldSelectionTests.cs │ ├── Robustness/ │ │ ├── DisposedWorldTests.cs │ │ ├── LockTests.cs │ │ ├── MotionAndPredictionTests.cs │ │ ├── MultiThreadRobustnessTests.cs │ │ ├── NumericEdgeCaseTests.cs │ │ ├── ParallelTests.cs │ │ └── ReproducibilityTest.cs │ └── Usings.cs └── tools/ ├── CoACD/ │ ├── README │ ├── run.py │ └── run.sh └── ImGui.NET/ ├── CodeGenerator/ │ ├── CSharpCodeWriter.cs │ ├── CodeGenerator.csproj │ ├── ImguiDefinitions.cs │ ├── Program.cs │ ├── TypeInfo.cs │ └── definitions/ │ ├── cimgui/ │ │ ├── definitions.json │ │ ├── structs_and_enums.json │ │ └── variants.json │ ├── cimguizmo/ │ │ ├── definitions.json │ │ ├── structs_and_enums.json │ │ └── variants.json │ ├── cimnodes/ │ │ ├── definitions.json │ │ ├── structs_and_enums.json │ │ └── variants.json │ └── cimplot/ │ ├── definitions.json │ ├── structs_and_enums.json │ └── variants.json ├── LICENSE ├── README └── cimgui/ └── mingw-w64-x86_64.cmake