3Dライブラリ
MuJoCo (DeepMind(Alphabet子会社)←Roboti)
独自の凸ガウス原理を利用した物理ライブラリであり、OpenAIのGymで強化学習に使うことが可能となっている。
オープンソースの多体動力学シミュレーションソフトウェア。MBDynをバックエンドに用いたBlender用アドオンとして、BlenderAndMBDynが存在する。
MantaFlow (ミュンヘン工科大学)
流体シミュレーションライブラリ。FLIP法およびAPIC法に対応している。GPLライセンス。古い流体シミュレーションライブラリであるEl'beemの開発者Nils Thuereyが、MantaFlowの開発に参加している。Blender 2.82以降がMantaFlowを採用している (それ以前はEl'beemを使用していた)。
PhiFlow (ミュンヘン工科大学)
偏微分方程式求解ライブラリであり、機械学習ベースの流体シミュレーションに対応している。MITライセンス。
SPlisHSPlasH (アーヘン工科大学)
パーティクルベースの流体シミュレーションライブラリ。SPH法に対応している。MITライセンス。LightWaveプラグインのDeep Rising FX 3.0で使われていた。
Wavelet Turbulence (コーネル大学)
気体流体用のハイレゾディテール化ライブラリ。GPLライセンス。Blenderが使用していた。
NVIDIA WaveWorks (NDIVIA)
Ammo.js
BulletをEmscriptenでJavascript及びWebAssemblyに変換したもの。zlibライセンス。PlayCanvas Engineやthree.jsやBabylon.jsがAmmo.jsとの連携に対応している。
Oimo.js
OimoPhysicsをJavascriptに移植したもの。MITライセンス。Babylon.jsがOimo.jsとの連携に対応している。
Cannon.js
Javascriptで書かれた物理エンジン。MITライセンス。three.jsとammo.jsの影響を受けている。Babylon.jsがCannon.jsとの連携に対応している。
Energy.js
Babylon.jsがEnergy.jsとの連携に対応している。
uranium.js
BulletをEmscriptenでJavascriptに変換したもの。Blender4Webで使われている。
NVIDIA HairWorks (NVIDIA)
ゲーム向けミドルウェア。3ds Max及びMaya用のNVIDIA HairWorks Pluginsが用意されている。
AMD TressFX (AMD)
ゲーム向けミドルウェア。オープンソース。MITライセンス。Maya用のエクスポートプラグインが提供されている。
Havok AI
Havokに含まれるNavigation Meshライブラリ。
Recast & Detour
オープンソースのNavigation Meshライブラリ。ZLibライセンス。Blenderが使用していた。これを使ったミドルウェアとして、Unity用のRecastUnityが存在する。
NavPower (BabelFlux)
Navigation Meshライブラリ。
PathEngine SDK (PathEngine)
Navigation Meshライブラリ。
Autodesk Navigation (Autodesk ← Kynogon)
Autodesk Gamewareの一つ。Navigation Meshミドルウェア。旧Kynapse。Autodesk Stingrayに標準搭載されている。販売終了。
機械学習向けの低レベルAPIとしてはDirectX 12以降がDirectML APIを備えており、MetalもMPSCNNを備えている。
TensorFlow Graphics
TensorFlowベース。
TensorFlow 3D (Google)
TensorFlowベース。
MediaPipe (Google)
Kaolin (NVIDIA)
PyTorchベース。
PyTorch3D (Facebook)
PyTorchベース。
PyTorch Geometric
PyTorchベース。
3D UIはUI部品などに深度を持つことができる。3D UIは特にVRで重要となる。
uGUI (Unity Technologies)
Unityに使われているUIライブラリ。オープンソース。MITライセンス。
DirectXやOpenGLなどの3Dパイプラインに対応する2D UI向けライブラリ。一部ライブラリは、RTT (Render to Texture)により、2D UIを3D空間へ投影することも可能となっている。
DirectX、OpenGLの他、オープンソースゲームエンジンのOgre3D、Irrlicht Engineに対応している。オープンソース。MITライセンス。GUIエディターとしてCEEDがある。
Ogre3Dに対応するUIライブラリ。オープンソース。MITライセンス。
DirectX、OpenGL、Vulkan等に対応している。オープンソース。MITライセンス。
dat.GUI
Javascript用。オープンソース。Apacheライセンス。three.jsにも付属されている。Googleの従業員により開発された。
DirectX及びOpenGL用。オープンソース。zlib/libpngライセンス。マルチメディアライブラリのCinderがAntTweakBarを採用していた。開発停止中。
これらのミドルウェアに向けてUIを作成するためには、Adobe Animate (旧Adobe Flash Professional)が必要となる。
Autodesk Scaleform (Autodesk ← Scaleform)
Autodesk Gamewareの一つ。旧Scaleform GFx。FlashコンテンツをゲームUIとして使うことができるミドルウェア。CRYENGINEやAutodesk Stingrayで使われている。Unreal Engine 3やProject Anarchyにも含まれていたほか、Unity 4版もあった。
簡易UI構築ツールのScaleform CLIKが含まれている。また、メニュー画面向けのMenu Kit、HUD表示向けのHUD Kit、MMOゲーム向けのMMO Kitも含まれている。また、StingrayにはUI構築用のScaleform Studioが含まれている。
販売終了。
IGGY (Epic Games Tools←Rad Game Tools)
FlashコンテンツをゲームUIとして使うことができるミドルウェア。
LWF (GREE)
FlashコンテンツをゲームUIとして使うことができるミドルウェア。オープンソース。zlibライセンス。Unity用アセットのLWF for Unityや、HTML5用のLWF Loaderなどもある。
libmv - オープンソースのSfMライブラリであり、BlenderやNatronのトラッカーに利用されている。OpenCV 3.1以降にも、libmvを基にしたopencv_sfmが搭載されている。
OpenCV - オープンソース。Structured Light APIを持っている。
AliceVision - オープンソース。MPL2ライセンス。Meshroomで使われている。
gradslam - オープンソースの微分可能SLAMフレームワーク。深度付き(RGB+D)画像群からのポイントクラウド生成に対応している。MITライセンス。
Intel RealSense SDK
Azure Kinect SDK - 略称K4A。
Kinect for Windows SDK - 製造終了したKinect for Windows向けだった。
OpenGL/Vulkan APIのNVIDIA拡張及びDirectX12 Ultimate APIでは新たにMesh Shaderが導入されており、Mesh Shaderで使用可能の効率的な構造であるMeshletが注目されている。
頂点キャッシュ容量の少ない古いGPUでのレンダリングでは省メモリな構造体である三角ストリップを使った描画が最適であったとされる。
meshoptimizer - オープンソース。MITライセンス。頂点キャッシュ最適化、オーバードロー最適化、先取りキャッシュ最適化、三角ストリップ生成、頂点/インデックスバッファ圧縮、ポイントクラウド圧縮、ポリゴンリダクション、Meshlet生成などに対応している。
DirectXMesh (Microsoft) - オープンソース。MITライセンス。D3DXの後継ライブラリの一つ。頂点キャッシュ最適化、Meshlet生成などに対応している。
Compressonator SDK (AMD) - オープンソース。
Simplygon SDK (Microsoft←Donya Labs) - プロプライエタリ。
Meshlete - MITライセンス。meshlet生成に対応している。
Polygon Cruncher SDK
AMD Tootle (AMD) - GPUOpenの一部。オープンソース。頂点キャッシュ最適化、オーバードロー最適化、先取りキャッシュ最適化に対応していた。生成ツールのTootleSampleもある。開発停止中。
NvTriStrip (NVIDIA) - 三角ストリップ生成ライブラリ。頂点キャッシュ最適化、三角リスト出力などにも対応している。生成ツールのNvTriStripperもある。
TriStripper - 三角ストリップ生成ライブラリ。オープンソース。Mariなどで使われている。
Vizup SDK - ポリゴンリダクションライブラリ。開発停止中。
GLOD - LOD (Level of Detail) 生成ライブラリ。Second Lifeで使われていたがmeshoptimizerで置き換えられた。
HMDデバイスのレイテンシ問題などを解決するためのミドルウェア。
OpenXR SDK (Khronos Group)
XRの標準APIであるOpenXR向け開発ライブラリ。Google Chrome/Microsoft Edge 81以降、Blender 2.83以降など多くのソフトウェアで使用されている。
VRWorks SDK (NVIDIA)
NVIDIAのGPU用。旧GameWorks VR←VR Direct。HMD向けミドルウェア。Unreal Engine 4に搭載されている。今後、Unityにも搭載される予定。
音線法による立体音響にも対応している (VRWorks Audio)。バックエンドにはOptiXを使用している。
Snapdragon VR SDK (Qualcomm)
QualcommのSnapdragon 835搭載VR開発キット向け。
AMD LiquidVR (AMD)
AMDのGPU用。Direct3D 11用。Unityに搭載される予定となっていた。
VR SDK for Android (ARM)
旧Mali VR SDK。ARMのMali GPU用。MITライセンス。
Windowsでは、Windows 10 SDKにMR向け機能が統合されている。また、iOSでは、iOS 11 SDK以降にAR向け機能 (ARKit) が統合されている。
Cardboard SDK (Google)
Android及びiOSのスマートフォンはめ込み式のヘッドセット (Google Cardboard、Google Daydream) 向け。オープンソース。Google VR SDK(旧Google Cardboard SDK)の後継。Unity版もある。
ARCore (Google)
AR向け。Unity及びUnreal Engineに対応している。
OpenVR (Valve Corporation)
Steam向け。HTC Vive及びOculus Riftに対応。OpenVRはHTC Vive SteamVR SDKとしても知られている。OpenVRはオープンソースだが、バックエンドのSteamVRランタイムは非オープンソース。Unity版はSteamVR Plugin。Unreal Engine 4.8以降でも採用されている。
MixedRealityToolkit (Microsoft)
略称MRTK。旧HoloToolkit。Windows Mixed Reality (旧Windows Holographic)向けのライブラリ集。Unity向けのMixedRealityToolkit for Unityも存在する。実装サンプルとして、Mixed Reality Academy (旧HolographicAcademy)が存在する。
Sceneform SDK for Android (Google)
AR向け。Android用。オープンソース化された。開発中止。
Oculus SDK (Facebook←Oculus VR)
Oculus Rift向け。Unity用のOculus Utilities及びUnreal Engine 4用のUnreal Engine 4 Integrationがある。Gear VR用のOculus Mobile SDKも存在する。
Oculus Rift、HTC Vive及びPSVRに対応 (一部は回転のみ)。オープンソース。Timewarp未対応。
OSVR (OSVR Organization)
OSVR HDKを始め、様々な機器に対応するためのVRフレームワーク。開発停止中。Unity用のOSVR-Unity-Rendering及びUnreal Engine 4用のOSVR-Unrealが存在する。OSVR-Coreはオープンソースだが、バックエンドプラグインには非オープンソースを含む (Oculus SDKを使用するOSVR-Oculus-Rift、OpenVR/SteamVRを使用するOSVR-Viveなど)。サードパーティー製のバックエンドも存在し、その中には完全オープンソースのOSVR-OpenHMDやOSVR-Vive-Libre (OpenHMD派生)も存在する。
OpenVR/SteamVR対応ソフトウェアからOSVRを使うためのSteamVR-OSVRも存在する。
Vrui VR Toolkit
HMDだけでなく、ビデオウォールやCAVEにも対応している。オープンソース。GPLライセンス。
Leap Motion SDK
旧Leap Motion Developer SDK。
CAVEやビデオウォールで使われるクラスタレンダリング向けライブラリ。
Equalizer (Eyescale Software)
CAVE対応アプリケーションを作成するためのミドルウェアであり、マルチGPUやコンピュータ・クラスターでの実行に対応する。Equalizerを使ったサンプル実装として、eqPlyやosgScaleViewerが提供されている。オープンソース。
VRの普及に伴い、よりリアルなリアルタイムの3Dオーディオは重要となっている。Webで使われるWeb Audio APIも空間化オーディオに対応している。
TrueAudio Next (AMD)
略称TAN。AMD TrueAudioの次世代版。Radeon Raysベース。MITライセンス。
VRWorks Audio (NVIDIA)
OptiXベース。Unreal Engine用プラグインがある。
Steam Audio (Valve Corporation←Impulsonic)
Unity及びUnreal Engine 4用プラグインがある。無料。
古くから存在する3DオーディオAPI。複数の実装が存在する。
Khronos Groupによる標準オーディオAPIであり、3Dオーディオについても規定されている。複数の実装が存在する。AndroidはOpenSL ESに対応しているものの、3Dオーディオに対応するかはデバイスに依る。
Oculus Audio SDK (Facebook←Oculus VR)
VR向け3Dオーディオライブラリ。遮蔽やドップラー効果に未対応。