ボックス 3D、オープンソースの 3D フィジカルエンジン

2026/07/01 21:12

ボックス 3D、オープンソースの 3D フィジカルエンジン

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

Box3D は GitHub で利用可能な新しいオープンソースの 3D 物理エンジンであり、Box2D から派生し、Valve の Rubikon-Lite(もともと Dirk Gregorius が Half-Life: Alyx のために開発)を基盤として構築されています。2D と 3D の取り組み間の互換性を維持するために、大半の API およびデータ構造は Box2D のコードに置き換えられ、コア部分は三角形メッシュおよび高フィールド(height-field)衝突検出機能を拡張して実装されています。そのアーキテクチャは C++17 API を維持しつつ、サブステップソルバー、連続的な衝突検出、大規模な島管理のためのグラフカラーリング、広範な SIMD 接触ソルバー、マルチスレッドフック、および大きな世界位置向けの倍精度サポートを追加しています。

Box3D は主に Kintsugiyama が開発した『The Legend of California』向けに作成され、Unreal Engine の Chaos プリシクスにおける制限に対処するために設計されています。これには、ギyroscopic トルクサポートの欠如(2024 年末まで)や不規則な木倒れシミュレーションなどの課題が含まれます。自前のエンジンを用いることで、サーバー権限を持つ倒れる木、平均値分割(median split)を使用したボクセルベースの衝突メッシュ構築、および最大で 50,000 のメッシュを持つ大規模要塞向けのストリーミング複合衝突など、さまざまな最適化を実現しています。プロジェクトは現在アルファ版であり、v0.1 リリースが差し迫っており、テストとドキュメントが完了次第 v1.0 への移行が計画されています。今後の作業には、キャラクター移動の改善、ゴースト衝突の軽減、さらなる最適化、そして改良されたjointソルバーが含まれます。

Box2D の閉鎖型コントリビューションポリシーとは異なり、Box3D はコントリビューターライセンス契約に基づきコミュニティからのプルリクエストを歓迎しており、GitHub および Patreon を通じてサポートを提供しています(更新は公式ウェブサイトと Box2D Discord を介して共有されます)。すでに Facepunch Studios の『s&box』、Bobby Anguelov が率いるオープンソースの Esoterica エンジン、Glenn Fiedler による 1,000 人同時接続可能な宇宙ゲームといった主要タイトルで稼働しています。開発者はリポジトリをクローンし、README に記載のビルド手順に従い、HelloWorld テスト内のサンプルコードを検査することで開始できます。Box3D は、メッシュベースの衝突検出およびマルチスレッド機能が必要な大規模シミュレーションに不可欠なアクセシブルな物理技術における重要な進化を体現しています。

本文

Box3D:オープンソース 3D フィジクスエンジンのリリース

Box3D(ボックス 3D)、という名前のオープンソース 3D フィジクスエンジンが正式にリリースされました。現在、GitHub で利用可能です。

本記事では、Box3D の概要、技術的特徴、開発の背景と動機、そして始め方についてまとめます。


Box3D の概要

Box2D のフォーク(派生)として、3D ゲームに対応した拡張版です。コアアーキテクチャは Box2D とほぼ同一を維持しつつ、以下の機能を追加しています:

  • 三角形メッシュとの衝突判定
  • ハイトフィールド(高度情報)との衝突判定
  • ベイク済み複合形衝突判定

技術的特徴:C API と機能

Box3D のライブラリはすべて C17 準拠であり、以下のような高機能な要素を備えています。

  • Sub-stepping solver(サブステップング求解器)
  • Continuity Collision(連続衝突判定)
  • Graph Coloring(大規模アイランド用のグラフ着色)
  • SIMD ベクトル化されたコンタクト求解器
  • マルチスレッド化のためのフック機能
  • オプションの内部スケジューラー
  • Dubbel 変数による位置情報(大規模ワールド対応)
  • 決定論的挙動の実現(クロスプラットフォーム互換性確保)
  • レコーディングおよびプレイバック機能

動画で動作を確認したい方へ
デモ動画は公式サイトよりご覧いただけます。


開発の背景:なぜ Box3D を作ったのか?

Box3D 開発の主な理由は 2 つあります。

理由 1:『カリフォルニアの伝説』というゲームのための必要性

開発元 Kintsugiyama が制作するサバイバルゲーム『カリフォルニアの伝説』のために作られました。Unreal Engine(UE)版 UE5.0 でも、UE 内蔵の物理エンジン「Chaos」には以下のような課題がありました。

