Mirki z #gamedev w #libgdx. Oglądam ten tutorial do "tiled game" i robię według niego wszystko po kolei. Problem taki, że film ma już prawie dwa lata a klasa OrthogonalTiledMapRenderer nie udostępnia już metody getSpriteBatch() tylko getBatch(). I to w sumie jedyna różnica mojego programu z programem z tutoriala i mapa się nie ładuje, bohater również (grafiki wszystkie są w assetsach). Dostaję tylko taki jak na pic rel obraz. Czy to wina użycia innej metody? Jak na to zaradzić, skoro getSpriteBatch() nie jest dostępna?
@NikczemnyPan: tak jest, masz rację, to nie ulega wątpliwości. Jednakże mimo wszystko zamiast tego jednobarwnego prostokąta powinna się pojawić mapa :P
@Override public void show() { map = new TmxMapLoader().load("maps/mapa1.tmx"); renderer = new OrthogonalTiledMapRenderer(map); camera = new OrthographicCamera(); player = new Player(new Sprite(new Texture("img/player.png")));
Spróbuj utworzyć swojego spritebatcha i skonstruować OrthogonalTiledMapRenderer z tym batchem. Playera też rysuj tym batchem.
Dziwnie wygląda ten szary prostokąt. No bo gdybyś próbował utworzyć texture z nieistniejącego pliku to poleci wyjątek ( dobrze pamiętam? ). Nie jest to czasem kawałek Twojej mapy ?
@NikczemnyPan: jak to uczynić? I dobrze pamiętasz, gdy zmienię nazwę pliku na nieistniejącą, to sypie wyjątkami. A ten prostokąd nie jest częścią mojej mapy za cholerę.
@NikczemnyPan: a właśnie wyłączyłem kamerę (tak sądzę) i pojawiła się postać i jedna kratka mapy w lewym dolnym rogu :D i teraz wykombinować o co chodzi i jak to naprawić, hm...
OrthogonalTiledMapRenderernie udostępnia już metodygetSpriteBatch()tylkogetBatch(). I to w sumie jedyna różnica mojego programu z programem z tutoriala i mapa się nie ładuje, bohater również (grafiki wszystkie są w assetsach). Dostaję tylko taki jak na pic rel obraz.Czy to wina użycia innej metody? Jak na to zaradzić, skoro
getSpriteBatch()nie jest dostępna?źródło: comment_pvi9zLlzg6P7gqpMolB77AzPhTkuBnki.jpg
Pobierz@Overridepublic void show() {
map = new TmxMapLoader().load("maps/mapa1.tmx");
renderer = new OrthogonalTiledMapRenderer(map);
camera = new OrthographicCamera();
player = new Player(new Sprite(new Texture("img/player.png")));
Spróbuj utworzyć swojego spritebatcha i skonstruować OrthogonalTiledMapRenderer z tym batchem. Playera też rysuj tym batchem.
Dziwnie wygląda ten szary prostokąt. No bo gdybyś próbował utworzyć texture z nieistniejącego pliku to poleci wyjątek ( dobrze pamiętam? ). Nie jest to czasem kawałek Twojej mapy ?
@NikczemnyPan: jak to uczynić?
I dobrze pamiętasz, gdy zmienię nazwę pliku na nieistniejącą, to sypie wyjątkami. A ten prostokąd nie jest częścią mojej mapy za cholerę.
Konstruktor OrthogonalTiledMapRenderer przyjmuje spritebatcha w jednej z wersji.
setMap(), więc mapę może uda się tu wyrzucić.EDIT: no właśnie nie przyjmuje spritebatcha w konstruktorze. Mam jakiegoś nowszego libGDXa pewnie :O