libgdx: повторяет текстуру со смещением, как в HTML/CSS.

Я хочу повторить текстуру, но текстура должна начинаться со смещения, а не с 0,0 (uv). я установил

texture.setWrap(Texture.TextureWrap.Repeat, Texture.TextureWrap.Repeat);

и нарисуйте его с

backgroundBatch.draw(texture, 0, 0, stage.getWidth(), stage.getHeight(), 0, 0, 1, 1);

У этого решения есть две проблемы: во-первых, текстура искажается, и я не могу указать смещение для текстуры. Координата экрана должна быть 0,0, но текстура uv не должна начинаться с 0,0.

Я хочу такое же поведение, как background-position в сочетании с background-repeat в css.


person morpheus05    schedule 22.07.2013    source источник


Ответы (1)


Лучший способ добиться этого — использовать классы ParrallaxLayer и ParrallaxBackground.

он оптимизировал фоновую операцию, так что вам не нужно беспокоиться о производительности

https://code.google.com/p/libgdx-users/wiki/ParallaxBackgound

person Paras Mittal    schedule 22.07.2013
comment
Проголосуйте за ответ, но я думаю, что это не совсем то, что я ищу, мой фон - просто статичное украшение, которое мне нужно немного перевести. - person morpheus05; 23.07.2013