3Dライブラリ

From Wikipedia, the free encyclopedia

3Dライブラリは、3DCGソフトウェアや3D CAD、ゲームエンジンなどの3D関連プログラムに良く用いられているソフトウェアライブラリである。ここでは、テクスチャなどの3Dに付随する2Dライブラリについても解説する。

ラスタライズベース

互換レイヤー

フレームワークライブラリ

ジオメトリ操作

これらライブラリは、ジオメトリの操作に使われている。

ジオメトリ形状モデリングカーネル

ジオメトリ形状モデリングカーネルは、NURBS等の複雑なプリミティブを表現するために使われるライブラリであり、特に3D CADで重要となる。

ジオメトリ処理ライブラリ

  • CGAL - ジオメトリ処理ライブラリ。3Dブーリアンにも対応している。オープンソース。GPLライセンス (一部LGPLライセンス)。OpenSCAD英語版の標準バックエンドに使われている[99]
  • libigl - ジオメトリ処理ライブラリ。3Dブーリアンにも対応している。オープンソース。MPLライセンス (一部GPLライセンス)。
  • OpenMesh - ポリゴンメッシュの処理に向けたライブラリ。オープンソース。BSDライセンス。OpenFlipperなどに使われている。
  • GNU Triangulated Surface Library - 略称GTS。三角メッシュの処理に特化したライブラリ。Graphvizのグラフビューアであるsmyrnaツールに使われている[100]
  • VCG Library - MeshLab英語版に使われている。オープンソース。GPLライセンス。
  • Manifold Library - 多様体三角形メッシュの処理ライブラリ。3Dブーリアンにも対応している。Apacheライセンス。Godotのレベルプロトタイピング[101]、OpenSCADの代替バックエンド[99]、blender 4.5以降のブーリアンのManifoldソルバー[102]などに使われている。

3Dブーリアンライブラリ

  • Carve - Mayaに使われている3Dブーリアンライブラリ[103]。Blenderにも使われていた[104]。オープンソース。MITライセンス[105]
  • Cork Boolean Library - 3Dブーリアンライブラリの一つ。オープンソース。LGPLライセンス。

メッシュ生成ライブラリ

再分割/テッセレーションライブラリ

  • OpenSubdiv - Pixarの支援する再分割ライブラリ。オープンソース。Apacheライセンス。
  • NVIDIA Displacement Micro-Map Toolkit - 変異マイクロマップ生成・表示ライブラリ (NVIDIA Displacement Micro-Map SDK) およびツール集。リアルタイムレイトレーシングに最適化されていた[106]。サンプルコードのNVIDIA RTX Mega Geometryに置換えられて終了した[107]。また透過のためのOpacity Micro-Map SDKも存在する[106]。こちらは Opacity Micro-Map が DirectX Raytracing (DXR) 1.2 に入り[108]、その API に対応している。

プラグインライブラリ

  • Open Mesh Effect - OpenFX英語版ベースの3DメッシュエフェクトAPI。

ファイル入出力ライブラリ

これらのライブラリは、異なる3Dソフトウェア間でファイルをやり取りする時などに使われている。

シーン形式

  • FBX SDK - Autodesk製品を始め、多くの3DCGソフトウェアで使われているFBX形式 (*.fbx) 用の公式ライブラリ。Autodesk製。
  • ufbx - FBX形式のインポート用のオープンソースライブラリ。Godot 4.3以降[109]、Blender 4.5以降で使われている。MITライセンスとPublic Domainのデュアルライセンス。
  • OpenCOLLADA - 多くの3DCGソフトウェアで使われているCOLLADA形式 (*.dae) 用の公式ライブラリ。オープンソース。MITライセンス。
  • COLLADA DOM - COLLADA形式 (*.dae) 用のライブラリ。Sony Computer Entertainment製。オープンソース。MITライセンス。
  • FCollada - COLLADA形式 (*.dae) 用のライブラリ。Feeling Software製。ディスコン。
  • Python Computer Graphics Kit - Maya ASCII (MA)形式などのインポートや、RIB形式などへのエクスポートに対応するPythonモジュール。オープンソース。最終更新は2013年リリースの2.0.0。