ネイティブ Unreal フジクス(Chaos)の問題点

  1. ジャイロスコピックトルクの欠落

    • Chaos は回転慣性モーメントに基づく角速度の保存に対応しておらず、細長いオブジェクト(例:スピンするライフル)が異常に長時間回転し続ける現象が発生していました。
    • 2015 年に開発者による「10 行程度のドロップイン式アルゴリズム」でこの問題は解決可能であり、Epic Games も後に対応を追加しました。
  2. 木伐採・落下挙動の不自然さ

    • ゲームのメインシステムである「木を伐採し、不規則に転がって飛ぶ」演出において、Chaos の連続衝突判定フォールバック処理が原因で、物体が滑らかな面へ落ちるような非現実的な挙動を示していました。
  3. 大規模エントティ管理への不安

    • サーバー上に数十万〜数百万のエントティを管理するため、高速なブラードフェーズ(広域判定)が必須です。
    • 第三者ミドルウェアへの依存はリスクが高いと判断し、既存の物理エンジンでは「修正するか、置き換えるか」の決断に直面しました。

Valve の救援:Rubikon-Lite から Box3D へ

友人である Dirk Gregorius(Valve 系エンジニア)から、Half-Life: Alyx で使用されたカスタム物理エンジン Rubikon の軽量版(Rubikon-Lite)へのフォーク提案を受けました。

  • Rubikon-Lite をフォークし、UE と連携させることに成功。
  • ジャイロスコピックトルクや木の下り挙動が完璧に動作するようになりました。
  • Box2D バージョン 3.0 の機能と親和性を考慮し、コードを 2D/3D で近接させる方針を採りました(Rubikon-Lite の API やアルゴリズムの多くを Box2D コードで置換)。

結果:現在の Rubikon-Lite フォークは Box3D と改名・進化しました。現在は凸包生成一部や衝突判定アルゴリズムにオリジナルコードを残しつつ、その他部分は Box2D コードベースで構成されています。

カスタマイズ性の優位性

『カリフォルニアの伝説』の大規模オープンワールドやサーバー権限制を実現するため、物理エンジンは以下の点で最適化されています:

  • 落ちる木への高度な最適化:巨大なセコイアが高速でヴォキセル地形へ落下するシナリオでもメッシュ衝突判定と CCD を適切に動作。
  • 即時構築の衝突メッシュ:グリッド構造のヴォキセルシステム向けに、Median Split 法など的高效な構築手法を採用。
  • ストリーミング対応の「スーパー形状(uber shape)」:数千ものボディー・形状を単一のデータ構造に変換し、順次読み込みによるメモリ負荷やオーバーヘッドを解消。

理由 2:知識と精神の維持

  • オープンソースとしての保存:開発者自身は長年物理エンジン制作に携わってきましたが、転職などで成果物を手放す必要があります。Box2D と Box3D は、知見と労力をオープンソース化し、将来の基盤として再利用する手段です。
  • 車輪の再発明を防ぐ:3D 分野でも毎回ゼロから始めたくないという想いから、Box2D の設計思想を 3D に持ち込む形で Box3D を作成。Kintsugiyama の関係者への協力依頼により、本格的な開発とサステナビリティが確保されました。

なぜ Box3D を使うべきか?

  • Box2D 信奉者に適している:Box2D の設計思想を好む方は、Box3D も同様に満足できるはずです(兄弟プロジェクトとして)。
  • オープンソース:他のエンジンと競う目的ではなく、開発の楽しさとコミュニティへの還元が第一目的です。

始め方:インストールと設定

  1. 環境構築
    Vanilla Git と CMake をインストールしてください。
  2. リポジトリのクローン
    GitHub で Box3D リポジトリを clone。
  3. ビルド
    README
    ファイルに記載の手順に従ってビルドを行ってください。
  4. テスト実行
    提供されたサンプルを実行し、機能を検証しましょう。

ドキュメントについて
ヘッダーには完全な Doxygen コメントが付与されています。マニュアルは現在執筆中で、ホストされたドキュメントは公式サイトより確認可能です。


Box3D を利用しているプロジェクト(実績)

  • s&box:Facepunch Studios が提供するゲームプラットフォーム
  • Esoterica:Bobby Anguelov 率いるオープンソースゲームエンジン
  • 1000 人規模マルチプレイ空間:Glenn Fiedler 氏開発のシミュレーションゲーム
  • 『カリフォルニアの伝説』(Kintsugiyama 製)

将来展望とロードマップ

現時点は Alpha ステータス ですが、機能セット自体は十分な完成度を持っています。近い将来 v0.1 タグ を付与し、基盤から v1.0 リリース へ向けて開発を進めます。

今後のタスク例

  • キャラクター移動機能の強化
  • ゴースト衝突(通過判定)の改善
  • パフォーマンス最適化
  • ジャイント求解器の改良

サポーポリシーの変化

  • v1.0 以降はプルリクエストを歓迎。CLA(コントリビューターライセンス契約)を通じた受け入れ予定。
  • Box2D と異なり、新機能開発から一旦引退する可能性もあります(機能成熟後の戦略)。
  • ブログ記事や動画投稿も継続予定です。

