我不知道有什么区别。有人还可以说纹理和纹理图集之间的区别是什么。
格蕾兹·卢克(Greetz Luc)

最佳答案

通过执行Texture t = new Texture("");在游戏中加载纹理时,将在GPU中加载纹理。

TextureRegion根据您提供的尺寸从Texture占用一个区域,它的优点是您不必一次又一次地加载纹理,而更大的好处是您不必在每个上加载每个纹理您可以通过加载一个大纹理并从中提取子区域(TextureRegions)来直接执行GPU。

现在,由于要使用TextureRegions,将很难知道每个子图像的尺寸以从“纹理表”中加载它们。因此,我们要做的是使用TexturePacker(一个应用程序)将Textures打包为更大的Texture,然后创建一个.pack文件。它将所有纹理打包到一个图像中并创建一个.pack文件。现在,当您加载.pack文件时,它是使用TextureAtlas类加载的
例如,想象一个包含所有宠物小精灵的宠物小精灵包文件。

 TextureAtlas  pokemonFrontAtlas = new TextureAtlas(Gdx.files.internal("pokemon//pokemon.pack"));


现在,假设您使用Texture Packer打包了100个文件,并且想要加载一个文件名为“ SomePokemon”的图像(Texture)。

现在从中获取特定的TextureRegion,您可以

pokemonFrontAtlas.findRegion("SomePokemon")


findRegion(String name)从TextureAtlas返回您的textureRegion。

综上所述,主要区别是TextureRegion是Texture中的Region,而TextureAtlasTextureRegions的集合。

编辑

TextureAtlas类包含扩展了AtlasRegion类的TextureRegion类的集合。

有关更多详细信息,请参见Javadocs。
TextureAtlas

关于java - LibGdx中的textureregion和atlasregion有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31232292/

10-10 10:39