Hej, parę lat temu jak uczyłem się programować konsolę Atari 2600 to trafiłem na ciekawy przykład wykorzystania duszków w grze Legendary Spear (patrz obrazek). W grze tej występuje szereg ruchomych obiektów., które zdają się przekraczać ograniczenia konsoli- VCS jest zdolny do wyświetlenia tylko 2 duszków po 8 pikseli każdy w poziomie. Okazało się, że tak szerokie duszki to wynik zmieniania co linię pozycji pojedynczego duszka oraz jego rozmiaru (duszki mogą być rozmiaru 1x 2x i 4x). Z racji tego, że duszki na Atari są podobne do duszków na 2600 to wpadł mi do głowy pomysł, że zwykłe ograniczenie duszków do 8 (lub 10) pikseli w poziomie może zostać ominięte poprzez podobne zmiany jak we wspomnianej grze, wszystko na przerwaniach DLI.
dobry pomysł, chciałem to zastosować w swoim interku unity "trzy tryby w linii), tam jest taka "piłka" na 4 missile'ach. piłka by mogła być znacznie okrąglejsza i ładniejsza. niestety tam mi nie stykło czasu w linii (a moze umiejętnosci), żeby to zrealizować, więc jest zwykły sprajt na missile'ach 4x szeroki. w każdym razie większe i ładniejsze piłki czy inne kształty możliwe.
mi przypomniała o tym sposobie grafika z nowej gry Cyborg Warriors, gdzie nogi astronautów są wysunięte względem tułowia i być może zastosowano tutaj ten trick, w każdym razie w latach 90 gry cierpiały na "słupowatość" postaci, które musiały się zmieścić w 10 pixlach a ten sposób mógłby całkiem sporo pomóc
Sam fakt dynamicznej zmiany szerokości spritów w DLI nie jest niczym odkrywczym. Korzystają z tego stare gry, np. do robienia efektów wybuchów itp. Np. zmiana szerokości jest wykorzystywana w Miner 2049 (śmierć bohatera). Jest to przykładowo wykorzystane też np. w grze Bruce Lee (nogi w kopniaku w wyskoku). Ciekawie by się zrobiło, gdyby wymyślić coś fajnego w czym można to wykorzystać, a nie sam fakt, że tak się da. Jest też kwestia tego, że zmiany duszków w DLI powodują dodatkowe trudności obliczeniowe, zabierają oczywiście czas, no i komplikują ogólnie kod. Dlatego myślę, że trzeba oceniać czy gra jest warta świeczki - krótko mówiąc da się, ale trzeba ocenić konkretną sytuację czy się opłaca i czy to właściwa droga w konkretnym zastosowaniu. No ale ogólnie fajne to jest w Atari:-)
A nie jest tak że w CW użyto po dwa duszki na postać ? Dla mnie ta gra troszkę za wolno działa, przy bossach jest dodatkowe spowolnienie. Dynamiczną zmianę szerokości stosuję w w tej Lasy Squadron i Ruff n Tumblr gdzie dodatkowo stosuję prio=0 co daje około 12 kolorów na postać gracza (zamiast 3) lub 6 kolorów dla przeciwnika.