3Dモデル形式

  • Crosswalk SDK - Softimageや一部のゲームエンジンで使われていたdotXSI形式 (*.xsi) 用の公式ライブラリ。Autodesk製。ディスコン。
  • lib3ds - 古い3ds Maxで使われていた3ds形式 (*.3ds)用のライブラリ。オープンソース。LGPLライセンス。
  • tinyobjloader - 多くの3DCGソフトウェアで使われているobj形式 (*.obj)及びmtl形式 (*.mtl) 用のライブラリ。オープンソース。MITライセンス。
  • Open Asset Import Library英語版 (assimp) - 様々な3Dモデル形式に対応するライブラリ。オープンソース。BSDライセンス。
  • Houdini Engine - Houdiniで使われているHoudini Digital Asset形式 (*.otl、*.hda)用のインポートライブラリ。
  • cgltf - glTF形式に対応するシングルヘッダーライブラリ[110]。MITライセンス。
  • Microsoft glTF SDK - glTF形式に対応するライブラリ。オープンソース[111]。MITライセンス。
  • dime - DXF形式の入出力に対応するライブラリ[112]。DXF2papercraftに使われている。

マテリアル形式

  • Substance Engine - Substance Designerで使われているマテリアル形式 (*.sbs、*.sbsar)用のインポートライブラリ。

3D CAD形式

  • openNURBS SDK - Rhinocerosやその他の3D CADソフトウェアで使われているopenNURBS形式 (*.3dm)用の公式ライブラリ。Robert McNeel & Associates製。オープンソース。
  • IfcOpenShell - 3D CADソフトウェアで使われている Industry Foundation Classes形式 (*.ifc)用のライブラリ。オープンソース。LGPLライセンス。

パーティクル形式

  • Partio - 様々なパーティクル形式に対応するライブラリ。オープンソース。BSDライセンス。Maya PDA/PDB/PDC形式、RenderMan PTC形式、Houdini GEO/BGEO形式、Real Flow BIN形式、Krakatoa PRT形式、PTS形式などに対応している。LightWave 2020以降などに使われている[113]

キャッシュ形式

マルチパス画像

  • OpenEXR (Academy Software Foundation[114]ILM) - 3DCG向けの画像形式であるOpenEXR形式 (*.exr)用のライブラリ。OpenEXR形式は、浮動小数点数で表された色だけでなく、後処理に必要な深度パス、オブジェクトIDなどの付随情報を含めることが出来る。

テクスチャ形式

  • Ptex - UV不要なPtex形式 (*.ptx) 用のライブラリ。Walt Disney Studiosが開発を支援している。オープンソース。BSDライセンス。
  • Oodle Texture (Epic Games Tools←RAD Game Tools) - テクスチャ圧縮向けSDK。BC1、BC3-BC7圧縮のレート歪み最適化英語版に対応している。
  • OpenImageIO英語版(Academy Software Foundation[115]←Larry Gritz) - レンダラーなどの3Dパイプラインに特化した画像入出力ライブラリ。MIPMAPにも対応する効率的なキャッシュを備えている。多くの3DCGソフトウェアがこのライブラリを使用している。
  • bcdec - BC1-7形式のデコードに対応したヘッダーオンリーライブラリ。OpenImageIO 2.4.4以降に使われている[116]
  • NVIDIA Texture Tools (NVTT) - NVIDIAのテクスチャSDK[117]。2はオープンソースとなっていた。Unreal Engine[118]やBlender 2.46以降に使われている[119]
  • RTX Neural Texture Compression (NTC) SDK - NVIDIAのニューラルテクスチャ圧縮向けSDK。

開発停止中

  • libsquish - DXT 1/3/5形式 (BC1-3形式) に対応したライブラリ[120]。OpenImageIO 2.4.4より前に使われていた[116]

