私はMFCを使用して非常に大きなアプリケーションを開発しました。当然、描画にはGDIを使用し、イベントルーティングにはCCmdTargetを使用し、ドキュメントビューアーキテクチャを使用しました。それは便利な開発パスでした。
現在、クライアントはこのアプリケーションを.Netに変換することに関心があります。私は(そして彼らも)C#で新製品を書くことを好みます。
アプリケーションは何千ものグラフィックオブジェクトを表示して操作するので、GDI +を使用すると、自然に見えますが、パフォーマンスの問題が発生する可能性があると考えました。そこで、グラフィックライブラリ(2D)としてOpenGL、具体的にはOpenTKを使用することを考えています。
OpenGLは、画面の一部の無効化に依存するこれらのWindowsAPIとは異なる動作をすることを知っています。OpenGLには、常に画面に描画するレンダリングループがあります。
私の質問は次のとおりです。これは、次のことを考えて、許容できる方法ですか。
パフォーマンス-ユーザーは特別なグラフィックカード(ハードウェア?)を必要としますか?グラフィックを多用しますが、ハイエンドのゲームではありません
印刷と印刷プレビュー-これらは達成するのに複雑ですか?
複数の選択とコンテキストメニュー
このライブラリはWindowsフォーム内でうまく機能しますか?