まず、Texture vs TextureRegion:Texture t = new Texture(path)のようなことをすると、それをGPUにロードします。さらに、2つの累乗のテクスチャをロードする必要があります。他の解像度(Texture.setEnforcePotImages = false)で作業することもできますが、pow of 2を使用することをお勧めします。
今回、TextureRegionは、次元に関係なく、テクスチャから「ピース」を取得します。1つのテクスチャとそのテクスチャの複数のTextureRegionを持つ利点は、すべての領域をGPUにロードしないことです。
ご想像のとおり、SpriteBatchを使用して描画する場合は、複数のテクスチャの代わりにTextureRegionを使用する方がはるかに効率的です。ここに良い説明があります:Textures TextureRegion&SpriteBatch
ここで、TextureRegionと1つの画像を2の累乗の解像度で使用し、すべてのスプライトシートと画像を使用します。すべての座標と寸法でTextureRegionsを作成する必要がありますか?ピクセルを数えるためにペイントを開く必要がありますか?いいえ、ありません。TexturePackerのようなものを使用できます。すべてのテクスチャを1つの画像にパックし、すべての寸法と座標を含む.packファイルを作成します。
結果は次のようになります。
テクスチャを作成する代わりに、次のようにTextureAtlasを作成します。
これで、TextureRegionsの作成は次のように簡単になります。
(領域の名前は、拡張子のない元の画像の名前であることに注意してください)。
スプライトは、バッチを使用して2Dスプライトを描画するためのジオメトリ、色、およびテクスチャ情報を保持します。つまり、簡単に回転して移動できます。独自のEntityクラスを作成しましたが、Spriteクラスは必要ありません。あなたはおそらく同じことをするでしょう。このクラスは本当に便利だとは思いません。
画像クラスはアクターから継承します。つまり、ステージに追加できます。これはScene2Dパッケージの一部です。libgdxが初めてで、このパッケージについて知らない場合、これはこのクラスに関する十分な情報です。これは本当に興味深いトピックですが、この質問に答えることはできません。
それが役に立てば幸い :)