OSS探訪

real-time collision detectionとphysics simulationをgames・robotics・VR・machine learningへ組み込む

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
14,762
主要言語
C++
ライセンス
未判定
リポジトリ最終更新
2025/10/22
ページ内ナビ

概要

Bullet Physics SDKは、real-time collision detectionとmulti-physics simulationを提供するC++ projectです。games、visual effects、robotics、VR、machine learningなどを対象にし、Python bindingのPyBulletも提供しています。roboticsやreinforcement learningではREADMEがPyBulletの利用を推奨しています。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

collision detectionとrigid body simulationをnative applicationへ組み込む

C++ SDKとしてcollision detectionとphysics simulationを提供し、Windows、Linux、macOS、iOS、Androidなど複数platformで利用できます。

出典:[1]

PyBulletからrobotics・kinematics・reinforcement learningを試す

PyBulletはURDF等のarticulated bodyを扱い、forward/inverse dynamics、kinematics、collision detection、ray queryなどをPythonから利用するinterfaceです。release 3.25のsetup.pyではpackage version 3.2.5として定義されています。

出典:[1][2]

向いている用途

gamesだけでなくrobotics simulationや学習環境にも向く

real-time physicsを必要とするgame、VR、visual effectに加え、robotics simulatorやreinforcement learning environmentのphysics backendとして利用できます。

出典:[1][2]

導入前の確認

C++ buildとPyBullet installを別の導入経路として考える

PyBulletはpipから導入できますが、native C++ SDKではCMakeやvcpkg等のbuild手順があります。対象applicationが必要とするAPIとplatformに応じて導入方式を選びます。

出典:[1]

repository全体を単一zlib licenseとして扱わない

LICENSE.txtは主要sourceをzlib licenseとしつつ、Extrasとexamples/ThirdPartyLibsを例外として明記しています。GitHub metadataもNOASSERTIONのため、catalogのrepo-level SPDXは未設定とし、利用するcomponentごとにlicenseを確認します。

出典:[3]

最新Release tagとdefault branchの時点差を意識する

2026年10月3日時点のGitHub最新Releaseは3.25で、PyBullet 3.2.5として2022年4月に公開されています。一方repositoryにはその後のcommitがあるため、release固定で利用するかmasterの変更を追うかを明確にします。

出典:[4][5]

参考にした公式資料

  1. [1]Bullet3 3.25 README(2026-10-03)
  2. [2]PyBullet 3.2.5 setup.py(2026-10-03)
  3. [3]Bullet3 3.25 licensing(2026-10-03)
  4. [4]Bullet3 3.25 release(2026-10-03)
  5. [5]bulletphysics/bullet3 repository(2026-10-03)
編集部からの補足

game physicsだけでなくroboticsやreinforcement learningでも使える一方、C++ SDKとPyBulletでは導入経路が異なります。まずPython bindingでsimulation modelを検証し、native integrationが必要な範囲だけC++ buildへ進むと構成を絞りやすくなります。

3ステップで試す

  1. 1

    PyBullet 3.2.5を仮想環境へインストールする

    Bullet3 release 3.25に対応するPyBullet package versionを固定して導入します。

    python3 -m venv .venv && . .venv/bin/activate && python -m pip install pybullet==3.2.5
  2. 2

    インストール済みversionを確認する

    simulationを起動せず、local package metadataから3.2.5が導入されたことを確認します。

    python -c "import importlib.metadata; print(importlib.metadata.version('pybullet'))"
  3. 3

    PyBullet moduleを読み込む

    GUIや外部serviceを使わず、native extensionを含むmoduleが正常に読み込めることを確認します。

    python -c "import pybullet; print(pybullet.__name__)"
公式READMEで確認

成長

成長の推移 · 直近30日

14,762 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
0
Open PR
164

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • simulation
  • robotics
  • kinematics
  • virtual-reality
  • reinforcement-learning
  • computer-animation
  • game-development
  • simulator
  • pybullet
Stars
14,762
Forks
3,096
Watchers
404
Open Issues
268
Contributors
221
所有者種別
Organization
主要言語
C++
ライセンス
未判定
リポジトリ最終更新
2025/10/22

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?