高性能ベクターグラフィックスソリューション[終了]


12

ゲームで使用できる高性能のベクターグラフィックライブラリを探しています。

私はSVGで作成できるようなベクトルグラフィックの線に沿って考えています

現時点ではすべての言語を検討します(ただし、Windowsで実行する必要があります)。GPUハードウェアを活用するソリューションは素晴らしいものです。

前もって感謝します。


ベクターグラフィックスを使用したい理由はありますか?
AttackingHobo

はい:スタイルが好きです。テクスチャよりも圧縮率が高く、アニメーションに対してより柔軟です。
CiscoIPPhone

回答:


7

Windows(Vista以降)が唯一のプラットフォームである場合、Direct2Dを検討する必要があります。Direct2Dは、ソフトウェアフォールバックを備えたGPU加速2Dベクトルグラフィックスレンダリングを提供します。よりxプラットフォームのソリューションについては、GPUアクセラレーションラスタライザーがあると信じているCairoを調べてください。


興味深いことに、Direct2Dのことは聞いたことがない。おそらくWindows 7のみであるため、広く使用されていないようです。
CiscoIPPhone

Direct3D 10を使用しているため、VistaとWindows 7のみです。そして、かなり新しいです:)
boki

2
著名なゲームプログラマーの中には、Direct2Dがひどい-braid-game.com/news/?p=455(ポッドキャストにもリンクしている)とbraid-game.com/news/?p=466を考慮していることに注意してください。

Direct2D のマネージラッパーは、ネイティブライブラリよりも作業がはるかに簡単になる傾向があると思います。また、Direct2Dについて私が読んだ批判のほとんどは、Direct3Dで同じ目的を比較的簡単に達成できる例を引用しています。確かに、長方形を描くのはやり過ぎですが、曲線やシェイプが非自明なテクスチャリングやストロークでうまく機能します。その上、D2Dは主にゲーム開発者を対象としていませんでした。GDIに代わる、よりリッチでパフォーマンスの高い選択肢を提供することを目的としていました。ただし、Direct3Dとの相互運用性は良好です。
マイクストロベル

3

OpenVGは、ハードウェアアクセラレーションベクターグラフィックスの標準です。Mali / PowerVR / Vivanteなどのハンドヘルドデバイス向けのGPUでサポートされています。QtとCairoはOpenVGをバッキングレンダリングとして使用できます。OpenGLハードウェア(MonkVG、AmanithVG GLE)またはソフトウェアのみ(AmanithVG SRE、ShivaVG、AlexVG)を使用してOpenVGを実装するソフトウェアライブラリがあります。


2

Scaleform GFxは、Adobe Flashムービー(最適化されたレンダリング、ActionScriptなど)をエンジンに統合するための商用ミドルウェアライブラリです。

過去には、Scaleform GFxのコードベースはGameSWFのコードベースでした。GameSWFはオープンソースです。

私はこの答えにさらに追加するつもりでしたが、戻ったときまでに、私が思いつきたい主なポイントのほとんどは他の答えで言及されていました。

Flashベースのアプローチに関連することは、AdobeがActionScript仮想マシンにソースコードをリリースしたという事実だけです。MozillaのTamarinプロジェクトに現在あります。


1

Windows XPを使用している場合、またはほとんどのバージョンのWindowsで動作するものが必要な場合は、DirectDraw(少し古くなっていますが)またはGDI +をチェックアウトする必要があります。または、Flashを使用できます。クロスプラットフォーム。


DirectDrawはしばらくの間廃止され、私が知る限り、ベクターベースのグラフィックスをレンダリングするためのネイティブ機能はありません。私の記憶は、テクスチャとブリットに完全に依存していたということです。GDI +は加速されておらず、GDIは加速されているものの、かなり原始的であると思います。複数のレンダラーをサポートするCairoのようなライブラリを使用する方が良いでしょう。少なくとも1つはGPUアクセラレーションレンダリングをサポートします。Direct2Dのは、おそらくVistaおよび7のために最良の選択である
マイク・ストローベル

私の悪いことに、GDI +が加速されたと思いました!あなたが言うように、Direct2Dが最良の選択だと思います。
ドットミン

1

SVGグラフィックスをXNAゲームエンジンに組み込む方法について、いくつかの議論があります。ここに1つ:http : //wam-games.com/2010/04/svg-in-xna/ そしてこのサイトに投稿があります:XNAでSVGアートを直接レンダリングする

XNAは、Direct3Dを介してほとんどすべてをパイプ処理するため、GPUで高速化されています。基本的にC#でプログラムする必要があります(他の言語を使用することもできますが、ハッキングする必要があります)。XNAを使用すると、確実にWindowsを取得できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.