Wpis z mikrobloga

Jako że pracuję jako programista od lat 15 w zawodzie, podjąłem się próby rozwikłania tego, co działo się z CP77 w ostatnich miesiącach. Doszedłem do dość interesujących wniosków mimo, iż dziedzina IT, którą się zajmuję to nie to samo, co projektowanie złożonych światów 3D. Występują pewne analogie w kontekście tego, co dzieje się z kodem pod wpływem zmian obciążenia i ilości przetwarzanych danych oraz jak kluczowe decyzje podejmowane na początku projektowania danego rozwiązania, mogą wpłynąć na zamknięcie pewnych dróg rozwoju w późniejszym czasie.

Do analizy posłużyło mi kilka obserwacji, już z samego początku gry. Kiedy o tym pisałem w grudniu byłem obśmiewany jako ktoś kto się "czepia", ale moim zdaniem, te obserwacje dotyczyły elementów świadczących o nieprawidłowym podejściu do projektowania wirtualnego świata.

W jednej z pierwszych misji w grze, wraz z Jackiem wsiadamy do samochodu. Jackie kieruje. Zauważyłem to zupełnym przypadkiem, ponieważ po wyjściu z budynku nie podszedłem od razu do Jackiego, tylko ukradłem samochód i pojechałem się kawałeczek przejechać, zobaczyć jak funkcjonuje miasto. Model jazdy może nie był idealny, ale nie był też tragiczny. Wydawał się jedynie nieco zbyt czuły w kontekście klawiatury, ale taką pierdołę można uznać za naprawialną przy okazji którejś z łatek, które mają nadejść. Paradoksalnie ta przejażdżka i pierwsze zetknięcie z modelem jazdy spowodowały, że gdy wróciłem do Jackiego i wsiedliśmy do samochodu coś mi nie zagrało. Po pierwsze Jackie w zasadzie nie kierował pojazdem. Prawie nie wykonywał ruchów rękoma. Sama kierownica ruszała się, ale wykonywała nieproporcjonalnie małe skręty względem faktycznego kąta skrętu samochodu. Kiedy my sami siadamy za kierownicą czuć bardzo mocno to jak samochód jedzie. Skręcasz, ręce naszego bohatera skręcają kierownicą, wykonują szeroki obrót, gdy skręcamy maksymalnie w lewo, czy prawo itd. Wygląda to z grubsza naturalnie. Natomiast będąc pasażerem wyglądało to tak, jakbyśmy obaj (Jackie i nasz bohater) siedzieli w pudełku przypominającym jedynie samochód, które porusza się po ustalonym oskryptowanym torze. Samochód nie zwalniał, nie przyspieszał w naturalny sposób. CO WIĘCEJ odnosiłem bardzo silne wrażenie, że samochód jeździ w dziwaczny sposób. To było wyczuwalne szczególnie podczas brania ostrych zakrętów. Jakbym zamiast siedzieć z przodu długiego samochodu siedział w kabinie koparki, która jest w stanie skręcać 4 kołami powodując obrót całej koparki w miejscu. Rozumiecie o co mi chodzi? Jak macie samochód, skręcacie kołami, tył pojazdu zawsze bierze łuk po nieco mniejszym promieniu. Da się wyczuć, że przód pojazdu skręca ciągnąc za sobą resztę. Kiedy jednak weźmiecie do ręki zwykłego resoraka, nie skręcicie kołami tylko całym resorakiem w sposób zupełnie nienaturalny. Odrobina uważności i się to da dostrzec.

Wówczas zapaliła mi się lampka. To nie był błąd w grze, tylko część głęboko zakorzenionej mechaniki. Wyglądało na to, że Jackie nie posługuje się algorytmem prowadzenia samochodu, który sprawia, że skręcamy kołami o 40 stopni więc samochód skręca trochę w lewo. Wyglądało wręcz na to, że programiści z CDP w ogóle nie stworzyli algorytmów, które łączyłyby zachowanie pojazdu z zachowaniem kierującego, a co gorsza, kształt trasy i zakręty w ogóle nie były połączone bezpośrednio z pojazdem. Miałem wręcz wrażenie jakby na środku pasa jezdni była narysowana niewidoczna linia, której samochód trzymał się jak dwukołowy tramwaj torów. Celowo mówię dwukołowy, bo tramwaj z czterema kołami skręca tak jak samochód, najpierw przód, potem tył, środek po nieco mniejszym łuku niż część z kołami (nieco inaczej niż w samochodach).

