vercel-labs/vgpu

Modular cross-runtime WebGPU library for shaders, 3D scenes, GPU tensors, neural networks, and math viz

何を解決するか

vgpu は、手動でのシェーダーのバインディング宣言の煩わしさを排除し、異なる環境間で一貫したAPIを提供することで、WebGPUアプリケーションの開発を簡素化します。ブラウザベースのレンダリング、ヘッドレスNode.js実行、自動テスト用の別々のコードベースを必要としなくなります。

動作方法

このライブラリは、アダプタとデバイスを管理する統合された Gpu コンテキストハンドルを提供します。.wgsl シェーダーファイルをTypeScriptモジュールとして扱うためのリフレクションシステムを使用し、手動のコード生成なしにシェーダー関数や定数をインポート・エクスポートできます。ブラウザ、Dawnをバックエンドに持つヘッドレスNode.js環境、CI/CDおよびテスト用の決定論的ソフトウェアモックの3つの異なるランタイムをサポートしています。

対象ユーザー

WebGPUを使って高性能なGPU加速アプリケーションを構築したいグラフィックスプログラマーおよびWeb開発者で、型安全なワークフローとランタイム間の互換性を維持したい方。

特徴

  • 型安全なWGSLインポート: シェーダーは自動リフレクションにより、バインディング名と型が反映されたTypeScriptモジュールのように動作します。
  • マルチランタイム対応: ブラウザ、ヘッドレスNode、モック環境のための単一API表面。
  • エージェント対応: ドキュメントと例の探索用CLIを含み、AIコーディングエージェント用に llms.txt とMCPサポートを提供します。
  • 軽量なサイズ: CIで厳格なバンドル予算を強制し、ライブラリを軽量化(例:25 KB gzip圧縮でフルスクリーンエフェクト)。
  • 明示的なフレーム制御: シーングラフの状態に依存しない、明示的な呼び出しベースのパスと描画処理を採用しています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト