Źródło (silnik gry) - Source (game engine)

Źródło
Logo silnika źródłowego i wordmark.svg
Deweloper(zy) Zawór
Pierwsze wydanie czerwiec 2004 ; 17 lat temu ( 2004-06 )
Napisane w C++
Oprogramowanie pośredniczące
Poprzednik GoldSrc
Następca Źródło 2
Licencja Prawnie zastrzeżony

Source to silnik gry 3D opracowany przez Valve . Zadebiutował jako następca GoldSrc z Half-Life: Source w czerwcu 2004 roku, a wkrótce potem pojawiły się Counter-Strike: Source i Half-Life 2 w listopadzie i od tego czasu jest aktywnie rozwijany. Źródło nie ma zwięzłego schematu numerowania wersji ; zamiast tego jest zaprojektowany w ciągłych, przyrostowych aktualizacjach. Silnik zaczął być wycofywany pod koniec 2010 roku, a jego następcą został Source 2 .

Historia

Źródło odlegle pochodzi z GoldSrc silnika, sam mocno zmodyfikowana wersja John Carmack „s silniku Quake z kodem z silnika Quake II . Carmack skomentował na swoim blogu w 2004 roku, że " w Half-Life 2 wciąż są fragmenty wczesnego kodu Quake'a ". Pracownik Valve, Erik Johnson, wyjaśnił nazewnictwo silnika na społeczności Valve Developer Community:

Kiedy zbliżaliśmy się do wydania Half-Life (mniej niż tydzień), stwierdziliśmy, że było już kilka projektów, nad którymi musieliśmy zacząć pracować, ale nie mogliśmy ryzykować sprawdzania kodu do wersji wysyłkowej gra. W tym momencie rozwidliliśmy kod w VSS na oba /$Goldsrci /$Src. W ciągu następnych kilku lat używaliśmy tych terminów wewnętrznie jako „Goldsource” i „Source”. Przynajmniej początkowo gałąź kodu Goldsrc odnosiła się do aktualnie wydanej bazy kodu , a Src odnosiła się do następnego zestawu bardziej ryzykownych technologii, nad którymi pracowaliśmy. Kiedy po raz pierwszy zaprezentowano Half-Life 2 na E3 , częścią naszej wewnętrznej komunikacji było odniesienie się do silnika „Source” w porównaniu z silnikiem „Goldsource” i nazwa utknęła.

Source był rozwijany stopniowo, począwszy od tego rozwidlenia, powoli zastępując GoldSrc w wewnętrznych projektach Valve i częściowo wyjaśniając powody jego niezwykle modułowej natury. Rozwój Source przez Valve był od tego czasu mieszanką licencjonowanego oprogramowania pośredniczącego i własnego kodu. Między innymi Source używa Bink Video do odtwarzania wideo.

Modułowość i godne uwagi aktualizacje

Source został stworzony, aby ewoluować stopniowo wraz z nową technologią, w przeciwieństwie do wstecznej kompatybilności - łamiącej "skoki wersji" konkurentów. Różne systemy w Source są reprezentowane przez oddzielne moduły, które mogą być aktualizowane niezależnie. Dzięki Steam , Valve może automatycznie rozpowszechniać te aktualizacje wśród wielu swoich użytkowników. W praktyce jednak zdarzały się sporadyczne przerwy w tym łańcuchu kompatybilności. Wydanie Half-Life 2: Episode One i The Orange Box wprowadziły nowe wersje silnika, których nie można było używać do uruchamiania starszych gier lub modów bez aktualizacji kodu i, w niektórych przypadkach, zawartości przez deweloperów. Oba przypadki wymagały znacznie mniej pracy, aby zaktualizować jego wersję niż konkurencyjne silniki.

Źródło 2006

Gałąź Source 2006 była terminem używanym do gier Valve wykorzystujących technologię, której kulminacją było wydanie Half-Life 2: Episode One . Renderowanie HDR i korekcja kolorów zostały po raz pierwszy zaimplementowane w 2005 roku przy użyciu Day of Defeat: Source , co wymagało przepisania shaderów silnika. Ten pierwszy, wraz z komentarzami deweloperów, został zaprezentowany w Half-Life 2: Lost Coast . Odcinek pierwszy wprowadził cieniowanie Phong i inne mniejsze funkcje. Technologia renderowania opartego na obrazach była opracowywana dla Half-Life 2 , ale została usunięta z silnika przed jego wydaniem. Gabe Newell ponownie wspomniał o tym w 2006 roku jako o technologii, którą chciałby dodać do Source, aby zaimplementować obsługę znacznie większych scen, które są niemożliwe z obiektami ściśle wielokątnymi .

Źródło 2007

