見出し画像

🚀FPLBaseとFlatBuffers fpl の違い MathFu

FPLBaseは、FPLで使用している最下層のゲームライブラリで、入力、レンダリング、リソースロード(シェーダ、テクスチャ、メッシュなど)の面倒を見ます。また、Androidの入力デバイスやHMDを扱うための便利な機能や、スレッドによるリソースロードも提供されています。

https://google.github.io/fplbase/index.html#fplbase_overview

レンダラーは、ベクトルや行列のデータ型について、MathFu ライブラリに依存しています。アセットマネージャは FlatBuffers シリアライゼーションライブラリに依存しています。

FPLBaseは、ゲームの構造について何も指示しないという意味で、「エンジン」であることを意図していません。空のプロジェクトから「画面に絵を描く」までの距離を縮めることを目的としており、生のOpenGLの上で作業したのでは得られない典型的な最小限の機能を提供することで、この機能を実現しています。
また、(SDL、GLFW、Glutなどのような)プラットフォーム抽象化ライブラリであることを意図しているわけではありません。私たちは(オプションで)その目的のためにSDLを下に使用し、あなた自身のOpenGLコンテキストを設定することを前提としたライブラリのバージョン(fplbase_stdlib)を提供しています。

最下層のレイヤーとして、SDL (Simple Directmedia Layer)を使用します(オプション)。SDLは、オープンソースのクロスプラットフォームレイヤーで、OpenGLコンテキストの作成、入力、その他ゲームがプラットフォーム上で動作するために必要なものを、プラットフォーム固有のコードを書くことなく提供します。長い間開発が続けられており、モバイル(Android、iOS)、デスクトップ(Windows、OS X、Linux)向けに非常に強力なサポートを持っています。
SDLとOpenGL(ES)、C++は、優れたクロスプラットフォームゲームを作るための優れた基礎を提供します。
もし、独自のOpenGLコンテキストを初期化したい場合は、fplbaseライブラリの代わりにfplbase_stdlibライブラリにリンクすることができます(CMakeLists.txtを参照してください)。メッシュ、シェーダ、テクスチャをロードし、OpenGLの詳細をコードから隠します。

https://google.github.io/fplbase/fplbase_guide_introduction.html

お願い致します