このプロジェクトについて
G3N(「ジェン」と発音)は、Goプログラミング言語で書かれたオープンソースのOpenGL 3Dゲームエンジンであり、リッチでダイナミックな3D表現を備えたクロスプラットフォームのGoアプリケーションを構築するために設計されています。
### 主な機能
- **クロスプラットフォーム対応:** Windows、Linux、macOSで動作し、WebAssemblyサポートは90%完了とされています。
- **統合GUI:** さまざまなウィジェットを備えた基本的なGUIフレームワークを含みます。
- **階層シーングラフ:** ノードは他のノードを含むことができ、3Dシーンを整理できます。
- **空間オーディオ:** OpenALを介した3D空間オーディオをサポートし、.wavおよび.ogg形式を含みます。
- **ライティングとレンダリング:** リアルタイムの環境光、指向性、点光源、スポットライトに加え、物理ベースレンダリング(フレネル反射、幾何学的オクルージョン、マイクロファセット分布)を提供します。
- **モデルとジオメトリのサポート:** glTF(.gltf、.glb)、Wavefront OBJ(.obj)、COLLADA(.dae)用のローダーを含みます。また、ボックス、球、円柱、トーラス用のジオメトリジェネレーターを備え、モーフターゲットとマルチマテリアルをサポートします。
- **アニメーションとシェーダー:** 位置、回転、スケール用のアニメーションフレームワークを備え、ユーザー作成のGLSL頂点、フラグメント、ジオメトリシェーダーをサポートします。
- **その他の機能:** HiDPIディスプレイ、透視および正射カメラ、TrueTypeフォント、画像テクスチャ(GIF、PNG、JPEG)をサポートし、実験的な基本物理エンジンを含みます。
### 依存関係とインストール
このエンジンにはGo 1.8以上、OpenGLドライバー、GCC互換のCコンパイラが必要です。Unix系システムでは特定のCライブラリ(xorg-dev、libgl1-mesa-dev、libopenal-dev、libvorbis-devなど)が必要です。Windowsビルドはmingw-w64ツールチェーンを使用し、macOSではOpenALとVorbis用のHomebrewパッケージが必要です。エンジンはリポジトリをクローンして`go install ./...`を実行する標準的なGoコマンドでインストールできます。
### 例とコミュニティ
リポジトリには、色を変えるボタンと青いトーラスを示す基本的な「Hello G3N」の例が含まれており、カメラ、ライト、GUI統合を示しています。プロジェクトはGoDocによるAPIドキュメント、wikiガイド、サポートとディスカッションのためのDiscordコミュニティチャンネルを提供しています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.