[PL] XNA 3.0 deployment na Xbox’a 360


Spróbowałem wrzucić swoje pierwsze wypociny w Xna na Xbox’a 360.
Fantastycznie łatwo to poszło. Po sklonowaniu swojego projektu na nową platformę najpierw musiałem poprawić parę rzeczy w kodzie. Nie chciał się z marszu skompilować.

Pierwsza rzecz to kompilator trochę bardziej wnikliwie przyjrzał się jak inicjalizuję obiekty i wytknął mi parę błedów z tym związanym. Druga rzecz to shadery. Trochę inaczej działają.

I to była brutalna i wizualna weryfikacja mojego kodu. Mgła zrobiona przez parametry FogEnable po stronie PixelShadera nie za bardzo zadziałała. Po stronie RenderState też nie rozpoznaje parametru. Dziwne.

Druga rzecz to efekty HDR. Być może coś schrzaniłem w shaderze, być może trochę inaczej powinienem zorganizować renderowanie do textury a później składanie warstw w finalny obraz. Jeszcze nie wiem, będę się bawił 🙂

Pocieszyłem się, że chociaż jeden z moich shaderów zadziałał – prosty environment mapping.

Z pozostałych komentarzy jakie mogę wysnuć po paru minutach zabawy w deployment na Xboxa to fakt, że obraz na moim TV jest dużo jaśniejszy niż na komputerze. Nie wiem jeszcze czy to “wina” Xna czy też może sygnału do TV jaki Xbox generuje czy po prostu mój Samsung w trybie dla gracza daje mi taki efekt.

Kolejna sprawa - playback audio jest strasznie kiepskiej jakości, bzyczek na moim laptopie trochę lepiej się sprawuje.

Comments (1)

  1. Z pozostałych obserwacji – xbox jest damn fast 😉

    Na PC gdy chciałem wgrać sobie więcej zasobów (mp3 ważące ok 8mb) to musiałem czekać około 5 sekund zanim mi się wszystko załaduje i zacznie grać muzyka (i dziać się będą rzeczy na ekranie).

    To od razu uruchomiło mi myślenie multi-core i na osobnym wątku wrzuciłem sobie cały loading, a póki się nie wgrały leciał jakiś prosty efekt na ekranie.

    Wciąż ten efekt trwał jakieś 5 sekund, natomiast przynajmniej nie było czarnego okna.

    Ten sam kod na xboxie (z wykorzystaniem wątku w tle do loadingu) i wszystko idzie z miejsca, bez żadnego przestoju. To tylko sygnał dla mnie, że jak zamierzam coś większego zrobić na xboxie to na dzień dobry trzeba uwzględnić programowanie rownoległe.

Skip to main content