注意:Box3D 専用ウェブサイトや Discord は設けず、最新情報は本サイトで確認ください。コミュニティ交流は Box2D の Discord をご活用ください。


アクセスと支援

『カリフルニアの伝説』をプレイしたい方

公式サイトまたは Steam ページから『カリフォルニアの伝説』へアクセスしてください。

開発への支援方法

  • GitHub Sponsor
  • Patreon

皆様のおかげで Box3D が生まれ、現在も進化しています。心より感謝申し上げます!

同じ日のほかのニュース

一覧に戻る →

2026/07/02 7:03

ZCode:GLM-5.2 ハーネス

## Japanese Translation: ## サマリー: ZCode は、Deep GLM-5.2 の機能を「エージェント型」のワークフローに統合することでソフトウェア開発を革命化し、エンジニアがレガシーなモノリシックアーキテクチャからリアルタイム機能のデプロイへと移行することを可能にします。当プラットフォームは、Goals を通じた長期間にわたるタスクへの継続的な計画をサポートし、ユーザーが WeChat、Feishu、Telegram などのメッセージングアプリを通じてセッションを導くことを可能にします。提供されるのは柔軟な 3 つの料金プランです:小規模なリポジトリ向けで Base ユーザー数に基づいた「ライトウェイト(軽量)プラン」16.2 ドル/月、中規模なリポジトリ向けでユーザー数を 5 倍にし厳選されたツールを含んだ「プロフェッショナルプラン」64.8 ドル/月、大企業向けに専用リソースと新モデルへの優先アクセスを提供する「ハイボリュームプラン」144 ドル/月の 3 つです。MacOS と Windows の両プラットフォームに対応しており、ZCode は複雑な推論タスクにおいて AI の速度を最適化しながらも、チームを開発の最前線に保ち続けます。(注:料率と特典は変動する可能性があります。最終詳細については z.ai をご参照ください。)

2026/07/01 23:20

初めて、細胞から作られたものが成長・分裂した

## Japanese Translation: 生物学者は、非生命の素材から成長し、DNA を複製し、分裂する合成細胞を構築することに成功し、人工的なシステムにおいて細胞周期の主要な機能を遂行した。ミネソタ大学のケイト・アダマラ氏率いるチームが主導するこの研究は現在未公開であり、査読もされていないものの、ジャック・シュストゥーク氏(芝加哥大学)ら専門家からは、「非生命物質から生命を生み出す」という「聖杯」への画期的な一歩として称賛されている。シブレン・オット氏(ストアテンハ化学研究所)は、同細胞は現在の定義において本当に「生きている」とは言えないと指摘しつつも、この成就是、死んだ物質から生命を生み出す科学の進展を大幅に促進したとしている。

2026/07/02 7:48

運動不足の健康な人でも細胞内のエネルギー産生が早期に低下することが判明

## 日本語翻訳: 年齢約 42 歳で運動を習慣化していない健康な成人でも、疾病の発症前に著しい細胞レベルの劣化が見られます。コロラド大学アンスシュ医学部によって実施され、*Clinical Bioenergetics* に公開された研究では、9 名の非活性男性と 10 名の有活動な男性(平均約 42 歳)を比較し、定期的な好気性運動の欠如(週 150 時間未満)が、細胞内の糖や脂肪をエネルギーに変換する「エンジン」となるミトコンドリア機能を急激に低下させることを明らかにしました。非活性男性では、最大酸素利用量が 38% 減少し、負荷時の血液中の乳酸値は 60% 上昇しました。また、主要な燃料処理タンパク質も著しく機能不全を起こしており、MPC1 の活性が有活動レベルの約 49% に低下し、CPT1 酵素の活性は有活動レベルの半分程度まで減少し、糖と脂肪の両方を処理する能力が損なわれていることを示しました。全体として、ミトコンドリアの効率は複数の項目で約 28% から 36% の減少が見られました。共同著者の Iñigo San Millan(イニゴ・サン・ミリャン)は、「40 歳で健康でありながら非活性であることは、現在既に細胞への損傷変化が進行しており、10〜15 年後の健康に影響を与える可能性がある」と指摘し、糖尿病、アルツハイマー病、がんなどの疾患を引き起こす可能性があると述べました。この劣化を早期に検出するための介入対策を可能にするには、心臓血管・呼吸器運動テストと乳酸分析による非侵襲的検査が有効です。研究チームは、より大規模で多様な臨床試験を実施する計画であり、特定の運動プログラムや新規薬剤によってミトコンドリアの健康を回復させることができるかどうかを検証するために、女性の参加者も含む併行研究も行う予定です。