Pomyślałem jednak wtedy, że może ilość detali w samochodzie była tak złożona, że nie byli w stanie tego ogarnąć i jazdy jako pasażer oskryptowali w taki sposób, że wsiadamy do oskryptowanego pudełka przypominającego samochód, które sobie sunie przed siebie nie bacząc na kąty zakrętów itd.

JESZCZE SILNIEJ poczułem to na końcu kiedy na parkingu wysiadamy z samochodu, a Jackie odjeżdża w pewnym momencie bierze zakręt w stronę rampy wyjazdowej z parkingu. Samochód obraca się tak nieprawdopodobnie nienaturalnie, że szczena mi opadła.

Wiecie o co mi chodzi? Kiedy jako programista tworzysz algorytm poruszania się samochodu po drodze, taki algorytm, by wyglądać wiarygodnie musi uwzględniać wiele czynników. Długość samochodu, kształt zakrętu, prędkość, szerokość drogi, a nawet kąt maksymalne skrętu pojazdu. Trudno to opisać, ale myślę, że każdy z was byłby w stanie ocenić czy dany sposób chodzenia wirtualnej postaci wygląda naturalnie, czy jest sztuczny i drewniany. Tu jest podobnie.

I wtedy zrozumiałem jedną rzecz. Dostaliśmy grę z miastem, w którym jeździ mnóstwo samochodów i ta gra jest praktycznie całkowicie pozbawiona mechaniki sztucznej inteligencji prowadzącej pojazdy. Pojazdy poruszają się po ściśle określonych narysowanych przez programistów torach. Jeśli taki tor programista narysuje jako zbyt ostry, samochód będzie NADAL się nim poruszał mimo, że jego poruszanie jest kompletnie niezgodne z jakimikolwiek nawet nagiętymi prawami fizyki.

Dowodów na postawioną tezę w grze jest wiele. Niemal każdy z was widział samochody centralnie wjeżdżające w rampy. Samochody o tak naprawdę kartonowe pudełka, które mają swoje wirtualne tory. Jeśli w trakcie projektowania gry w danym miejscu tor był ustawiony w określony sposób i np. przebudowano trasę, dodano jakąś rampę, zwężono drogę, ale zapomniano o przesunięciu wirtualnego toru jazdy, to w takiej sytuacji samochody centralnie wbijają się w rampę. Wówczas aktywuje się co prawda algorytm zniszczeń samochodów, który jest uniwersalnym mechanizmem odpalającym się jako trigger w sytuacji zetknięcia samochodu z jakimś obiektem, ale nic ponad. Samochód nie zatrzymuje się na rampie, ponieważ JEDYNYM wyznacznikiem toru jego jazdy jest wirtualny tor, do którego jest przyspawany. Pamiętacie zabawki z lat 90? Takie samochodziki na torach? No to coś w ten deseń. Nie istnieje tutaj żaden algorytm omijania przeszkód. Droga nie jest traktowana przez pojazd jako pewna całostka w ramach, której pojazd może się poruszać i na której mogą występować przeszkody. Do tego prostego jak budowa cepa algorytmu poruszania się po torowisku (wirtualnym) dodano tylko reagowanie na przeszkodę znajdującą się bezpośrednio w jego obrębie np. nasza postać lub zostawiony samochód. Ale ponieważ nie istnieją żadne inne algorytmy reagowania, a pojazdy są przyspawane do swoich torów, taki pojazd będzie stał i tworzył korek przez wieczność. Wyjątkiem jest tylko sytuacja, w której nasza postać stoi pieszo na zetknięciu dwóch pasów drogowych, wówczas odpala się specjalny skrypt omijania przeszkody, którego wielu graczy w ogóle nie dostrzegło (stąd sądzą do dziś, że go nie ma).

