Source Engine 2 girerà su Vulkan

Source Engine 2 girerà su Vulkan

Valve supporterà Vulkan con il suo nuovo motore grafico. Si tratta delle API che raccolgono il testimone delle OpenGL.

di Rosario Grasso pubblicata il , alle 16:01 nel canale Videogames
Steam
 

The Khronos Group ha rilasciato un video che mostra la presentazione fatta in occasione del SIGGRAPH 2015. Una presentazione che tocca diverse argomentazioni tecniche inerenti OpenGL, OpenGL ES e Vulkan, le API di basso livello che raccolgono il testimone delle OpenGL.

Al minuto 57 si discute nello specifico di come Valve abbia contribuito alla nascita e allo sviluppo di Vulkan, mentre AMD ha fornito parte della sua tecnologia Mantle. Vulkan, come precedentemente noto, è derivato da e costruito su componenti Mantle di AMD.

A 1:41, invece, Dan Ginsburg dettaglia il supporto di Valve a Vulkan, dicendo che si è occupato personalmente del porting del Source Engine 2 per le nuove API e che Intel, AMD e NVIDIA hanno già fornito dei driver che consentono di far girare la beta del Source Engine 2 in versione Vulkan sui loro hardware.

Altri dettagli su Vulkan si trovano qui.

36 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
Bivvoz25 Settembre 2015, 16:27 #1
Sta notizia mi suona un po' come "l'acqua calda è calda"
Vul25 Settembre 2015, 16:32 #2
Saranno 20 anni che i giochi valve girano su opengl...

In ogni caso non credo che vulkan offrirà le stesse prestazioni di dx 12 (in termini di fps).

E che cavolo è un api che deve funzionare tanto su x86 con gpu dedicata quanto su arm..

L'essenza contraria dell'ottimizzazione.
Bivvoz25 Settembre 2015, 16:33 #3
Originariamente inviato da: Vul
Saranno 20 anni che i giochi valve girano su opengl...

In ogni caso non credo che vulkan offrirà le stesse prestazioni di dx 12 (in termini di fps).

E che cavolo è un api che deve funzionare tanto su x86 con gpu dedicata quanto su arm..

L'essenza contraria dell'ottimizzazione.


Non capisco dov'è il problema.
È pieno il mondo di software multi-architettura.
Tedturb025 Settembre 2015, 16:51 #4
Originariamente inviato da: Vul
Saranno 20 anni che i giochi valve girano su opengl...

In ogni caso non credo che vulkan offrirà le stesse prestazioni di dx 12 (in termini di fps).

E che cavolo è un api che deve funzionare tanto su x86 con gpu dedicata quanto su arm..

L'essenza contraria dell'ottimizzazione.


Tu si che te ne intendi..
per altro directx anche funziona sia su x86 che su arm che su altro..
metrino25 Settembre 2015, 16:53 #5
Le api grafiche sono nate proprio per questo: così ognuno si può scrivere il proprio motore sicuro che l'ottimizzazione sia stata fatta da qualcun altro al livello un po' più basso.

Il problema sta nel fatto che le api devono essere abbastanza di dettaglio da permettere ottimizzazioni di fino specifiche degli strati superiori ma devono anche essere abbastanza generiche da supportare gli sviluppatori senza che questi debbano scrivere righe e righe di codice col copia-incolla per fare qualcosa di ripetitivo.
Cfranco25 Settembre 2015, 23:43 #6
Originariamente inviato da: Vul
Saranno 20 anni che i giochi valve girano su opengl...

In ogni caso non credo che vulkan offrirà le stesse prestazioni di dx 12 (in termini di fps).

E che cavolo è un api che deve funzionare tanto su x86 con gpu dedicata quanto su arm..

L'essenza contraria dell'ottimizzazione.


E' da un bel po' che non si programma più in assembly direttamente sui registri delle schede video
WarDuck26 Settembre 2015, 11:33 #7
Originariamente inviato da: Vul
Saranno 20 anni che i giochi valve girano su opengl...

In ogni caso non credo che vulkan offrirà le stesse prestazioni di dx 12 (in termini di fps).

E che cavolo è un api che deve funzionare tanto su x86 con gpu dedicata quanto su arm..

L'essenza contraria dell'ottimizzazione.


Sia Vulkan che DirectX12 sono API di "alto livello".

L'ottimizzazione è un passo che avviene in fase di compilazione.

Immagina di scrivere un programma C, questo viene compilato e ottimizzato, e puoi scegliere per quale architettura generare il codice e tutta una serie di ottimizzazioni legate alla presenza o meno di certe funzionalità nelle CPU...

Nel caso delle GPU in realtà la faccenda è simile anche se più complessa... ad esempio se consideriamo il calcolo general purpose per GPU che negli ultimi anni sta prendendo sempre più piede, purtroppo lì non si può prescindere dall'architettura.

Questo non c'entra molto con la parte squisitamente grafica, ma penso sia simile.

Se usi CUDA su scheda video nVidia non puoi comunque prescindere dalla particolare architettura (Kepler/Maxwell...).

Se usi OpenCL purtroppo è la stessa cosa se non peggiore.

A livello di GPU, general purpose, non siamo ancora ai livelli di compromesso tra prestazioni e codice ad alto livello raggiungibili dal software pensato per CPU.
bobafetthotmail26 Settembre 2015, 14:18 #8
Originariamente inviato da: Vul
E che cavolo è un api che deve funzionare tanto su x86 con gpu dedicata quanto su arm..

L'essenza contraria dell'ottimizzazione.
??? è una API per parlare con la GPU/driver, cosa c'entra l'architettura del processore adesso?

Sia Vulkan che DirectX12 sono API di "alto livello".
Non erano "basso livello" cioè vicino all'hardware?

Sono dette di basso livello perchè danno allo sviluppatore la possibilità di comandare più direttamente la GPU. Questo è ovviamente più complesso. Questo, se tale sviluppatore ha voglia di ottimizzare, può fare in modo che il suo engine (programma) chiami la GPU quando fa più comodo a lui/suo programma, quindi di integrare di più l'engine con la GPU e, tra le altre cose, di sfruttare più di 1 core del processore per le chiamate alla GPU.

Una API di alto livello cioè più astratta come le DX11 è MOLTO più facile da usare perchè lo sviluppatore deve dare molti meno comandi alla GPU, ma limita l'ottimizzazione di brutto perchè il limite dell'ottimizzazione è quanto tale API riesce a tradurre bene i comandi astratti e semplici in qualcosa che la GPU può eseguire (che è sempre roba di basso livello).

Visto che fare un programma abbastanza intelligente da predire quale è il modo per gestire la GPU a seconda dell'engine specifico richiede neanche un AI, ma poteri di onniscienza e previsione del futuro, anche le API astratte migliori le prenderanno sempre senza se e senza ma da un programma scritto decentemente con API di basso livello.
pindol26 Settembre 2015, 16:00 #9
no ma aspettate un momento,

quando diavolo è stato presentato il Source Engine 2? Esistono già delle techdemo o è solo in via di sviluppo?

Pindol
Bivvoz26 Settembre 2015, 16:55 #10
Originariamente inviato da: bobafetthotmail
Non erano "basso livello" cioè vicino all'hardware?


Dipende da che parte lo guardi

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
 
^