本文へスキップ
バージョン: v8.x

PixiJSとは

では、PixiJSとは一体何でしょうか?本質的に、PixiJSはWebGL(またはオプションでCanvas)を使用して画像やその他の2Dビジュアルコンテンツを表示するレンダリングシステムです。完全なシーングラフ(レンダリングするオブジェクトの階層)を提供し、クリックやタッチイベントの処理を可能にするインタラクションサポートを提供します。現代のHTML5の世界ではFlashの自然な代替品であり、Flashでは達成できなかったパフォーマンスとピクセルレベルのエフェクトを提供します。オンラインゲーム、教育コンテンツ、インタラクティブ広告、データ可視化など、複雑なグラフィックスが重要なあらゆるWebベースアプリケーションに最適です。CordovaやElectronなどのテクノロジーと組み合わせることで、PixiJSアプリはブラウザを超えてモバイルアプリやデスクトップアプリとして配布できます。

PixiJSで得られるその他の機能

PixiJSは...高速です

PixiJSを他のWebベースのレンダリングソリューションと区別する主要な機能の1つは、*速度*です。レンダリングパイプラインは、ユーザーのブラウザから可能な限り最高の性能を引き出すために、基礎から構築されています。自動スプライトとジオメトリのバッチ処理、GPUリソースの慎重な使用、厳格なシーングラフなど、アプリケーションの種類に関わらず、速度は重要であり、PixiJSはそれを余分に提供します。

...単なるスプライトだけではありません

ページへの画像の描画はHTML5とDOMで処理できますが、なぜPixiJSを使用するのでしょうか?パフォーマンス以外にも、PixiJSは単純な画像をはるかに超えています。MeshRopeを使用してトレイルやトラックを描画します。Graphicsを使用して、ポリゴン、ライン、円、その他のプリミティブを描画します。Textは、スプライトと同じくらい高性能な完全なテキストレンダリングサポートを提供します。そして、単純な画像を描画する場合でも、PixiJSはネイティブにスプライトシートをサポートしているため、効率的な読み込みと開発の容易さが実現します。

...ハードウェアアクセラレーション

JavaScriptには、グラフィカルレンダリングのハードウェアアクセラレーションを処理するための2つのAPIがあります。WebGLと、より現代的なWebGPUです。どちらも本質的に、高速レンダリングと高度なエフェクトのためのユーザーのGPUにアクセスするためのJavaScript APIを提供します。PixiJSはこれらを活用して、モバイルデバイスでも数千もの移動するスプライトを効率的に表示します。しかし、WebGLとWebGPUを使用することで、速度以上のものが得られます。Filterクラスを使用することで、シェーダープログラム(または事前に構築されたシェーダープログラムを使用)を記述して、ディスプレイスメントマップ、ぼかし、その他のDOMやCanvas APIでは実現できない高度な視覚効果を実現できます。

...オープンソース

エンジンの動作を理解したいですか?バグを追跡しようとしていますか?クローズドソースプロジェクトで問題を抱えていますか?PixiJSでは、完全なソースコードアクセス権を持つ成熟したプロジェクトを提供します。互換性のためにMITライセンスを取得しており、GitHubでホストされているため、問題の追跡とアクセスが容易です。

...拡張性

オープンソースが役立ちます。JavaScriptベースであることも役立ちます。しかし、PixiJSが簡単に拡張できる真の理由は、システムのあらゆる部分を支えるクリーンな内部APIです。長年にわたる開発と5つの主要なリリースを経て、PixiJSは、ニーズに関係なく、プロジェクトの成功を支援する準備ができています。

...簡単に展開できます

Flashにはプレイヤーが必要です。Unityにはインストーラーまたはアプリストアが必要です。PixiJSに必要なのは...ブラウザです。WebへのPixiJSの展開は、Webサイトの展開とまったく同じです。それはまさにそれです - JavaScript + 画像 + オーディオ、これまで何度も行ったように。ユーザーは単にURLにアクセスするだけで、ゲームやその他のコンテンツを実行できます。しかし、Webにとどまりません。モバイルアプリを展開したい場合は、CordovaにPixiJSコードをラップします。スタンドアロンのデスクトッププログラムを展開したい場合は、Electronラッパーを作成すれば準備完了です。