• サぺルOP
    link
    fedilink
    Polski
    arrow-up
    1
    ·
    4 months ago

    Jak na gamedev ten kod wydaje się normalny.

    • naurM
      link
      fedilink
      Polski
      arrow-up
      1
      ·
      edit-2
      4 months ago

      Pewnie dlatego, że autorzy nie byli purystami i nie stosowali wszystkich technik programowania obiektowego.
      Myślę, że niejeden korporacyjny programista nie przepuściłby przez code review kodu, który ma switch-case zastępujący hierarchię obiektów. :-)

      Swoją drogą, na początku nie mogłem uwierzyć, że ktoś w kilka lat odtworzył tak złożony projekt.
      Zacząłem szukać informacji na ten temat i oczywiście okazało się, że GTA 3 zaliczyło wyciek symboli do portów na Androida i PS2.
      Czyli w sumie ta sama historia jak w przypadku Diablo i Tomb Raidera.

      • サぺルOP
        link
        fedilink
        Polski
        arrow-up
        1
        ·
        4 months ago

        Ja bardziej liczyłem na jakieś DDD lub ECS. Twoje spostrzeżenie też jest trafne. Nawet w komentarzach pisali, że wydaje się czytelne.

        Dziękuję za uzupełnienie historii powstania tego kodu.

    • Lacky
      link
      fedilink
      arrow-up
      1
      ·
      3 months ago

      Później Rockstar nadrobił ;-) Popełnili takiego Red Dead Redemption 1, gdzie sami deweloperzy wspominali o takim burdelu w kodzie, że sami byli w szoku, że to jakkolwiek działało. Chyba do tej pory można znaleźć w necie kompilacje błędów, które nigdy nie zostały naprawione.

      • サぺルOP
        link
        fedilink
        Polski
        arrow-up
        1
        ·
        3 months ago

        Czy nie każdy dev tak mówi o swoim starym kodzie? Z drugiej strony filozofujący ludzie z gamedevu zawsze opowiadają, że produkcja gry to dość dynamiczne działanie. To był jeden z argumentów o tym czemu się tam nie sprawdza Rust. Bo wymaga jasno zdefiniowanych projektów.