【发布时间】:2014-09-24 22:14:17
【问题描述】:
我正在使用 TextureAtlas 来组织我的所有图像,当我需要可以缩放以适应的纹理时,它非常有用。但是我想创建一个背景,它是 TextureAtlas 的一个区域,重复多次,直到某个区域被填充。我尝试将 TextureWrap 设置为这样重复:
public class Background extends Group {
SpriteActor bg;
public Background(int complexity) {
bg = new SpriteActor("background");
bg.getSprite().getTexture().setWrap(TextureWrap.Repeat, TextureWrap.Repeat);
bg.setSize(Match.TRACK_WIDTH,Match.TRACK_HEIGHT); //These constants equal 12000
this.setSize(Match.TRACK_WIDTH,Match.TRACK_HEIGHT);
this.addActor(bg);
}}
其中 SpriteActor 只是一个带有 Sprite 字段的 Actor:
public class SpriteActor extends Actor {
private Sprite sprite;
public SpriteActor(String assetName) {
super();
setSprite(new Sprite(Art.assets.findRegion(assetName)));
setWidth(sprite.getWidth());
setHeight(sprite.getHeight());
}
...
但是,图像仍会被拉伸以适应该区域(12000x12000 像素),并且不会重复。我猜这是因为包装设置为 Texture,它基本上包含 TextureAtlas 中的所有图像。我正在寻找的是一种可能只设置 TextureRegion 重复的方法。有没有一种方法可以同时使用 TextureAtlas 并重复我的图像?
【问题讨论】:
标签: java libgdx textures texture-mapping