3

データを表示するグラフィカル アプリケーションを開発しています (ゲームではなく、実際の主力アプリです)。クロス プラットフォームである必要があるため、以下を選択しました。

  • パイソン
  • openGL (3D、ブレンディング、テクスチャなどが必要)
  • パイペングル
  • wx/pywx - ウィンドウ、ダイアログなど

最後のコンポーネント - WX - は疑問を投げかけます。非常に見栄えの良いアプリを作成できます (プロトタイプは見栄えがします)。ただし、ユーザーと対話して質問をしたり、入力を取得したりする必要がある場合は、WX を使用する必要があります。ブレンド、スムーズなモーション、テクスチャなどを備えたフルスクリーン 3D アプリの上に、従来のダイアログやコンボ、テキスト入力を備えた従来の UI を配置すると、アプリの外観に一貫性がなくなります。

OpenGL と Python を使用して GUI を開発した人はいますか? 使用したツールキットやトリックを教えていただけますか? コンボ、テキスト入力、ボタン、ラジオ、オプション ボタン、ツリー ビューが必要です。

世の中にはいくつかのツールキットがありますが、それらは不完全であるか、古くて保守されていません。良い例は pyUI ( http://pyui.sourceforge.net/ ) です。見た目は滑らかですが、何年も手付かずです。

4

9 に答える 9

12

これは答えではなく、嘆願のようなものです。そうしないでください。

再実装されたウィジェットには、ユーザーが見逃してしまうあらゆる種類の機能が欠けています。テキスト入力ボックスはドラッグ アンド ドロップをサポートしますか? コピーペースト?右から左へのスクリプト? ドラッグ選択?ダブルクリック選択?これらのメカニズムはすべて、サポートする各プラットフォームのネイティブの規則に従いますか?

Wx を使用すると、ウィジェットはアプリと一致しないように見えるかもしれませんが、少なくとも同じように重要な OS と一致するように見えます。さらに重要なことは、ユーザーが期待することを実行することです。

(編集) 投稿が 3 つ、そして -3 ポイント? このカルマ娼婦の巣窟をねじ込みます。元の投稿者: OpenGL で (ゲーム UI 用に) ウィジェットの基本セットを実装しましたが、それは終わりのない悪夢のような仕事でした。

于 2008-09-16T23:41:09.497 に答える
7

QT の最新リリースでは、ウィジェットをOpenGL コンテキストに描画することができます。それ以外の場合は、一部のゲーム エンジンで使用されるCEGuiがあります。

最も基本的な外観と機能に満足しない限り、自分自身を教育したいのでない限り、自分で GUI ウィジェットを実装するのは時間の無駄です。

于 2008-09-26T10:21:40.307 に答える
3

Python + Qt + OpenGL - Python を使用すると、どのアプリケーションもより速く、より適切に作成できると確信しています。QT4 はクロスプラットフォームで、美しく、ウィジェット (アクセシビリティなど) から必要なものすべてを実装し、... OpenGL と統合します。つまり、コードでレンダリングする openGL のものへのビューポートであるウィジェットを簡単に持つことができます。

ほとんどのことをカバーする別の 3D 対応ソリューションですが、ユーザー インターフェイスのニオスではないのは、Python スクリプトを使用して Blender3D を拡張することです。3D 機能とレンダリングがあり、Python ですべて同じようにスクリプトを作成し、クロスプラットフォームになります。また、openGL だけよりも 3D を操作するための高レベルのツールを利用できます。主に PyQT と比較した場合の UI の観点から明らかな欠点がありますが、それは可能です。

于 2008-09-17T00:14:41.617 に答える
1

Blender は、OpenGL で完全に記述された GUI を備えた、私が知っている唯一のアプリです...唯一の問題は、それが C++ であることです。

私も Python 開発者ですが、OGL を使い始めたばかりです。

正直なところ、OGL で GUI を開発するためのツールキットはないと思います...

Blender の開発者は、直接のヘルプではなく、回り道のドキュメントを私にくれています...しかし、私が理解したことをお知らせします ;)

編集: PyOpenGL の関数に関する少しのドキュメントがあります: http://pyopengl.sourceforge.net/documentation/manual/reference-GLUT.html

于 2011-10-08T13:59:37.573 に答える
1

wx と QT はどちらも、OS のルック アンド フィールにマッチするアプリケーションを作成する優れた仕事をしています。すべてのウィジェットを自分で openg に直接実装することもできます。このスラッシュドットの投稿には、利用可能なセットの一部がリストされています。

http://ask.slashdot.org/askslashdot/02/12/24/1813219.shtml?tid=156 fox はおそらく最も開発されたものですが、すべてのプラットフォームで Windows のように見えます。

于 2008-09-17T17:14:16.907 に答える
1

wx の代わりに Qt を試してください。

QT はクロス プラットフォームであり、CSS を使用してさまざまなスタイルを設定できます。非常によく文書化されており、優れた python バインディングがあります。実際のところ、私は PyQT のドキュメントではなく、C++ のドキュメントを使用しています。

于 2008-09-16T23:57:37.070 に答える
1

あなたはClutterを見たいと思うかもしれません、それはかなりクールに見えます。まだ使用していませんが、今後の個人的なプロジェクトで使用する予定です。

于 2008-09-16T23:39:31.263 に答える
0

cegui」は良い選択です。レイアウト xml ファイルを生成するための「ceed」と呼ばれる GUI エディターもあります。cegui には Python バインディングもあり、十分に文書化されており、多くのゲーム エンジンで使用されています。

于 2014-10-21T11:18:49.700 に答える
-2

私の友人。
私はあなたの答えを見つけたと思います;)
http://gliinter.sourceforge.net/

私はまだ試していませんが、かなり有望なようです。(うまくいかなかったら修正します)

編集:
ええと...
Tk、PMW、およびWXを使用します...
(私が望むものとはまったく異なります)

CVS のダウンロードを試すことができます...
(リリースされたパッケージはありませんが、CVS は実行されます)

于 2011-10-08T14:50:03.933 に答える