ゲームで使用できる高性能のベクターグラフィックライブラリを探しています。
私はSVGで作成できるようなベクトルグラフィックの線に沿って考えています。
現時点ではすべての言語を検討します(ただし、Windowsで実行する必要があります)。GPUハードウェアを活用するソリューションは素晴らしいものです。
前もって感謝します。
ゲームで使用できる高性能のベクターグラフィックライブラリを探しています。
私はSVGで作成できるようなベクトルグラフィックの線に沿って考えています。
現時点ではすべての言語を検討します(ただし、Windowsで実行する必要があります)。GPUハードウェアを活用するソリューションは素晴らしいものです。
前もって感謝します。
回答:
Windows(Vista以降)が唯一のプラットフォームである場合、Direct2Dを検討する必要があります。Direct2Dは、ソフトウェアフォールバックを備えたGPU加速2Dベクトルグラフィックスレンダリングを提供します。よりxプラットフォームのソリューションについては、GPUアクセラレーションラスタライザーがあると信じているCairoを調べてください。
OpenVGは、ハードウェアアクセラレーションベクターグラフィックスの標準です。Mali / PowerVR / Vivanteなどのハンドヘルドデバイス向けのGPUでサポートされています。QtとCairoはOpenVGをバッキングレンダリングとして使用できます。OpenGLハードウェア(MonkVG、AmanithVG GLE)またはソフトウェアのみ(AmanithVG SRE、ShivaVG、AlexVG)を使用してOpenVGを実装するソフトウェアライブラリがあります。
Scaleform GFxは、Adobe Flashムービー(最適化されたレンダリング、ActionScriptなど)をエンジンに統合するための商用ミドルウェアライブラリです。
過去には、Scaleform GFxのコードベースはGameSWFのコードベースでした。GameSWFはオープンソースです。
私はこの答えにさらに追加するつもりでしたが、戻ったときまでに、私が思いつきたい主なポイントのほとんどは他の答えで言及されていました。
Flashベースのアプローチに関連することは、AdobeがActionScript仮想マシンにソースコードをリリースしたという事実だけです。MozillaのTamarinプロジェクトに現在あります。
Windows XPを使用している場合、またはほとんどのバージョンのWindowsで動作するものが必要な場合は、DirectDraw(少し古くなっていますが)またはGDI +をチェックアウトする必要があります。または、Flashを使用できます。クロスプラットフォーム。
SVGグラフィックスをXNAゲームエンジンに組み込む方法について、いくつかの議論があります。ここに1つ:http : //wam-games.com/2010/04/svg-in-xna/ そしてこのサイトに投稿があります:XNAでSVGアートを直接レンダリングする
XNAは、Direct3Dを介してほとんどすべてをパイプ処理するため、GPUで高速化されています。基本的にC#でプログラムする必要があります(他の言語を使用することもできますが、ハッキングする必要があります)。XNAを使用すると、確実にWindowsを取得できます。