シェーダーおよびマテリアルライブラリ

  • liboslc/liboslquery/liboslexec (Academy Software Foundation[114]←Sony Pictures Imageworks) - Open Shading Language (OSL) シェーダー用のライブラリ。オープンソース。ライセンスはBSDライセンス。
  • NVIDIA MDL SDK - MDL (Material Definition Language) マテリアル定義用のライブラリ。2018年に一部がオープンソース化され[121]、2022年に全てがオープンソース化された[122]。BSDライセンス。MDLは一つの記述でリアルタイムとパストレーシングレンダリングの両方に対応する。
  • MaterialX (Academy Software Foundation←Lucasfilm[123]) - オープンソースのマテリアル交換用ライブラリ。当初ILMが開発した。MaterialX形式からGLSLシェーダーやOSLシェーダーを生成するためのShaderX[124]が統合された。ライセンスはApache License 2.0。
  • Adobe's OpenPBR BSDF - OpenPBR リファレンス実装のヘッダーライブラリ。ライセンスはApache License 2.0。Adobeの内部レンダラーの実装に基づいている[125]

ボリュームライブラリ

  • OpenVDB英語版 (Academy Software Foundation[114]ドリームワークス・アニメーション) - OpenVDB形式 (*.vdb)の入出力及び操作に対応するライブラリ。オープンソース。GPU対応のNanoVDB実装がNVIDIAより提供された[126]
  • NVIDIA GVDB Voxels - GPU向けの疎ボクセルライブラリ。オープンソース[127]。NanoVDBへの変換コードが用意されている。
  • OpenVKL - Intel製のボクセルレンダリングライブラリ[128]
  • Field3d (Sony Pictures Imageworks) - Field3d形式 (*.f3d)の入出力に対応するライブラリ。オープンソース。

運動学ライブラリ

  • iTaSC - オープンソース。Blender 2.5以降で使われている[129]
  • IKinema RunTime (Apple←IKinema) - フルボディIKに対応する。modo 601以降に使われていた[130][131]。開発終了。
  • Autodesk HumanIK (Autodesk←Alias←Kaydara) - フルボディIKに対応する。Mayaで使われている。販売終了。
  • OpenRAVE英語版 - 解析的IKソルバーのIKFastを含んでいる。オープンソース。LGPLライセンス。

物理演算ライブラリ

Open Dynamics Engine
略称ODE。オープンソース。LGPL及びBSDのデュアルライセンス。SoftimageやHoudiniなどが対応していた。現在HoudiniはODEを非推奨としている[132]。Python言語向けのPyODEもあり[133]、心理学実験向けツールキットのPyEPLがそれに依存していた[134]
Bullet
オープンソースの物理エンジン。3.xでGPUパイプラインやRobot Operating SystemのURDF形式に対応した。多くの3DCGソフトウェアやプラグインが採用している。強化学習などに向けたPyBulletも付属している。
Havok Physics (Microsoft←Intel←Havok)
物理エンジン。3ds Max及びMaya用のプラグインがあった。開発終了。
PhysBAM
マルチフィジクスシミュレーションライブラリ。開発停止中。
NVIDIA PhysX (Nvidia←AGEIA)
旧GameWorks PhysX。マルチ物理エンジン。GPUによる剛体演算に対応している (PhysX-GRB)。3ds Max、Maya、Softimageの物理演算のバックエンドに使われているほか、3ds Max及びMaya用のDCCプラグインが存在する。
PhysX SDKの他にAPEX SDKを含んでいたが、PhysX Destruction/Clothing/Particlesは非推奨となった[135]。5.0で有限要素法に基づく可変形物体物理に対応した[136]。5.1でCPUコードがオープンソース化され、流体シミュレーションのNVIDIA Flowの統合も行われた[137]。2025年にはGPUコードもオープンソース化された[138]
NVIDIA FleX (NVIDIA)
PBD(位置ベース物理シミュレーション)によるパーティクルベースのマルチ物理ライブラリ。
NVIDIA Blast (NVIDIA)
破壊シミュレーションライブラリ。
NVIDIA Cloth (NVIDIA)
クロスシミュレーションライブラリ。
FEMFX (AMD)
有限要素法に基づく可変形物体物理ライブラリ[139]。MITライセンス。Unreal Engine向けプラグインもある。
Jolt Physics
シミュレーションライブラリ。Godot 4.4以降[140][141]ゲリラゲームズのゲームエンジン[142]であるデシマに使われている。

機械学習向け物理ライブラリ

上記のBulletも参照。