I to tyle. Proste torowiska. Stop, gdy przeszkoda / tor zajęty, jedź gdy tor wolny, jedź bezwzględnie nawet jeśli tor przebiega przez inne elementy świata (to samo patrz w kolejce wjeżdżającej w budynek, latających pojazdach wlatujących w budynki itd.) Do tego wszystkiego dodano prawdopodobnie losowy generator decyzji o skrętach na skrzyżowaniach. Wskocz na dach samochodu i łatwo to zobaczyć. Nie istnieje cel podróży po prostu na każdym skrzyżowaniu decyzja co robić. Problem w tym, że taka prosta konstrukcja świata wygenerowała szereg problemów na autostradach, gdzie nie ma świateł decydujących o tym kto ma pierwszeństwo. Jeśli zbiegiem okoliczności na autostradzie do której dojeżdża droga wlotowa zdarzy się tak, że drogą wlotową (dwupasmową) jadą dwa pojazdy oraz autostradą jadą pojazdy na tej samej pozycji.... co się stanie? Wszystkie pojazdy się zatrzymują. Dlaczego? Bo te na autostradzie chcą jechać prosto. Te dojeżdżające chcą wjechać na autostradę. We wszystkich przypadkach zapala się algorytm o przeszkodzie, więc samochody stoją. Programiści rozwiązali ten problem w taki sposób, że kiedy odwracasz głowę od zdarzenia i spoglądasz ponownie część pojazdów magicznie wyparowuje i mogą rozpocząć dalszą jazdę.

Rozumiecie co to wszystko oznacza? Narzeka się w sieci na brak policji, brak zaawansowanego AI ruchu drogowego. Sęk w tym, że to tak jakby oczekiwać od żółwia, że poleci nad budynkiem. Nie poleci, bo najpierw musiałby stać się ptakiem. Dlaczego policja spawnuje się tylko w postaci pieszej? No właśnie dlatego, że w tej grze nie istnieje zaawansowany system poszukiwania ścieżek. Jest tylko szereg algorytmów poruszania się pojazdów do przodu + kilka wyjątków od tej reguły (czyli dodatkowych algorytmów sytuacyjnych). Jeśli zatem nie istnieje system poszukiwania ścieżek, a drogi dla NPCów nie są drogami tylko torowiskami NIE ISTNIEJE możliwość stworzenia policji, która podejmie za nami pościg. Ta policja nie jest zdolna do znalezienia ścieżki podążania za nami. Ona musiałaby omijać inne pojazdy, spychać je na bok, jeździć pod prąd, omijać czerwone światła itd. NIE ISTNIEJE taka funkcjonalność w tej grze. Drogi to dla NPCów torowiska, a torowiska mają to do siebie, że tam się nikogo nie omija, na torowisku czeka się aż się torowisko zwolni.

Dokładnie te same zasady dotyczą NPCów z tą tylko różnicą, że po natrafieniu na przeszkodę nie zatrzymują się, a losowo zmieniają kierunek.

Rezultatem tych rozważań jest wniosek, iż to nie jest tak, że nie zrobiono zaawansowanego AI policji, bo ktoś nie chciał lub nie miał czasu (to samo tyczy się inteligencji tłumu). Ta gra, w chwili obecnej, w obecnym kształcie rozwiązań czysto technologicznych czysto fizycznie nie pozwala na ogarnięcie tego tematu. Bez przepisania części kodu i zmiany podejścia do kierowania pojazdami przez NPCów nie da się tego zrealizować.

