10

Siggraph 2012 の非常に印象的なプレゼンテーションを見ました。

http://nvidia.fullviewmedia.com/siggraph2012/ondemand/SS106.html

私の質問は、これは独自の Nvidia 拡張機能であるため、GPU でベジエ パスをすばやくレンダリングする他の可能性は何ですか? あるいは、これが最終的に OpenGL 標準の一部になる希望はありますか? これが最終的にいつ発生するかについて、時間の見積もりを出すことは可能ですか?

GPU パス レンダリングを扱う他の (できればオープン ソースの) プロジェクトを知っていますか?

編集: 元の論文に新しい「付録」が追加されました。

https://developer.nvidia.com/sites/default/files/akamai/gamedev/files/nvpr_annex.pdf

4

3 に答える 3

4

ShivaVGは、パス レンダリングのオープン ソースの代替手段です。OpenVG 実装のリストについては、このスタック オーバーフローの質問を参照してください: Best OpenVG Implemenation

基本的に、いくつかのオプションがあります: OpenVG実装 ( ShivaVG など) を使用するか、OpenGL 実装または拡張機能 ( NV_path_rendering など) を使用するか、 Direct2Dなどの別のものを完全に使用します。

ただし、NV_path_rendering の他の代替手段は、その機能セットとレンダリングの品質に近づくことさえできません。NV_path_rendering は、フォントをネイティブに処理し (これは大したことです。フォントがないと乾杯します)、真の遠近法でスケーリングなどを行い (Illustrator で試してみてください!)、3D とうまく混合し、sRGB を使用し、フラグメント シェーダーを使用し、このすべてが信じられないほど高速です。また、OpenVGがAFAIKを指定していないユーザーインタラクションも実装しています。

ユニークなことに、NV_path_rendering は新しい標準を発明しません。むしろ、 PostScriptSVGなどのいくつかの業界標準を実装しており、現在他のどこにも見られない品質と速度 (両方を備えていることはまれです) に重点を置いています。

(さらに、Mark Kilgard がプロジェクト リーダーです。さあ、彼は素晴らしいです。)


スタンダードになるの?わかりにくい。何を使用するかについては、現時点での目的/ニーズによって異なります。アプリの高品質なパス レンダリングをお探しですか? 確かにNV_path_rendering。アプリ (特にモバイル) で基本的な解像度に依存しないグラフィックスをお探しですか? OpenVGの方が良いかもしれません。Nvidia のソリューションが完全に移植可能ではないのは残念ですが、私はそれを使うことを躊躇しません。私は質の高い解決策を望んでいます。移植性がすべてではない場合もあります。

Nvidia は自社のソリューションを OpenVG と比較しましたが、残念ながら OpenVG にはあまりメリットがないことがわかりました。そうですね、それが標準になるという希望はあるかもしれません。しかし、IBMによれば、将来はすべてが組み込まれるため、標準化を望むよりも、オープンであることを望んだ方がよいかもしれません。

「規格の良いところは、たくさんの選択肢があることです。」-- コンピュータ ネットワーク、第 2 版、p. 254


NV_path_rendering featuresの詳細については、こちらをご覧になることをお勧めします: An Introduction to NV_path_rendering .

于 2013-01-29T22:26:40.740 に答える
0

GPU でベジエ パスをすばやくレンダラーする他の可能性は何ですか?

一連のコントロール ポイントを凸パッチにインサイチュでテッセレーションすることは、テッセレーションおよび/またはジオメトリ シェーダーを使用して三角形のハルによって定義されます。次に、フラグメントが各パッチの境界内にある場合はフラグメントごとのテストを実行し、そうでない場合は破棄するフラグメント シェーダーに曲率パラメーターを渡します。

近似が必要な場合は、三角形のメッシュにテッセレーションするだけです。

于 2012-10-18T10:04:11.077 に答える