Brax (Google)
Python実行時コンパイラJAXを基にした物理ライブラリ。
Isaac Gym (NVIDIA)
強化学習向けの物理ライブラリ。
MuJoCo (DeepMind(Alphabet子会社)←Roboti[143])
独自の凸ガウス原理を利用した物理ライブラリであり[144]、OpenAIのGymで強化学習に使うことが可能となっている[145]

多体動力学シミュレーション

MBDyn
オープンソースの多体動力学シミュレーション英語版ソフトウェア。MBDynをバックエンドに用いたBlender用アドオンとして、BlenderAndMBDynが存在する。

流体シミュレーション

MantaFlow (ミュンヘン工科大学)
流体シミュレーションライブラリ。FLIP法およびAPIC法に対応している。GPLライセンス。古い流体シミュレーションライブラリであるEl'beemの開発者Nils Thuerey[146]が、MantaFlowの開発に参加している[147]。Blender 2.82以降がMantaFlowを採用している[148] (それ以前はEl'beemを使用していた[146])。
PhiFlow (ミュンヘン工科大学)
偏微分方程式求解ライブラリであり、機械学習ベースの流体シミュレーションに対応している。MITライセンス。
SPlisHSPlasH (アーヘン工科大学)
パーティクルベースの流体シミュレーションライブラリ。SPH法に対応している。MITライセンス。LightWaveプラグインのDeep Rising FX 3.0で使われていた[149]
Wavelet Turbulence (コーネル大学)
気体流体用のハイレゾディテール化ライブラリ。GPLライセンス。Blenderが使用していた。

海洋シミュレーション

NVIDIA WaveWorks (NDIVIA)

WebGL用物理演算ライブラリ

Ammo.js
BulletをEmscriptenでJavascript及びWebAssemblyに変換したもの。zlibライセンス。PlayCanvas Engineやthree.jsやBabylon.jsがAmmo.jsとの連携に対応している。
Oimo.js
OimoPhysicsをJavascriptに移植したもの。MITライセンス。Babylon.jsがOimo.jsとの連携に対応している[150]
Cannon.js
Javascriptで書かれた物理エンジン。MITライセンス。three.jsとammo.jsの影響を受けている[151]。Babylon.jsがCannon.jsとの連携に対応している[150]

開発停止中

Energy.js
Babylon.jsがEnergy.jsとの連携に対応している[150]
uranium.js
BulletをEmscriptenでJavascriptに変換したもの[152]。Blender4Webで使われている[152]

ヘア及びファーミドルウェア

NVIDIA HairWorks (NVIDIA)
ゲーム向けミドルウェア。3ds Max及びMaya用のNVIDIA HairWorks Pluginsが用意されている。
AMD TressFX英語版 (AMD)
ゲーム向けミドルウェア。オープンソース。MITライセンス。Maya用のエクスポートプラグインが提供されている[153]

AIライブラリ

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に標準搭載されている。販売終了[9]

機械学習向けグラフィクスライブラリ

機械学習向けの低レベルAPIとしてはMetalがMPSCNNを備えている。またDirectX 12以降もDirectML APIを備えていたが、こちらはWindows MLの登場で開発終了となっている。

TensorFlow Graphics
TensorFlowベース。
TensorFlow 3D (Google)
TensorFlowベース。
MediaPipe (Google)
Kaolin (NVIDIA)
PyTorchベース。
PyTorch3D (Facebook)
PyTorchベース。
PyTorch Geometric
PyTorchベース。

UIライブラリ

3D UI対応のUIライブラリ

3D UIはUI部品などに深度を持つことができる。3D UIは特にVRで重要となる。

uGUI (Unity Technologies)
Unityに使われているUIライブラリ。オープンソース。MITライセンス。

2D UIのみ対応のUIライブラリ

DirectXやOpenGLなどの3Dパイプラインに対応する2D UI向けライブラリ。一部ライブラリは、RTT (Render to Texture)により、2D UIを3D空間へ投影することも可能となっている。