Gałąź Source 2007 reprezentowała pełną aktualizację silnika Source dla wydania The Orange Box . Kierowany przez artystów, wątkowy system cząsteczek zastąpił wcześniej zakodowane na sztywno efekty we wszystkich grach. Aby go wspierać, stworzono ramy narzędzi w procesie , które wspierały również początkowe wersje Source Filmmaker . Ponadto system animacji twarzy został wyposażony w akcelerację sprzętową na nowoczesnych kartach graficznych w celu uzyskania jakości „filmów fabularnych i programów telewizyjnych”. Wydanie The Orange Box na wiele platform pozwoliło na dużą refaktoryzację kodu , co pozwoliło silnikowi Source na wykorzystanie wielu rdzeni procesora. Wsparcie na PC było jednak eksperymentalne i niestabilne do czasu premiery Left 4 Dead . Obsługa multiprocesorów została później przeniesiona do Team Fortress 2 i Day of Defeat: Source . Valve stworzyło wydanie The Orange Box na konsolę Xbox 360 we własnym zakresie, a obsługa konsoli jest w pełni zintegrowana z głównym kodem silnika. Obejmuje konwertery zasobów, grę międzyplatformową i integrację z usługą Xbox Live . Kod programu można przenieść z komputera na konsolę Xbox 360, po prostu go rekompilując. Wydanie na PlayStation 3 zostało zlecone firmie Electronic Arts i przez cały proces było nękane problemami. Gabe Newell powoływał się na te kwestie, krytykując konsolę podczas premiery The Orange Box .

Lewa 4 martwa gałąź

The Left 4 Dead oddział jest remont wielu aspektach silniku Source poprzez rozwój Left 4 Dead serii . Obsługa multiprocesorów została dodatkowo rozszerzona, pozwalając na takie funkcje, jak tryb wieloosobowy na podzielonym ekranie, dodatkowe efekty post-processingu, skryptowanie zdarzeń za pomocą Squirrel i wysoce dynamiczny AI Director . Interfejs menu został ponownie zaimplementowany z nowym układem zaprojektowanym tak, aby był bardziej zorientowany na konsolę. Ta gałąź później napędzała wydania Alien Swarm i Portal 2 , poprzednie wydane z kodem źródłowym opisującym wiele zmian wprowadzonych od początku gałęzi. Portal 2 w dodatku posłużył jako wynik samodzielnego podjęcia przez Valve problemu przeniesienia na PlayStation 3, a w połączeniu z integracją ze Steamworks stworzyło to, co nazwali „najlepszą konsolową wersją gry”.

Obsługa systemów OS X, Linux i Android

W kwietniu 2010 Valve wydało wszystkie swoje główne gry Source na OS X , co zbiegło się z wydaniem klienta Steam na tej samej platformie. Valve ogłosiło, że wszystkie ich przyszłe gry zostaną wydane jednocześnie na systemy Windows i Mac. Pierwszą z gier Valve obsługujących Linuksa był Team Fortress 2 , port wydany w październiku 2012 roku wraz z zamkniętą betą wersji Steam na Linuksa. Oba porty silnika dla OS X i Linux wykorzystują OpenGL i są zasilane przez Simple DirectMedia Layer . Podczas procesu portowania Valve przeorganizowało większość gier wydanych do The Orange Box na oddzielne, ale równoległe gałęzie „singleplayer” i „multiplayer”. Kod gry do tych gałęzi został upubliczniony twórcom modów w 2013 roku i służą one jako aktualna stabilna wersja Source przeznaczona dla modów. Obejmuje wsparcie dla wewnętrznego systemu dystrybucji rur parowych Valve, a także Oculus Rift . W maju 2014 roku Nvidia wypuściła porty Portal i Half-Life 2 na swoją podręczną konsolę do gier Nvidia Shield z systemem Android, opartą na Tegra 4 .

Narzędzia i zasoby

Źródłowy pakiet SDK

Source SDK to zestaw do tworzenia oprogramowania dla silnika Source i zawiera wiele narzędzi używanych przez Valve do tworzenia zasobów do swoich gier. Zawiera kilka programów wiersza poleceń przeznaczonych do specjalnych funkcji w potoku zasobów, a także kilka programów opartych na graficznym interfejsie użytkownika, zaprojektowanych do obsługi bardziej złożonych funkcji. Source SDK został uruchomiony jako darmowy samodzielny zestaw narzędzi przez Steam i wymagał zakupu gry Source na tym samym koncie. Od czasu wydania Left 4 Dead pod koniec 2008 roku Valve zaczęło wypuszczać „Narzędzia autorskie” dla poszczególnych gier, które stanowią te same programy dostosowane do silnika każdej gry. Po tym, jak Team Fortress 2 stał się darmowy, Source SDK został skutecznie udostępniony wszystkim użytkownikom Steam. Kiedy niektóre gry Source zostały zaktualizowane do wersji Source 2013, starsze pakiety Source SDK zostały wycofane. Trzy wymienione poniżej aplikacje są teraz dołączone do instalacji każdej gry.