No a stąd prostą drogą dotrzeć można do odpowiedzi na pytanie dlaczego zlikwidowano metro (tudzież zrezygnowano z niego). Wykonanie samego jeżdżącego pudełka nie jest trudne (co pokazuje sposób jeżdżenia pojazdów). Problem w tym, że żeby zrobić metro potrzebny jest bardzo wydajny i bardzo zaawansowany algorytm szukania ścieżek. NPC musi wejść do stacji metra, poczekać na pociąg, zatrzymać się w miejscu na peronie obliczając je tak by na nikogo nie wpaść, nie spaść na tory. W chwili zajechania wagonów musi do nich wejść. Następnie omijając innych dotrzeć do konkretnego siedzenia, usiąść tam, lub dotrzeć do konkretnego miejsca i tam się zatrzymać. Do wszystkich tych czynności potrzebna jest po pierwsze zaawansowana technologia wyszukiwania ścieżek, po drugie zaawansowana algorytmika dla detekcji kolizji, po trzecie algorytmy obierania punktów początkowych i koncowych - NPC nie może krążyć po wagonie jak zoombie, musi tam wejść, pojechać, wyjść, ruszyć dalej.

Wydaje mi się zatem, że CDPowi technologicznie nie udało się zrealizować podstawowej funkcjonalności, dzięki której JAKAKOLWIEK GRA może sprawiać realne wrażenie żywego miasta, w którym coś się dzieje. Jedyne co udało im się wykonać to proste IF'y - trafiasz na przeszkodę stój (samochód), zmień kierunek (pieszy), zniknij (ups nie wiem co robić). Na nic innego nie było ich stać w tej materii i to jest w gruncie rzeczy przykre, bo taka technologia dopiero otwiera drogę do żyjącego miasta. Rutyny dziennie i nocne, AI policji, pościgi, walka o terytoria gangów, porządny ruch uliczny, porządna wersja tłumu. Wszystko to na tę chwilę jest całkowicie nierealizowalne i niemożliwe do wykonania. Co więcej mam wręcz wrażenie, że wszystkie sceny pościgów są RĘCZNIE oskryptowane. Ktoś to chyba nawet testował i choćby nie wiem ile kul władował samochody i pojazdy nas ścigające ZAWSZE wybuchają w ten sam sposób i w tych samych miejscach.

No to jaki jest sens tworzenia otwartego świata, skoro de facto CAŁY ten otwarty świat jest oskryptowany? To tak nie powinno wyglądać. Powinien zostać stworzony potężny algorytmiczny potwór, który pozwalał by oskryptować pościg tak: samochód X jedź za tym pojazdem i strzelaj, wybuchnij kiedy CIę zniszczą. Wtedy każdy taki pościg byłby inny. Zobaczcie na GTA V. Możesz podejmować decyzje rozwalić policję z bazooki bach nie ma pojazdu, strzelać z karabinu: bach goni Cię 10 przecznic itd. Takie podejście ma jedną zasadniczą zaletę: nie wymaga marnowania czasu na ręczne dopieszczanie każdego zakrętu podejmowanego przez pojazdy ścigające nas, to ma robić automat.

To jest największa tragedia tej gry. Oni ją robili tak długo po części przez to że wszystko trzeba było oskryptować ręcznie. Przynajmniej jeśli chodzi o ruch uliczny, a to są naprawdę bardzo czasochłonne historie.

JEŚLI CDP w którejś poprawce wdroży takie funkcjonalności (nie twierdzę, że to się nigdy nie da zrobić, mówię, że jest nierealizowalne w aktualnym kodzie gry), to wiedzcie, że to nie będzie tylko wdrożenie AI policji. To będzie oznaczało, że CDP wykonał NIEPRAWDOPODOBNĄ robotę w kodzie wdrażając bardzo skomplikowane i wydajne algorytmy i dopiero wówczas będzie można powiedzieć, że mamy otwartą drogę do realnego rozwoju tego świata.

Dlaczego tego nie wdrożyli? Myślę, że dlatego że nie potrafili, że muszą "znaleźć" metodę na ogarnięcie tego tematu w swoim silniku. Muszą się tego nauczyć, a nauka to często pisanie modułu po 10 razy by za 10 razem wypracować wersję najbardziej wydajną. Myślę też, że przecenili swoje możliwości, bo takie algorytmy szukające ścieżek i podejmujące decyzje "co robić" na bieżąco to naprawdę bardzo gruba historia. Stąd to, co zrobił Rockstar w GTA V to nie jest byle AI policji. To jest kawał nieziemsko dobrej roboty programistycznej.