CEGUI
DirectX、OpenGLの他、オープンソースゲームエンジンのOgre3D、Irrlicht Engineに対応している[154]。オープンソース。MITライセンス。GUIエディターとしてCEEDがある。
MyGUI
Ogre3Dに対応するUIライブラリ。オープンソース。MITライセンス。
ImGui
DirectX、OpenGL、Vulkan等に対応している。オープンソース。MITライセンス。
dat.GUI
Javascript用。オープンソース。Apacheライセンス。three.jsにも付属されている。Googleの従業員により開発された[155]
AntTweakBar
DirectX及びOpenGL用。オープンソース。zlib/libpngライセンス。マルチメディアライブラリのCinderがAntTweakBarを採用していた[156]。開発停止中。

Adobe FlashベースのUIライブラリ

これらのミドルウェアに向けて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版もあった[157]
簡易UI構築ツールのScaleform CLIKが含まれている。また、メニュー画面向けのMenu Kit、HUD表示向けのHUD Kit、MMOゲーム向けのMMO Kitも含まれている。また、StingrayにはUI構築用のScaleform Studioが含まれている。
販売終了[9]
IGGY (Epic Games Tools←Rad Game Tools)
FlashコンテンツをゲームUIとして使うことができるミドルウェア。
LWF (GREE)
FlashコンテンツをゲームUIとして使うことができるミドルウェア。オープンソース。zlibライセンス。Unity用アセットのLWF for Unityや、HTML5用のLWF Loaderなどもある。

3Dスキャン/トラッキングライブラリ

  • libmv - オープンソースのSfMライブラリであり、BlenderやNatronのトラッカーに利用されている[158]。OpenCV 3.1以降にも、libmvを基にしたopencv_sfmが搭載されている[159]
  • OpenCV - オープンソース。Structured Light APIを持っている。
  • AliceVision - オープンソース。MPL2ライセンス。Meshroomで使われている。
  • gradslam - オープンソースの微分可能SLAMフレームワーク。深度付き(RGB+D)画像群からのポイントクラウド生成に対応している。MITライセンス。

特定ハードウェア向け

モデル最適化ライブラリ

ラスタライズにおいては OpenGL/Vulkan APIの拡張[注 2]及びDirectX12 Ultimate API でMesh Shaderが導入されており、この Mesh Shader によってハードウェアラスタライザーのパイプラインにおいてもコンピュートシェーダーのような汎用計算が可能となり[161]、それによってより効率的な構造である「Meshlet」(三角形クラスタ[162])が注目されつつある。なお Unreal Engine 5 の新レンダラー「Nanite」では三角形クラスタのラスタライズにハードウェアラスタライザだけでなくソフトウェアラスタライザも使われている[163]

一方、レイトレーシングにおいては Vulkan API に三角形クラスタベースのアクセラレーション構造 (CLAS) を使う VK_NV_cluster_acceleration_structure ベンダー拡張が登場している[164]

またレンダリングにMeshlet(三角形クラスタ)が導入されたことによってGPUでは大量のメッシュが処理できるようになり、新たにCPUからGPUへのメッシュストリーミングがボトルネックとなってMeshlet圧縮が重要となっていった[165]

なお頂点キャッシュ容量の少ない古いGPUでのレンダリングでは省メモリな構造体である三角ストリップ英語版を使った描画が最適であったとされる。

  • meshoptimizer - オープンソース。MITライセンス。頂点キャッシュ最適化、オーバードロー最適化、先取りキャッシュ最適化、三角ストリップ生成、Meshlet生成、RTX Mega Geometry [注 3]向けのクラスター生成、頂点/インデックスバッファ圧縮、Meshlet圧縮、ポイントクラウド圧縮、ポリゴンリダクション、不透明度マイクロマップ (OMM) 生成などに対応している。
  • DirectXMesh (Microsoft) - オープンソース。MITライセンス。D3DXの後継ライブラリの一つ。頂点キャッシュ最適化、Meshlet生成などに対応している。
  • Compressonator SDK (AMD) - オープンソース。
  • Simplygon英語版 SDK (Microsoft←Donya Labs) - プロプライエタリ。
  • Meshlete - MITライセンス。meshlet生成に対応している。
  • Polygon Cruncher英語版 SDK

