Sviluppato da | Valve Corporation |
---|---|
Ultima versione | Source Engine 24/2021 |
Scritto in | C ++ |
Sistema operativo | Microsoft Windows , Linux , SteamOS , macOS e Android |
Ambiente |
Microsoft Windows Apple macOS GNU / Linux PlayStation 3 Xbox Xbox 360 Xbox One Android |
Le lingue | Multilingue |
genere | Motore di gioco |
Licenza | Proprietario |
Sito web | source.valvesoftware.com |
Cronologia delle versioni
Source è un motore di gioco 3D di Valve Software e utilizzato dal 2004 per le sue esigenze di gioco. È un motore completo che supporta grafica, audio, rete e fisica. Questa tecnologia viene offerta anche ad altre società, o agli sviluppatori dilettanti attraverso la fornitura di un kit di sviluppo .
Il Source Engine è derivato dal motore di gioco GoldSource ( Half-Life ), essendo esso stesso una riprogettazione del motore id Tech 2 ( Quake e Quake 2 ) sviluppato da John Carmack . Quest'ultimo annunciò nel 2004 sul suo blog che il codice di Half-Life 2 conteneva ancora elementi di Quake. Erik Johnson, un dipendente di Valve, ha dettagliato la nomenclatura del motore nella Comunità di sviluppatori di Valve:
Dato che eravamo vicini al rilascio di Half-Life (più o meno una settimana), avevamo già altri progetti su cui dovevamo iniziare a lavorare, ma non potevamo rischiare di controllare questo nuovo codice nella versione finale del gioco. Da questo punto in poi, abbiamo biforcato in VSS per ottenere i rami /$Goldsrce /$Src. Negli anni successivi, abbiamo utilizzato internamente i termini "Goldsource" e "Source" per qualificare questi due rami. Inizialmente, il ramo Goldsrc del codice si riferiva alla base che era già stata rilasciata e Src si riferiva alle prossime tecnologie rischiose su cui stavamo lavorando. Quando siamo arrivati a presentare Half-Life 2 per la prima volta all'E3, faceva parte della nostra comunicazione interna fare riferimento al motore "Source" invece che al motore "Goldsource", e il nome è rimasto bloccato.
Source è stato sviluppato pezzo per pezzo da quella forcella e ha gradualmente sostituito GoldSrc per i progetti interni di Valve, il che è parte del motivo per cui il motore è particolarmente modulare. Lo sviluppo del motore è il risultato di un mix tra l'integrazione di middleware con licenza e codice interno. La fonte, ad esempio, utilizza Bink Video per riprodurre i video.
Source è stato progettato, a differenza dei motori concorrenti, per evolversi in modo incrementale con le nuove tecnologie. I diversi componenti del motore possono essere aggiornati in modo indipendente senza influire effettivamente sugli altri moduli e distribuiti automaticamente a tutti gli utenti tramite Steam. Nella maggior parte dei casi, non è necessario rielaborare il progetto in esecuzione su Source per applicare questi aggiornamenti, tuttavia la pratica ha dimostrato che alcuni aggiornamenti importanti hanno interrotto questa catena di compatibilità. Il rilascio di Half-Life 2: Episode One e The Orange Box ha portato ciascuno una nuova versione del motore che poteva essere utilizzata solo su giochi o mod più vecchi se gli sviluppatori avevano precedentemente lavorato sul porting del codice e del contenuto. Sebbene questo lavoro di conversione sia molto più leggero rispetto alle modifiche alla versione dei motori concorrenti, rappresentava comunque un carico di lavoro significativo per sviluppatori o modder.
Da quando la prima versione di Source è stata rilasciata nel 2004, sono stati effettuati i seguenti aggiornamenti principali:
Fonte 2006Il ramo Source 2006 riunisce le tecniche avanzate utilizzate da Valve in Half-Life 2: Episode One . Il rendering HDR e la correzione del colore sono stati implementati per la prima volta in Day of Defeat: Source , che ha richiesto la riscrittura del modulo shader del motore. Queste innovazioni sono state presentate insieme al feedback degli sviluppatori in Half-Life 2: Lost Coast . Episode One ha introdotto l'ombreggiatura phong e altre piccole funzionalità. Dopo il passaggio a Steam Pipe, questo ramo è ora deprecato e viene utilizzato per la sua compatibilità con le versioni precedenti.
Fonte 2007Il ramo Source 2007 è un aggiornamento completo del motore realizzato per il rilascio di Orange Box . Un sistema completo di particelle ha sostituito gli effetti che erano stati precedentemente incorporati direttamente nel codice per i giochi che utilizzavano una versione precedente del motore. Sono stati creati un framework e strumenti per supportare questo sistema così come le prime versioni di Source Filmmaker. Inoltre, il sistema di animazione facciale è stato migliorato per supportare l'accelerazione hardware delle moderne schede grafiche e consentire una qualità superiore. Il rilascio di Orange Box su più supporti è stata un'opportunità per rivedere in modo significativo il codice al fine di includere il supporto per microprocessori multi-core .
Tuttavia, la versione per PC era sperimentale e instabile fino al rilascio di Left 4 Dead . Il supporto CPU multi-core è stato successivamente portato su Team Fortress 2 e Counter-Strike: Source e Day of Defeat: Source .
Valve era responsabile della creazione della versione Xbox 360 dell'Orange Box . Il supporto della console è completamente integrato con il codice motore. Ciò include convertitori di contenuto, multipiattaforma e integrazione Xbox Live. Il codice di gioco può essere trasferito da PC a Xbox 360 semplicemente ricompilandolo.
Il port della versione per PlayStation 3 è stato affidato a Electronic Arts ed è stato afflitto da numerosi problemi durante la transazione.
Left 4 Dead e Portal 2 branchQuesto ramo è stato il risultato di una revisione completa del motore in seguito allo sviluppo della serie di giochi Left 4 Dead . Il supporto della CPU multi-core è stato esteso consentendo lo sviluppo di nuove funzionalità come il multiplayer a schermo diviso , l'aggiunta di ulteriori effetti di post-elaborazione , l'uso di script codificati da Squirrel e l'implementazione dell'intelligenza artificiale dinamica con AI Director . Questo ramo ha rivisto l'implementazione dei menu di gioco e consente l'utilizzo di un formato più accessibile alle console di gioco . Questi miglioramenti hanno poi permesso la realizzazione di Alien Swarm e Portal 2 , gioco che ha beneficiato maggiormente delle evoluzioni di questo ramo. Portal 2 è stato anche il risultato della nuova politica di Valve di occuparsi ora internamente del problema del porting dei giochi per Playstation 3 , reso più semplice grazie a questo nuovo ramo. Questa versione beneficia dell'integrazione di Steamworks ed è, secondo Valve , la migliore versione per console del gioco.
Fonte 2013: supporto per MacOS e LinuxNel aprile 2010Valve ha ripubblicato tutti i suoi principali titoli Source su OS X , in coincidenza con l'uscita di Steam sulla stessa piattaforma. L'editore ha annunciato allo stesso tempo che ora tutti i suoi giochi futuri saranno disponibili simultaneamente su Windows e Mac . Il primo gioco di Valve a supportare Linux è stato Team Fortress 2 insieme al rilascio della prima beta chiusa di Steam per Linux in formatoottobre 2012. Le varianti Linux e OS X sono entrambe basate su tecnologie OpenGL e SDL . Durante il port, Valve ha riorganizzato la maggior parte dei suoi giochi in rami separati ma paralleli: single player e multiplayer. Il codice per questi due rami è stato reso disponibile agli sviluppatori nel 2013 e sono attualmente le ultime versioni pubbliche stabili del motore di origine. Questo ramo supporta il sistema di distribuzione Steam Pipe e Oculus Rift .
Fonte 2Dopo la GDC 2015, Valve annuncia lo sviluppo di Source 2, il seguito del suo primo motore obsoleto. Source 2 sarà gratuito per gli sviluppatori di contenuti, purché il loro gioco sia sulla piattaforma di gioco Steam , prodotta da Valve .