グラフィックスでは、OBJ や COLLADA などのより一般的なテキストベースの形式を実行時に解析する必要がないように、3D アセットの保存用にカスタム バイナリ ファイル形式を作成することについて多くの議論があります。理にかなっています。
ただし、このバイナリ ファイルの実際の作成はそれほど単純ではありません。シリアル化やその他の方法などの手法が含まれているため、最新のバリアントを除いて、C++ によってネイティブに処理されないものもあります。
しかし、これらのテキストベースの形式の 1 つを C スタイルのヘッダーに解析すると、データが単純にfloat
orstruct
宣言に解析されると、このデータはアプリの残りの部分と一緒にバイナリにコンパイルされることに気付きました。つまり、解析はおそらくスクリプトによってアプリの外部で行われ、バイナリへの変換はコンパイル時に変換単位にヘッダーが含まれているときに処理されます。
私の考えは正しいですか?実際にバイナリ ファイル形式を作成してそのルートに進むのと比較してどうですか?