開発停止中

  • AMD Tootle (AMD) - GPUOpen英語版の一部。オープンソース。頂点キャッシュ最適化、オーバードロー最適化、先取りキャッシュ最適化に対応していた。生成ツールのTootleSampleもある。開発停止中[166]
  • NvTriStrip (NVIDIA) - 三角ストリップ生成ライブラリ。頂点キャッシュ最適化、三角リスト出力などにも対応している[167]。生成ツールのNvTriStripperもある。
  • TriStripper - 三角ストリップ生成ライブラリ。オープンソース。Mariなどで使われている[168]
  • Vizup SDK - ポリゴンリダクションライブラリ。開発停止中。
  • GLOD - LOD (Level of Detail) 生成ライブラリ。Second Lifeで使われていたがmeshoptimizerで置き換えられた[169]

3Dモデル圧縮

  • OpenCTM英語版 - zlibライセンス。LZMA圧縮を使用している。形式はOpenCTM形式 (*.ctm)。
  • Open3DGC - MITライセンス。MPEG-SC3DMC (MPEG-4 Part 16 Amd.3) コーデックの実装の一つ。glTF形式で使えるようになる予定だった[170]が、Dracoに置き換えられた。
  • Draco (Google) - Apache License 2.0。glTF形式 (KHR_draco_mesh_compression) 及びUSD形式[171]で使うことができる。
  • meshoptimizer - MITライセンス。glTF形式 (KHR_meshopt_compression/EXT_meshopt_compression) で使うことができる。
  • Dense Geometry Compression Format (DGF) SDK - AMD製。MITライセンス。ハードウェアデコードに最適化されており[172]、Vulkan API では Dense Geometry Format からのレイトレーシング加速構造の構築が VK_AMDX_dense_geometry_format ベンダー拡張として導入されている[173]

VR/AR/MRライブラリ

HMDデバイスのレイテンシ問題などを解決するためのミドルウェア[174]

OpenXR SDK (Khronos Group)
XRの標準APIであるOpenXR向け開発ライブラリ。Google Chrome/Microsoft Edge 81以降、Blender 2.83以降など多くのソフトウェアで使用されている[175][176]

GPUベンダー製

VRWorks SDK (NVIDIA)
NVIDIAのGPU用。旧GameWorks VR←VR Direct[174]。HMD向けミドルウェア。Unreal Engine 4[177]に搭載されている。今後、Unityにも搭載される予定[178]
音線法による立体音響にも対応している (VRWorks Audio)[179]。バックエンドにはOptiXを使用している[179]

開発停止中

Snapdragon VR SDK (Qualcomm)
QualcommのSnapdragon 835搭載VR開発キット向け[180]
AMD LiquidVR (AMD)
AMDのGPU用。Direct3D 11用。Unityに搭載される予定となっていた[181]
VR SDK for Android (ARM)
旧Mali VR SDK。ARMのMali GPU用。MITライセンス。

プラットフォーム製

Windowsでは、Windows 10 SDKにMR向け機能が統合されている[182]。また、iOSでは、iOS 11 SDK以降にAR向け機能 (ARKit) が統合されている。

Cardboard SDK (Google)
Android及びiOSのスマートフォンはめ込み式のヘッドセット (Google Cardboard、Google Daydream) 向け。オープンソース[183]。Google VR SDK(旧Google Cardboard SDK)の後継[183][184]。Unity版もある。
ARCore (Google)
AR向け。Unity及びUnreal Engineに対応している。
OpenVR/SteamVR英語版 (Valve Corporation)
Steam向け。HTC Vive及びOculus Riftに対応。OpenVRはHTC Vive SteamVR SDKとしても知られている[185]。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用。オープンソース化された。開発中止[186]

HMDメーカー製

Oculus SDK (Facebook←Oculus VR)
Oculus Rift向け。Unity用のOculus Utilities及びUnreal Engine 4用のUnreal Engine 4 Integrationがある。Gear VR用のOculus Mobile SDKも存在する。

オープンソース

OpenHMD
Oculus Rift、HTC Vive及びPS VRに対応 (一部は回転のみ)。オープンソース。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[187]やOSVR-Vive-Libre (OpenHMD派生)[188][189]も存在する。
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が提供されている。オープンソース。

3Dオーディオライブラリ

脚注

関連項目

Related Articles

Wikiwand AI