Proton, lo strumento che Steam Play utilizza per la compatibilità con Windows, contiene una versione personalizzata di Wine, oltre a librerie aggiuntive con esso sviluppate. È completamente open source e disponibile ora su GitHub!
Se sai programmare open source, puoi perfino creare build locali di Proton: il client di Steam permette l'utilizzo di questo tipo di build per eseguire i giochi, in sostituzione della versione integrata. Unisciti alla discussione nella pagina dedicata ai problemi riscontrati e condividi le tue patch e i risultati dei tuoi test con il resto della Comunità.
D: Di cosa ho bisogno per iniziare?
Non molto, tieni solo presente quanto segue:
D: Che cos'è esattamente Proton? Perché è diverso dalla versione normale di Wine? Chi ci ha lavorato?
Proton è la distribuzione di uno strumento basato su una versione modificata di Wine. I miglioramenti apportati a Wine sono stati concepiti e finanziati da Valve e sviluppati in collaborazione con CodeWeavers. Ecco alcuni esempi di progetti su cui abbiamo collaborato dal 2016:
- vkd3d, l'implementazione di Direct3D 12 basata su Vulkan
- I ponti API nativi di OpenVR e Steamworks
- Diverse soluzioni a problemi di funzionalità e prestazioni di wined3d per Direct3D 9 e Direct3D 11
- Compatibilità rivoluzionata per modalità schermo intero e controller.
- Le patch "esync", per migliorare le prestazioni multithread.
Se sono compatibili con gli obiettivi e i requisiti generali del progetto Wine, le modifiche apportate vengono rese disponibili: in questo modo, gli utenti Wine hanno potuto trarre beneficio da parti di questo lavoro per oltre un anno. Il resto è disponibile come parte del deposito del nostro codice sorgente per Proton e i suoi moduli.
Inoltre, abbiamo anche sostenuto lo sviluppo di
DXVK, l'implementazione di Direct3D 11 basata su Vulkan. Ecco parte del nostro contributo:
- Lo sviluppatore di DXVK fa parte del nostro gruppo dedicato alla grafica open source a partire da febbraio 2018
- Il gruppo di grafica open source ha fornito supporto diretto per trovare una soluzione ai problemi di driver Mesa che influivano su DXVK e fornito implementazioni prototipo per nuove funzionalità Vulkan per migliorare il funzionamento di DXVK
- Collaborazione con i nostri partner di Khronos, NVIDIA, Intel e AMD per coordinare il supporto delle funzionalità e dei driver Vulkan
D: Che prestazioni possiamo aspettarci?
Una differenza di prestazioni è prevedibile per i giochi che richiedono la traduzione API della grafica, ma non c'è nessun motivo particolare per cui un titolo Vulkan dovrebbe girare più lentamente.
D: Ci sono giochi che non funzioneranno mai con Proton?
Alcuni giochi che utilizzano sistemi complessi di DRM o anti-cheat saranno difficili, se non addirittura impossibili da supportare.
D: Quando verranno aggiunti altri titoli a quelli già compatibili con il nuovo Steam play?
Aggiungeremo altre serie di giochi a quelli già abilitati man mano che i test continuano, ma senza una cadenza prestabilita. I nuovi giochi verranno aggiunti al sistema senza che ci sia bisogno di un aggiornamento del client di Steam.
D: Posso provare un gioco utilizzando Proton anche se non è contrassegnato come compatibile?
Sì; vai alle opzioni di Steam Play del client di Steam e potrai attivarlo per tutti i giochi.
D: È previsto il supporto per macOS?
Anche se Wine e Proton funzionano su macOS, al momento il supporto del nuovo Steam Play su macOS non è previsto.
D: Sono uno sviluppatore. Se il mio gioco è già compatibile con Linux, per me cambierà qualcosa?
Probabilmente no; se hai già convertito il tuo codice comune o utilizzi una macchina compatibile con Linux, non c'è nessun cambiamento.
D: Sono uno sviluppatore e non avevo in progetto di rendere il mio gioco disponibile per Linux; come posso sfruttare al meglio il nuovo Steam Play?
Per offrire le prestazioni migliori possibili su tutte le piattaforme, ti consigliamo di puntare su Vulkan in modo nativo, o almeno, se possibile, di proporlo in maniera opzionale. È anche bene evitare qualunque middleware DRM invasivo, in quanto a volte questi programmi impediscono alle funzionalità di compatibilità di funzionare come dovrebbero.
D: Sono uno sviluppatore. Il mio gioco è inserito tra quelli abilitati in Steam Play; significa che devo supportare una nuova piattaforma?
No; se un gioco è inserito tra quelli abilitati in conseguenza dei test da noi effettuati, significa che abbiamo valutato l'esperienza come identica (ad eccezione di un minimo impatto sulle prestazioni già previsto). Se gli utenti che giocano utilizzando Steam Play riscontrano problemi specifici legati a Linux, devono rivolgersi all'Assistenza di Steam. Tieni presente che, molto probabilmente, gli utenti giocavano già al tuo gioco grazie a Wine; ora ne viene data solo più visibilità