=============

Zauważcie też, że w Wiedźminie reakcje tłumu w cale nie są dużo bardziej skomplikowane. Różnice jednak są dwie. Wiedźmin walczy bronią białą, zatem trafia w konkretny cel. Tymczasem w CP77 walczymy bronią palną, a skoro bronią palną to kule latają gdzie bądź. DLATEGO te same reakcje tłumu w CP77 wyglądają jak produkcja opowiadająca o bandzie zoombie zamiast żywym mieście, a w Wiedźminie to jakoś nie kłóło w oczy. Druga sprawa. W Wiedźminie jeździmy konno i chodzimy pieszo. Co można zrobić? Wpaść koniem na pieszego it yle. W CP77 mamy ruch uliczny. Zasady tego ruchu, światła itd. To tak bardzo komplikuje sprawę, że programiści z CDPu po prostu okazali się za słabi na realizację tego. W Wiedźminie jak ktoś jedzie konno to po prostu jedzie i omija sobie przeszkody. Nie ma świateł, krawężników, ramp. To rzecz prosta do realizacji, tymczasem ruch uliczny i jego prawa to zupełnie inna para kaloszy.

Podejrzewam, że gdyby CDPowi jakimś cudem udało się zmienić tę grę tak jak No Man'S Sky podniosło się z kolan... wówczas moglibyśmy liczyć naprawdę na niesamowite doświadczenie żywego miasta, ale... jako programista szczerze w to wątpię. Czemu? Ponieważ uważam (i mogę się tu mylić), że te niedobory silnika gry sięgają aż do jego trzewi. Jeśli jedyną odpowiedzią na problemy z wydajnością jest stworzenie algorytmu masowo uszczuplającego ilość ruchomych elementów gdy jedziemy przez miasto, jeśli odwracamy się o 180 stopni i NPCe się pojawiają / znikają tzn. że nawet z obsługą bazy gry CDP ma potężne problemy. Jakim cudem mamy więc oczekiwać, że programiści z CDPu wdrożą tak skomplikowane algorytmy poszukiwania ścieżek? Z pustego i ... nie naleje...

Dlatego nie wierzę w reformę tej gry, jak również nie wierzę, by kolejna gra AAA stanowiła na rynku rewolucję. To nie jest tak, że CDP to oszuści i wydymali graczy. Jest natomiast tak, że chcieli zrobić coś dużego, ale nie wiedzieli jak. Oni po prostu nie potrafią tworzyć takich dużych gier.

CZOŁEM!

#cyberpunk2077 #cdprojektred #wiedzmin #gry
  • 46
  • Odpowiedz
@deathcoder: Osoby obserwujące bugi, rozgrywkę w cyberpunku od strony technicznej o tym wszystkim wiedzą i nie trzeba być programistą aby dojść do takich wniosków
Mimo wszystko przyznaję że dobrze się czytało i może coś dojdzie do tych osób zapatrzonych w cyberpunka. Choć wątpię :)
  • Odpowiedz
@Antoni_Kosiba: Nie zawsze wiedzą, wielu widzi tylko "brak pewnej oczywistości" ale nie rozumieją, że CDP nie wdrożył jej dlatego że po prostu nie potrafili tego właściwie napisać od strony koderskiej. A to pozwala nieco zmienić podejście od strony krytyka.

To jest w ogóle bardzo ciekawy temat. Rockstar w GTA V zrobił kawał nieziemsko dobrej roboty. PARADOKSALNIE tu nie chodzi o jakieś skomplikownae algorytmy - żaden normalny komputer nie udźwignie setek tysięcy ifów na sekundę. Chodzi raczej o znalezienie sprytnego rozwiązania problemu. Coś jak: nie możesz dostać się na dach pakamerki? Nie buduj windy. Postaw drabinę. To powinno działać trochę tak jak skanowanie pola widzenia w grach typu Desperados. Idzie postać i algorytm cały czas "pinguje" rzeczywistość dookoła i gdy na coś trafia wykonuje określoną czynność. Potem powstaje oczywiście szereg problemów: jak daną czynosć wykonać tak by wyglądało to wiarygodnie.

