このプロジェクトについて
Irreden Engineは、独特なビジュアルスタイルを持つゲームを作成するためのアイソメトリックな「ピクセル化可能」ボクセルコンテンツおよびゲームエンジンです。このエンジンはC++23で構築され、WindowsではデフォルトでOpenGL、macOSではMetalという複数のバックエンドをサポートしています。コンポーネントを静的ライブラリとしてコンパイルするモジュラーアーキテクチャを採用しており、柔軟な統合と開発が可能です。
主なモジュールには以下が含まれます:
- **IRRender**:メッシュレスボクセルレンダリングをコンピュートシェーダーで処理し、3Dボクセルを2Dアイソメトリックキャンバスに変換します。補間されたピクセルスクロールでスムーズなカメラ移動を実現し、複数のボクセルキャンバスをサポートします。
- **IRECS**:キャッシュ効率の高いアーキタイプベースのエンティティ・コンポーネント・システム(ECS)フレームワークで、ラムダによるシステム定義やバッチエンティティ作成が可能です。
- **IRAudio**:オーディオデバイスのプロービングと接続、コントローラー用のMIDI入力、リアルタイムオーディオストリーム(開発中)をサポートします。
- **IRInput**:GLFWによるウィンドウ作成と、ゲームループと同期したキーボード、マウス、ゲームパッドの入力を管理します。
- **IRScript**:ランタイム構成用のLua C APIラッパーを提供し、将来的にフルLuaベースの実装も検討されています。
- **IRVideo**:FFmpegを使用したMP4/H264フレームバッファキャプチャを可能にし、ランタイムで録画を切り替えることができます。
- **IRMath**:アイソメトリック計算、GLMラッパー、アニメーション用のイージング関数を含みます。
- **IRTime**:一貫した更新のための固定FPSイベントと、レンダリング用の無制限FPSイベントを提供します。
このエンジンは、`creations/game/`ディレクトリ構造を通じてプライベートゲームプロジェクトの統合をサポートしており、CMakeターゲットを自動的に検出します。依存関係には、RtAudio、RtMidi、GLFW、GLM、EasyProfiler、SpdLogger、Fmt、Glad、StbImage、MeshOptimizer、Assimp、enkiTS、Lua、FFmpegが含まれます。開発ツールには、構成、ビルド、テスト、フォーマット、リンティング用のCMakeプリセットがあります。このプロジェクトは、エンジン設計に関するフィードバックや、問題の報告、プリファブの変更、オープンソースプロジェクトの公開による貢献を歓迎しています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.