LICENSE
LICENSE-Box2D
MANIFEST.in
README.md
pyproject.toml
setup.py
box2d/.clang-format
box2d/.editorconfig
box2d/.git
box2d/.gitattributes
box2d/.gitignore
box2d/CMakeLists.txt
box2d/CMakePresets.json
box2d/LICENSE
box2d/Package.swift
box2d/README.md
box2d/build.sh
box2d/build.zig
box2d/build.zig.zon
box2d/build_emscripten.sh
box2d/build_vs2026.bat
box2d/deploy_docs.sh
box2d/.github/FUNDING.yml
box2d/.github/pull_request_template.md
box2d/.github/ISSUE_TEMPLATE/config.yml
box2d/.github/ISSUE_TEMPLATE/issue.md
box2d/.github/workflows/build.yml
box2d/api/README.md
box2d/api/api_dump.py
box2d/api/box2d_api.json
box2d/api/box2d_api_double.json
box2d/benchmark/CMakeLists.txt
box2d/benchmark/main.c
box2d/benchmark/amd7950x_avx2/compounds.csv
box2d/benchmark/amd7950x_avx2/joint_grid.csv
box2d/benchmark/amd7950x_avx2/junkyard.csv
box2d/benchmark/amd7950x_avx2/large_pyramid.csv
box2d/benchmark/amd7950x_avx2/many_pyramids.csv
box2d/benchmark/amd7950x_avx2/queries.csv
box2d/benchmark/amd7950x_avx2/rain.csv
box2d/benchmark/amd7950x_avx2/sleep.csv
box2d/benchmark/amd7950x_avx2/smash.csv
box2d/benchmark/amd7950x_avx2/spinner.csv
box2d/benchmark/amd7950x_avx2/tile_world.csv
box2d/benchmark/amd7950x_avx2/tree_cast.csv
box2d/benchmark/amd7950x_avx2/tumbler.csv
box2d/benchmark/amd7950x_avx2/washer.csv
box2d/benchmark/amd7950x_float/compounds.csv
box2d/benchmark/amd7950x_float/joint_grid.csv
box2d/benchmark/amd7950x_float/junkyard.csv
box2d/benchmark/amd7950x_float/large_pyramid.csv
box2d/benchmark/amd7950x_float/many_pyramids.csv
box2d/benchmark/amd7950x_float/rain.csv
box2d/benchmark/amd7950x_float/smash.csv
box2d/benchmark/amd7950x_float/spinner.csv
box2d/benchmark/amd7950x_float/tumbler.csv
box2d/benchmark/amd7950x_float/washer.csv
box2d/benchmark/amd7950x_sse2/compounds.csv
box2d/benchmark/amd7950x_sse2/joint_grid.csv
box2d/benchmark/amd7950x_sse2/junkyard.csv
box2d/benchmark/amd7950x_sse2/large_pyramid.csv
box2d/benchmark/amd7950x_sse2/many_pyramids.csv
box2d/benchmark/amd7950x_sse2/queries.csv
box2d/benchmark/amd7950x_sse2/rain.csv
box2d/benchmark/amd7950x_sse2/sleep.csv
box2d/benchmark/amd7950x_sse2/smash.csv
box2d/benchmark/amd7950x_sse2/spinner.csv
box2d/benchmark/amd7950x_sse2/tile_world.csv
box2d/benchmark/amd7950x_sse2/tree_cast.csv
box2d/benchmark/amd7950x_sse2/tumbler.csv
box2d/benchmark/amd7950x_sse2/washer.csv
box2d/benchmark/m2air_float/joint_grid.csv
box2d/benchmark/m2air_float/large_pyramid.csv
box2d/benchmark/m2air_float/many_pyramids.csv
box2d/benchmark/m2air_float/rain.csv
box2d/benchmark/m2air_float/smash.csv
box2d/benchmark/m2air_float/spinner.csv
box2d/benchmark/m2air_float/tumbler.csv
box2d/benchmark/m2air_neon/joint_grid.csv
box2d/benchmark/m2air_neon/junkyard.csv
box2d/benchmark/m2air_neon/large_pyramid.csv
box2d/benchmark/m2air_neon/many_pyramids.csv
box2d/benchmark/m2air_neon/rain.csv
box2d/benchmark/m2air_neon/smash.csv
box2d/benchmark/m2air_neon/spinner.csv
box2d/benchmark/m2air_neon/tumbler.csv
box2d/benchmark/m2air_neon/washer.csv
box2d/benchmark/n100_sse2/joint_grid.csv
box2d/benchmark/n100_sse2/large_pyramid.csv
box2d/benchmark/n100_sse2/many_pyramids.csv
box2d/benchmark/n100_sse2/rain.csv
box2d/benchmark/n100_sse2/smash.csv
box2d/benchmark/n100_sse2/spinner.csv
box2d/benchmark/n100_sse2/tumbler.csv
box2d/docs/CMakeLists.txt
box2d/docs/character.md
box2d/docs/collision.md
box2d/docs/extra.css
box2d/docs/foundation.md
box2d/docs/hello.md
box2d/docs/instant_scroll.cmake
box2d/docs/large_worlds.md
box2d/docs/layout.xml
box2d/docs/loose_ends.md
box2d/docs/overview.md
box2d/docs/questions.md
box2d/docs/reading.md
box2d/docs/recording.md
box2d/docs/release_notes_v310.md
box2d/docs/release_notes_v320.md
box2d/docs/samples.md
box2d/docs/simulation.md
box2d/docs/images/build.sh
box2d/docs/images/capsule.svg
box2d/docs/images/captured_toi.svg
box2d/docs/images/center_of_mass.svg
box2d/docs/images/chain_loop_inwards.svg
box2d/docs/images/chain_loop_outwards.svg
box2d/docs/images/chain_shape.svg
box2d/docs/images/circle.svg
box2d/docs/images/convex_concave.svg
box2d/docs/images/distance.svg
box2d/docs/images/distance_joint.asy
box2d/docs/images/distance_joint.svg
box2d/docs/images/ghost_collision.svg
box2d/docs/images/ghost_vertices.svg
box2d/docs/images/logo.svg
box2d/docs/images/manifolds.svg
box2d/docs/images/missed_toi.svg
box2d/docs/images/mover.png
box2d/docs/images/overlap_test.svg
box2d/docs/images/pogo.png
box2d/docs/images/prismatic_joint.asy
box2d/docs/images/prismatic_joint.svg
box2d/docs/images/raycast.svg
box2d/docs/images/replay_viewer.png
box2d/docs/images/revolute_joint.asy
box2d/docs/images/revolute_joint.svg
box2d/docs/images/samples.png
box2d/docs/images/self_intersect.svg
box2d/docs/images/simulation_loop.svg
box2d/docs/images/skin_collision.svg
box2d/docs/images/tunneling1.svg
box2d/docs/images/tunneling2.svg
box2d/docs/images/weld_joint.asy
box2d/docs/images/weld_joint.svg
box2d/docs/images/wheel_joint.asy
box2d/docs/images/wheel_joint.svg
box2d/docs/images/winding.svg
box2d/extern/glad/include/KHR/khrplatform.h
box2d/extern/glad/include/glad/glad.h
box2d/extern/glad/src/glad.c
box2d/extern/jsmn/jsmn.h
box2d/include/box2d/base.h
box2d/include/box2d/box2d.h
box2d/include/box2d/collision.h
box2d/include/box2d/config.h
box2d/include/box2d/constants.h
box2d/include/box2d/id.h
box2d/include/box2d/math_functions.h
box2d/include/box2d/math_types.h
box2d/include/box2d/types.h
box2d/samples/CMakeLists.txt
box2d/samples/car.cpp
box2d/samples/car.h
box2d/samples/container.c
box2d/samples/container.h
box2d/samples/donut.cpp
box2d/samples/donut.h
box2d/samples/doohickey.cpp
box2d/samples/doohickey.h
box2d/samples/draw.c
box2d/samples/draw.h
box2d/samples/draw_text.cpp
box2d/samples/dynamic_mover.cpp
box2d/samples/dynamic_mover.h
box2d/samples/geometric_mover.cpp
box2d/samples/geometric_mover.h
box2d/samples/main.cpp
box2d/samples/sample.cpp
box2d/samples/sample.h
box2d/samples/sample_benchmark.cpp
box2d/samples/sample_bodies.cpp
box2d/samples/sample_character.cpp
box2d/samples/sample_collision.cpp
box2d/samples/sample_continuous.cpp
box2d/samples/sample_determinism.cpp
box2d/samples/sample_events.cpp
box2d/samples/sample_geometry.cpp
box2d/samples/sample_issues.cpp
box2d/samples/sample_joints.cpp
box2d/samples/sample_replay.cpp
box2d/samples/sample_restitution.cpp
box2d/samples/sample_robustness.cpp
box2d/samples/sample_shapes.cpp
box2d/samples/sample_stacking.cpp
box2d/samples/sample_world.cpp
box2d/samples/shader.c
box2d/samples/shader.h
box2d/samples/stb_image_write.h
box2d/samples/data/background.fs
box2d/samples/data/background.vs
box2d/samples/data/circle.fs
box2d/samples/data/circle.vs
box2d/samples/data/line.fs
box2d/samples/data/line.vs
box2d/samples/data/map02.svg
box2d/samples/data/map03.svg
box2d/samples/data/map04.svg
box2d/samples/data/map_left.svg
box2d/samples/data/map_right.svg
box2d/samples/data/point.fs
box2d/samples/data/point.vs
box2d/samples/data/ramp.svg
box2d/samples/data/solid_capsule.fs
box2d/samples/data/solid_capsule.vs
box2d/samples/data/solid_circle.fs
box2d/samples/data/solid_circle.vs
box2d/samples/data/solid_polygon.fs
box2d/samples/data/solid_polygon.vs
box2d/shared/CMakeLists.txt
box2d/shared/benchmarks.c
box2d/shared/benchmarks.h
box2d/shared/determinism.c
box2d/shared/determinism.h
box2d/shared/human.c
box2d/shared/human.h
box2d/shared/utils.c
box2d/shared/utils.h
box2d/src/CMakeLists.txt
box2d/src/aabb.c
box2d/src/aabb.h
box2d/src/arena_allocator.c
box2d/src/arena_allocator.h
box2d/src/bitset.c
box2d/src/bitset.h
box2d/src/body.c
box2d/src/body.h
box2d/src/box2d.natvis
box2d/src/box2d.pc.in
box2d/src/broad_phase.c
box2d/src/broad_phase.h
box2d/src/constraint_graph.c
box2d/src/constraint_graph.h
box2d/src/contact.c
box2d/src/contact.h
box2d/src/contact_solver.c
box2d/src/contact_solver.h
box2d/src/contact_solver_w4.c
box2d/src/contact_solver_w8.c
box2d/src/contact_solver_wide.inl
box2d/src/container.h
box2d/src/core.c
box2d/src/core.h
box2d/src/distance.c
box2d/src/distance_joint.c
box2d/src/dynamic_tree.c
box2d/src/dynamic_tree.h
box2d/src/geometry.c
box2d/src/hull.c
box2d/src/id_pool.c
box2d/src/id_pool.h
box2d/src/island.c
box2d/src/island.h
box2d/src/joint.c
box2d/src/joint.h
box2d/src/manifold.c
box2d/src/math_functions.c
box2d/src/motor_joint.c
box2d/src/mover.c
box2d/src/mover_joint.c
box2d/src/parallel_for.c
box2d/src/parallel_for.h
box2d/src/physics_world.c
box2d/src/physics_world.h
box2d/src/platform.h
box2d/src/pogo_joint.c
box2d/src/prismatic_joint.c
box2d/src/recording.c
box2d/src/recording.h
box2d/src/recording_ops.inl
box2d/src/replay.c
box2d/src/replay.h
box2d/src/revolute_joint.c
box2d/src/scheduler.c
box2d/src/scheduler.h
box2d/src/sensor.c
box2d/src/sensor.h
box2d/src/shape.c
box2d/src/shape.h
box2d/src/simd.c
box2d/src/simd.h
box2d/src/snapshot.c
box2d/src/snapshot.h
box2d/src/solver.c
box2d/src/solver.h
box2d/src/solver_set.c
box2d/src/solver_set.h
box2d/src/table.c
box2d/src/table.h
box2d/src/timer.c
box2d/src/types.c
box2d/src/weld_joint.c
box2d/src/wheel_joint.c
box2d/test/CMakeLists.txt
box2d/test/main.c
box2d/test/test_bitset.c
box2d/test/test_chain.c
box2d/test/test_collision.c
box2d/test/test_container.c
box2d/test/test_determinism.c
box2d/test/test_distance.c
box2d/test/test_dynamic_tree.c
box2d/test/test_id.c
box2d/test/test_invalid_input.c
box2d/test/test_large_world.c
box2d/test/test_macros.h
box2d/test/test_math.c
box2d/test/test_mover.c
box2d/test/test_recording.c
box2d/test/test_restitution.c
box2d/test/test_shape.c
box2d/test/test_snapshot.c
box2d/test/test_sort.c
box2d/test/test_table.c
box2d/test/test_thread.c
box2d/test/test_world.c
box2d/test/swift/test_world.swift
src/box2d/__init__.py
src/box2d/_checked.py
src/box2d/_fixed_attributes.py
src/box2d/_version.py
src/box2d/accessors.py
src/box2d/body.py
src/box2d/collision_filter.py
src/box2d/dataclasses.py
src/box2d/debug_draw.py
src/box2d/diagnostics.py
src/box2d/events.py
src/box2d/joint.py
src/box2d/jointdef.py
src/box2d/lifetime.py
src/box2d/material.py
src/box2d/math.py
src/box2d/mover.py
src/box2d/query.py
src/box2d/shape.py
src/box2d/shapedef.py
src/box2d/world.py
src/box2d_python.egg-info/PKG-INFO
src/box2d_python.egg-info/SOURCES.txt
src/box2d_python.egg-info/dependency_links.txt
src/box2d_python.egg-info/entry_points.txt
src/box2d_python.egg-info/requires.txt
src/box2d_python.egg-info/top_level.txt
src/box2d_testbed/__init__.py
src/box2d_testbed/base_test.py
src/box2d_testbed/camera.py
src/box2d_testbed/debug_draw_gl.py
src/box2d_testbed/debug_draw_imgui.py
src/box2d_testbed/draw.py
src/box2d_testbed/dynamic_mover.py
src/box2d_testbed/human.py
src/box2d_testbed/scenario_console.py
src/box2d_testbed/scenario_editor.py
src/box2d_testbed/scenario_loader.py
src/box2d_testbed/scenario_store.py
src/box2d_testbed/shader.py
src/box2d_testbed/shared.py
src/box2d_testbed/tb_benchmark.py
src/box2d_testbed/tb_bodies.py
src/box2d_testbed/tb_character.py
src/box2d_testbed/tb_clock.py
src/box2d_testbed/tb_collision.py
src/box2d_testbed/tb_continuous.py
src/box2d_testbed/tb_events.py
src/box2d_testbed/tb_joints.py
src/box2d_testbed/tb_shapes.py
src/box2d_testbed/tb_stacking.py
src/box2d_testbed/testbed.py
src/box2d_testbed/testbed_simulation.py
src/box2d_testbed/testbed_state.py
src/box2d_testbed/ui.py
src/box2d_testbed/shaders/background.fs
src/box2d_testbed/shaders/background.vs
src/box2d_testbed/shaders/circle.fs
src/box2d_testbed/shaders/circle.vs
src/box2d_testbed/shaders/solid_capsule.fs
src/box2d_testbed/shaders/solid_capsule.vs
src/box2d_testbed/shaders/solid_circle.fs
src/box2d_testbed/shaders/solid_circle.vs
src/box2d_testbed/shaders/solid_polygon.fs
src/box2d_testbed/shaders/solid_polygon.vs
src/box2d_testbed/shaders/solid_polygon_debug.vs
src/tools/build_cffi.py