CDP chyba w kńcu doszedł do wnisoku że lepiej wszystko na sztywno oskryptować niż męczyć się z AI. Zmarnowali pewnie kupę czasu na dziesiątki prób napisania dobrego algorytmu AI i koniec końców w ostatniej chwili wyrzucili to do kosza i napisali zastępstwo w postaci tego co mamy. Zoombie, ale przynajmniej działa w sposób z grubsza
  • Odpowiedz
Nie obraź się ale dła ułatwienia dyskusji rozbiję twój post na dwa odzielne tematy - metro i AI potrzebne do obsługi oraz AI kierowców. Tak będzie łatwiej się dyskutowało a podejrzewam, że będziesz chciał bronić swoich argumentów. Najpierw metro:

No a stąd prostą drogą dotrzeć można do odpowiedzi na pytanie dlaczego zlikwidowano metro (tudzież zrezygnowano z niego). Wykonanie samego jeżdżącego pudełka nie jest trudne (co pokazuje sposób jeżdżenia pojazdów). Problem w tym, że żeby zrobić metro potrzebny jest bardzo wydajny i bardzo zaawansowany algorytm szukania ścieżek. NPC musi wejść do stacji metra, poczekać na pociąg, zatrzymać się w miejscu na peronie obliczając je tak by na nikogo nie wpaść, nie spaść na tory. W chwili zajechania wagonów musi do nich wejść. Następnie omijając innych dotrzeć do konkretnego siedzenia, usiąść tam, lub dotrzeć do konkretnego miejsca i tam się zatrzymać. Do wszystkich tych czynności potrzebna jest po pierwsze zaawansowana technologia wyszukiwania ścieżek, po drugie zaawansowana algorytmika dla detekcji kolizji, po trzecie algorytmy obierania punktów początkowych i koncowych - NPC nie może krążyć po wagonie jak zoombie, musi tam wejść, pojechać, wyjść, ruszyć dalej.


@deathcoder: totalnie się nie zgodzę. Wszystko to o czym piszesz jest już w grze. Są przystanki metra, gdzie NPC kręcą się oczekując na przyjazd pociągu. Siedzą na ławkach, stoją przy automatach, wyczekują. Pociąg metra przejeżdża torami przez stację ale się nie
pablo397 - Nie obraź się ale dła ułatwienia dyskusji rozbiję twój post na dwa odzieln...
  • Odpowiedz
@deathcoder: Mnie zastanawia co innego. Dlaczego przy tak dużych zasobach wszystkiego(czasu, pieniedzy, ludzi)
Nie byli w stanie stworzyć odpowiednich narzędzi. Nie chce mi się wierzyć, że dopiero po rozpoczęciu prac nad cyberpunkiem zorientowali się, że brakuje im kluczowych elementow. Mogli nad tym pracować długo przed cyberpunkiem ale z niewiadomych przyczyn nie zrobili tego.

ciekawostka w 2017 roku dołączył do nich głowny programista twórca Redengine ale po roku odszedł i wrócił
  • Odpowiedz
@deathcoder: bez urazy, ale do twoich wniosków nie potrzeba 15 lat doświadczenia w kodzeniu. Oczywiście się zgadzam, przy bliższej obserwacji widać jak samochody jeżdżą jak po szynach. Kilka z tych linii było tak niechlujnie skonstruowanych, że pojazdy wjeżdżały w elementy otoczenia.

Ale to o czym mówisz to implementacja. Ta gra jest #!$%@? już na poziomie projektu. Np. UI, bronie, zbroje, walka, zadania i nagrody. Np. zadanie z Delamainem, tymi taksówkami.
  • Odpowiedz
@pablo397: Nie wiem, czy czegokolwiek chcę bronić, bo to co opisałem to szereg przypuszczeń opartych na tym, co widzę i czego domniemuję bazując na swoich doświadczeniach.