W Source SDK znajdują się trzy aplikacje: Hammer Editor, Model Viewer i Face Poser. Model Viewer to program, który umożliwia użytkownikom przeglądanie modeli i może być używany do różnych celów, w tym rozwoju. Programiści mogą używać programu do przeglądania modeli i odpowiadających im animacji, punktów mocowania, kości i tak dalej. Face Poser to narzędzie służące do uzyskiwania dostępu do animacji twarzy i systemów choreografii. To narzędzie pozwala edytować mimikę twarzy , gesty i ruchy postaci, mowę zsynchronizowaną z ustami, mimikę sekwencji i inne wskazówki aktorskie oraz podglądać, jak scena będzie wyglądać w silniku gry.

Edytor młota

Edytor Hammer, oficjalny edytor poziomów silnika , wykorzystuje narzędzia do renderowania i kompilacji zawarte w SDK do tworzenia map przy użyciu metody binarnego partycjonowania przestrzeni (BSP). Narzędzie było pierwotnie edytorem GoldSrc znanym jako Worldcraft i zostało opracowane niezależnie przez Bena Morrisa, zanim Valve je nabyło.

Geometria poziomu jest tworzona za pomocą wielokątów 3D zwanych pędzlami, każda ściana może mieć przypisaną teksturę, która definiuje również właściwości powierzchni, takie jak dźwięki używane do kroków. Twarze można również przekształcić w przemieszczenie, co pozwala na tworzenie bardziej naturalnych kształtów, takich jak wzgórza.

Obiekty scenerii lub złożoną geometrię można importować jako oddzielne modele 3D z katalogu gry. Modele te mogą być również używane jako obiekty fizyczne lub interaktywne rekwizyty.

Edytor zawiera również rozbudowany logiczny system I/O , który można wykorzystać do tworzenia złożonych elementów interaktywnych. Sygnały wyzwalające różne reakcje lub zmieniające stan jednostki mogą być przesyłane między jednostkami, takimi jak przyciski, NPC , niematerialne pędzle wyzwalające i rekwizyty mapy.

Źródłowy serwer dedykowany

Źródło Serwer dedykowany (srcds) jest samodzielnym wyrzutnia dla silniku Source, która prowadzi sesje multiplayer gry bez potrzeby klienta. Może być uruchamiany za pośrednictwem systemu Windows lub Linux i może umożliwiać niestandardowe poziomy i zasoby. Większość serwerów firm trzecich dodatkowo uruchamia Metamod:Source i SourceMod, które razem zapewniają ramy dla SRCDS dla niestandardowych modyfikacji rozgrywki w istniejących tytułach.

Źródło Filmowiec

Source Filmmaker (SFM) to aplikacja do przechwytywania i edycji wideo, która działa z poziomu silnika Source. Opracowane przez Valve narzędzie pierwotnie służyło do tworzenia filmów dla Day of Defeat: Source i Team Fortress 2 . Wykorzystano go również do stworzenia zwiastunów gier na silniku Source. Oprogramowanie zostało udostępnione publicznie w 2012 roku.

Destynacje Narzędzia warsztatowe

W czerwcu 2016 r. Valve wypuściło Destinations Workshop Tools, zestaw darmowych narzędzi do tworzenia wirtualnej rzeczywistości (VR) działających przy użyciu Source 2 SDK.

Społeczność deweloperów Valve

W czerwcu 2005 Valve otworzyło wiki Valve Developer Community (VDC) . VDC zamieniło dokumentację Valve's Source SDK na pełną witrynę społeczności opartą na MediaWiki ; w ciągu kilku dni Valve poinformowało, że „liczba przydatnych artykułów prawie się podwoiła”. Te nowe artykuły dotyczyły wcześniej nieudokumentowanego bota Counter-Strike: Source , sztucznej inteligencji postaci niezależnych od Valve , porad dla zespołów modów na temat konfigurowania kontroli źródła i innych artykułów.

Dokumenty naukowe

Pracownicy Valve od czasu do czasu publikowali profesjonalne i/lub akademickie artykuły na różne wydarzenia i publikacje, w tym SIGGRAPH , Game Developer Magazine i Game Developers Conference , wyjaśniające różne aspekty rozwoju silnika Source.

Gry korzystające ze źródła

