私はOpenGLとC++で書かれたクロスプラットフォームであることを望むアーティストの会社のためにフルHD対応2Dエンジンを作成中です。フルHD 2DテクスチャメモリOpenGL
私がやってきた主な問題は、すべてのHDスプライトに対処する方法です。アーティストは24fpsでグラフィックスを描画し、pngシーケンスとしてエクスポートされます。私はファイルサイズを小さくするDXT5をロードするためには、DirectXヘッダーが必要なので、DDSに変換しました(理想的ではありません)。ゲーム内のいくつかのシーンは、一度に5または6のアニメーションスプライトを持つことができ、これらは200以上のフレームで構成されます。それぞれです。現在、ポインタの配列にスプライトをロードしていますが、圧縮テクスチャを使用してもロードに時間がかかりすぎて、かなりのメモリ(フルシーンでは約500MB)が使用されます。
私の質問は、このような大量のフレームを処理する方法に関するアイデアやヒントがありますか?
- (私は不安があるPNGシーケンスを交換し、2次元の骨格アニメーションシステムを実装するフラッシュ
- からのフレームを格納するためのswf形式を使用します。私はのthought'veをしたアイデアがいくつかありますジョイントが表示されています)
Castle Crashersのようなゲームは、すばらしいHDグラフィックスですばやく読み込みます。
ディスクから読み込むには時間がかかりすぎるか、GPUにアップロードするには時間がかかりますか? – genpfault
"Directxヘッダーをロードする必要があるため理想的ではありません" DDSをロードするためにDirect3Dヘッダーは必要ありません。 –