1

グラフィックスの描画を学びたいのですが、どこから始めればよいかわかりません。OpenGL や DirectX の学習に飛び込むことができることはわかっていますが、グラフィックスを描画するための他のオプションがあり、それらが OpenGL のパフォーマンスに対してどれだけうまくスケーリングするかを知りたいです。画面にピクセルを直接描画する C++ コマンドは、グラフィックス レンダリング プロセスがどのように行われるのか疑問に思います。また、これらの C++ コマンドを使用するだけで、小さなこと (カスタム ウィンドウの描画など) のパフォーマンスが向上する可能性があります。

どこから始めればよいか本当にわからないので、一般的なグラフィックス レンダリング ソフトウェア/技術を客観的に比較することは非常に役立ちます。

4

1 に答える 1

2

一般に、画面や画像に何かを描画する方法にはいくつかの方法があります。

  • ハードウェア レンダリング(OpenGL) OpenGL
    の学習を開始するには、チュートリアル「Learning Modern 3D Graphics Programming」を読む必要があります。チュートリアルはとても良いです。必要なすべての計算を説明し、簡単な例から始めて、パフォーマンスに注意を払います。そして、それは非常に現代的です (「OpenGL チュートリアル」をグーグルで検索すると、古代の「固定パイプライン方式」を使用する古いチュートリアルがたくさん見つかります)。

  • ソフトウェア レンダリング個人的には、このタスクにはQt フレームワーク
    を使用することをお勧めします。(もちろん、それを行うことができる他のライブラリもあります。) 新しい QImage または QPixmap オブジェクトと、その上に QPainter を作成します。次に、画像に QPainter コマンドを使用して描画できます。その後、画像をファイルに保存したり、画面に表示したりできます。カスタムペイント イベントで QPainter を使用して、画面に直接レンダリングすることもできます。

  • カスタム ピクセル単位の描画
    この方法を使用して、コンピューター グラフィックスの「低レベル」の要素を学習します。ライブラリによって提供される操作が「ピクセル x、y を色 r、g、b に設定する」だけの場合に、画面に線を描画する方法を学びます。これは、Qt のQImage::setPixelを使用して行うこともできます。

于 2013-02-02T03:22:20.313 に答える