Titanfall , Titanfall 2 i Apex Legends nie są uwzględnione, ponieważ ich silniki, choć pierwotnie oparte na Source SDK, wprowadzają poważne zmiany, które skutecznie je wyróżniają.

Rok Tytuł Deweloper(zy) Wydawcy
2004 Counter-Strike: Źródło Zawór Zawór
Okres półtrwania 2
Vampire: The Masquerade – Bloodlines Gry Trojka Aktywacja
Half-Life 2: Deathmatch Zawór Zawór
Okres półtrwania: źródło
2005 Dzień Porażki: Źródło
Half-Life 2: Zaginione Wybrzeże
2006 Deathmatch Half-Life: Źródło
Half-Life 2: Odcinek pierwszy
Mod Garry'ego Studio Facepunch
Odcinki SiN Rytualna rozrywka Rytualna rozrywka
Mroczny Mesjasz Mocy i Magii Arkane Studios Ubisoft
Statek Światło zewnętrzne Mindscape (UE), Merscom (NA)
Kuma\Wojna Gry Kuma Rzeczywistość Gry Kuma Rzeczywistość
2007 Half-Life 2: Odcinek drugi Zawór Zawór
Team Fortress 2
Portal
Dystopia Zespół Dystopia, Puny Human chudy człowiek
Rebelia: nowoczesna walka piechoty Zespół Rozwoju Rebelii Interaktywny Nowy Świat
2008 Pozostawiono 4 martwe Zawór Zawór
2009 Lewo 4 Martwe 2
Starcie Zenona Zespół ACE Iceberg Interactive , Tripwire Interactive
NeoTokio Studio Radi-8 NEOTOKIO
2010 Cholernie dobry czas Światło zewnętrzne Ubisoft
Vindictus devCAT Nexon
EYE: Boska Cybermancy Strum na Studio Strum na Studio
Obcy rój Zawór Zawór
2011 Portal 2
Nie ma więcej miejsca w pielke Koniec z miejscem w Hell Team Gry dźwigni
Nuklearny Świt InterWave Studios Iceberg Interactive
Poczta III Trashmasters, bieganie z nożyczkami Akella
Dino D-Day 800 Północ, cyfrowe ranczo 800 Północ, cyfrowe ranczo
2012 Droga Esther Pokój Chiński Krzywa cyfrowa
Counter Strike globalna ofensywa Valve , Ukryta Ścieżka Rozrywka Zawór
Hybrydowy 5. komórka Microsoft Studios
Rewelacje 2012 Dark Artz Rozrywka Dark Artz Rozrywka
2013 Interwencja taktyczna NAPRAW Korea OGplaneta
Przypowieść Stanleya Galaktyczna Kawiarnia Galaktyczna Kawiarnia
Counter-Strike: Online 2 Nexon Nexon
Dota 2 Zawór Zawór
2014 Symfonia ostrzy chudy człowiek chudy człowiek
Konsorcjum Gry międzywymiarowe Gry międzywymiarowe
Zakażenie Monochromia Monochromia
Powstanie przeciw władzy Interaktywny Nowy Świat Interaktywny Nowy Świat
Znacznik przysłony Zespół znaczników Aperture Zespół znaczników Aperture
Garść fragów Garść Frags Team Garść Frags Team
2015 Historie portalowe: Mel Studio pryzmatyczne Studio pryzmatyczne
Przewodnik dla początkujących Wszystko bez ograniczeń Wszystko bez ograniczeń
2016 Infra Loiste Interactive Loiste Interactive
2017 Dzień Niesławy Interaktywny Nowy Świat Interaktywny Nowy Świat
2020 Czarna Mesa Łom zbiorowy Łom zbiorowy
G Ciąg Eyaura Oprogramowanie LunchHouse

Źródło 2

Source 2 , następca Source, został ogłoszony przez Valve na Game Developers Conference w marcu 2015 roku. Tam Valve oświadczył, że będzie darmowy dla programistów, z obsługą graficznego API Vulkan , a także z użyciem nowego w -domowy silnik fizyki o nazwie Rubikon. W czerwcu 2015 Valve ogłosiło, że Dota 2 , pierwotnie stworzona w silniku Source, zostanie przeniesiona do Source 2 w aktualizacji o nazwie Dota 2 Reborn . Reborn został po raz pierwszy udostępniony publicznie jako dobrowolna aktualizacja beta w tym samym miesiącu, zanim oficjalnie zastąpiono oryginalnego klienta we wrześniu 2015 roku, co czyni ją pierwszą grą korzystającą z silnika. Source 2 zastąpiło oryginalny silnik pod koniec 2010 roku, a Valve wypuściło kilka gier, które go używały.

Zobacz też

Uwagi

Bibliografia