このプロジェクトについて
egui(「イーグーイー」と発音)は、Rust向けのシンプルで高速、かつ移植性の高い即時モードGUIライブラリです。Web上、ネイティブ上で動作し、ゲームエンジンにも統合できます。このライブラリは、シンプルさ、応答性、移植性に重点を置き、Rustで最も使いやすいGUIライブラリとなるよう設計されています。
主な機能は以下の通りです:
- **ウィジェット**:ラベル、ボタン、スライダー、テキスト編集、カラーピッカーなど。
- **レイアウト**:水平、垂直、列、自動折り返し。
- **テキスト編集**:複数行、コピー/ペースト、元に戻す、絵文字サポート。
- **ウィンドウ**:自動サイズ調整と配置による移動、リサイズ、最小化、閉じる。
- **領域**:リサイズ、スクロール、折りたたみヘッダー、パネル。
- **レンダリング**:アンチエイリアス処理された線、円、テキスト、凸多角形。
- **アクセシビリティ**:スクリーンリーダー用のオプションのAccessKitサポート。
- **カスタマイズ**:`Context::set_style`による色、間隔、フォント、サイズの設定。
即時モードパラダイムを使用し、UIは毎フレーム再構築されるため、コールバックや状態同期の問題を排除してコードを簡素化します。このアプローチにより使いやすくなりますが、複雑なレイアウトにはあまり強力ではない場合があります。
公式統合には、Webおよびネイティブアプリ用の`eframe`、OpenGLレンダリング用の`egui_glow`、WebGPU用の`egui-wgpu`、ウィンドウ処理用の`egui-winit`が含まれます。Bevyなどのゲームエンジン向けのサードパーティ統合も利用可能です。
開発者にとって、eguiはRustでシンプルなGUIを作成したり、ゲームエンジンにGUIを追加したりするのに理想的です。これはフレームワークではなく、呼び出すライブラリであり、ネイティブな外観のインターフェースや複雑な保持モードアプリケーションを意図したものではありません。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.