Od strony koderskiej różnica między kodem, który sprawia, że NPC idzie przed siebie oraz natrafiając na przeszkodę zmienia kierunek, a kodem, który ma spowodować, że NPC omijając przeszkody dotrze z punktu A do B jest jak między światełkami choinkowymi, które włączasz do kontaktu i świecą, a światełkami choinkowymi, które mają mikrofon dzięki któremu nasł#!$%@?ą to co się dzieje wokół i za pomocą oprogramowania przetwarzają słyszane dźwięki na zmiany sposobu świecenia światełek. Pierwsze nie wymaga w ogóle układu scalonego tudzież wymaga tylko kilku podstawowych układów elektrycznych zmiany napięcia. Drugie wymaga krzemu z oprogramowaniem przetwarzającym dźwięk.

To, że Ty widzisz pasażerów "wyczekujących" nie oznacza, że oni na cokolwiek czekają. Oni tam są sprawiając dobre wrażenie. Tymczasem od tego miejsca, do takiego zbudowania ich AI, by mogli wejść do pociągu i zająć określone miejsca jest baaaaaaardzo daleka
  • Odpowiedz
@deathcoder: Tajemnicą Poliszynela jest to, że CDP zatrudniał do tego osoby bez dużych kwalifikacji łagodnie rzecz ujmując. Czego naprawdę nie mogę zrozumieć bo z takim budżetem stać ich było na stworzenie porządnego AI a nie prowadzenie wszystkiego po prymitywnych liniach, gdzie obiekty mają nawet problem do ponownego trafienia na daną linię. Czytając twój wpis wyobrażam dosłownie widzę, jak pracownicy mozolnie oskryptowuja całe miasto zamiast stworzyć jakiś skrawek inteligencji.
  • Odpowiedz
@Chlebek_Pyszny: nie jestem pewien, czy to tak było wiesz?

Spójrz na to od tej strony. Wyobraź sobie, że masz firmę która robi gry. Gdzie będziesz szukał programistów i grafików? Pytam poważnie. Programistę PHP znajdziesz na każdym rogu ulicy, z javą ciupek gorzej, ale zdolniachę od takich rzeczy jak gry uBI? 99% tych dobrych z doświadzeniem ma już pracę. Ty nie masz nic. Doświadczenia, managerów. NIC. Nawet doświadczonego kierownika zespołu. JEŚLI mam rację (podkreślam JEŚLI, bo to co pisałem to domniemania) to I TAK to co im się udało to kawał niezłej gry.

Uda Ci się podebrać konkurencji ilu pracowników? 5? ze 100 potrzebnych? Obawiam się, że w tej branży można uczyć się tylko na własnych
  • Odpowiedz
@deathcoder: bardzo ciekawe spostrzeżenia i bardzo trafne. Zastanawiam się tylko jak to jest ze w dużo prostszych produkcjach typu np pierwsza Mafia udało się zrobić i pociągi do których wsiadają NPC i żywe omijające przeszkody pojazdy. Czy to po prostu mniejszy swiat i tam jest wszystko oskryptowane i sprawia tylko wrażenie żywego? Wydawałoby się ze już dawno prostsze gry mają to ogarnięte.
  • Odpowiedz
@kaspe: Z tego co kojarzę w Mafii 1 cały świat był jednym wielkim skryptem. W sensie robiąc misje natykałeś się w tym samym momencie na te same samochody, npców i sytuację. Mogę się mylić, ale coś takiego słyszałem
  • Odpowiedz
Tajemnicą Poliszynela jest to, że CDP zatrudniał do tego osoby bez dużych kwalifikacji łagodnie rzecz ujmując.


@Chlebek_Pyszny: Kijanu nie jest tani, ogólnie na marketing wydali pewnie kilka razy więcej niż na produkcje i to widać.
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@deathcoder: boże stary, to samo myślałem o tych algorytmach jak widziałem te animacje pojazdów. Super to opisłeś, rockstar odwalił kawał mega roboty, dlatego ich świat jest tak imersyjny. Jedynie pociągi tam jadą po ścieżce, wiem bo bawiłem sie modowaniem tego ;)
  • Odpowiedz