Proton: [Solicitud de funciones]: Galio Nueve parches

Creado en 22 ago. 2018  ·  123Comentarios  ·  Fuente: ValveSoftware/Proton

Muchos juegos (más antiguos) todavía usan dx9. ¿Sería factible utilizar los parches Gallium Nine para Proton para los usuarios de GPU AMD e Intel para obtener un rendimiento casi nativo en Linux? Veo un rendimiento mucho mejor en juegos más antiguos como Assassin's Creed 1 a través de vino normal con parches de Gallium Nine en comparación con Steam Play con Proton.

Feature Request

Comentario más útil

Este es un problema que debe tenerse en cuenta, deberíamos poder habilitar el galio nueve sin recurrir a hacks (como protontricks) solo por variables de entorno.

Es fácil de arreglar (ustedes ya tienen muchas bifurcaciones y soluciones para arreglar esto), Gallium Nine ahora tiene mejor soporte de GPU (ahora funciona con los controladores más recientes de Intel) y brinda un aumento de rendimiento de 1.5-2x sobre DXVK y wined3d.

Y ya tiene un montón de informes de juegos que hablan de una compatibilidad mejorada con solo usar Gallium Nine.

https://github.com/ValveSoftware/Proton/issues/173#issuecomment -499869941
https://github.com/ValveSoftware/Proton/issues/255#issuecomment -415997284
https://github.com/ValveSoftware/Proton/issues/355#issuecomment -415972910
https://github.com/ValveSoftware/Proton/issues/554#issue -354016973
https://github.com/ValveSoftware/Proton/issues/770#issue -354455950
https://github.com/ValveSoftware/Proton/issues/1073#issuecomment -473703760
https://github.com/ValveSoftware/Proton/issues/2704#issuecomment -518029014

Sé que probablemente esto no sea una prioridad para ti, ya que esto solo se aplica a los juegos antiguos, pero vamos, hay un catálogo enorme de juegos geniales que se beneficiarán de Gallium Nine.

Todos 123 comentarios

Esta es una opción mucho mejor. Y escuché que se fusionará con DXVK (eventualmente), así que tendremos todas las versiones de D3D cubiertas de la 9 a la 12. Las más antiguas no necesitan las características de Vulkan de todos modos, creo que los juegos de D3D 8 podrían incluso ejecutarse en un renderizador de software. en 60 FPS en hardware moderno.

¡Muy interesante! ¿Dónde descubriste que se fusionaría con DXVK?

No puedo encontrar nada al respecto, por lo que podría estar equivocado. Probablemente no se fusionará directamente con DXVK, sino que se admitirá junto con él o se fusionará con Wine. Recuerdo vagamente estos dos proyectos mencionados en el mismo contexto (lo cual no es sorprendente) de reemplazar la traducción D3D => OGL o algo así. De todos modos, creo que la sobrecarga de Vulkan es insignificante en comparación con el enfoque directo de Gallium Nine, pero los beneficios son obvios: todos los jugadores pueden usarlo, no solo aquellos con controladores FOSS. Y se puede llevar aún más lejos, al propio Windows, para que los usuarios de Windows puedan ejecutar juegos con posiblemente un mejor rendimiento debido a una mejor utilización de la CPU o ejecutarlos en absoluto, ya que algunos juegos más antiguos ya no funcionan en Windows moderno, pero funcionan en Wine.

Estoy de acuerdo en que VK9 o algo similar sería la mejor solución / implementación. Sin embargo, por lo que tengo entendido, la versión actual de VK9 sigue siendo una prueba de concepto y admite muy poco o nada en todos los juegos. Solo puede renderizar algunas pruebas sencillas de directx9.

Los parches de Gallium Nine están listos, bien probados por muchos jugadores y ofrecen un rendimiento (casi) nativo. Implementar esto sería bastante trivial, ya que los parches ya están ahí. Sería una adición muy bienvenida para todos los jugadores de AMD / Intel por el momento, hasta que VK9 alcance la madurez.

VK9 está a años de su finalización, y creo que incluso la sobrecarga de d3d-pba podría considerarse "insignificante".
Sin embargo, si hay alguno, me gustaría que el protón (pero incluso el vino aguas arriba) tuviera algunos tipos de prioridades.
Digamos, primero nativo (galio) o vulkan (dxvk), luego el otro, por último, pero no menos importante, wined3d (porque no todas las gpu son compatibles con vulkan)

ps Nine no funciona para usuarios de Intel

Como todavía se juegan cientos de juegos de Direct3D 9 en Steam y como se ha demostrado que Gallium Nine es mucho más eficiente que el tradicional d3d9 Wine, debería ser una característica opcional al menos a través de user_setting.py.

Preferiría fusionar la válvula VK9 con DXVK. por lo que tienen una cobertura vulkan uniforme.

Seguro, en un mundo ideal. Pero VK9 no ejecuta un solo juego hasta ahora y solo está en la fase de prueba de concepto. Puede ejecutar algunas pruebas simples de dx9 y eso es todo. Además, el tipo que trabaja en él lo considera un proyecto de afición y no pone tanto trabajo como el que desarrolla DXVK. Pueden pasar años antes de que VK9 esté listo para ser utilizado. Mientras tanto, ¿por qué no utilizar parches para usuarios de AMD que estén bien probados y completamente terminados?

Estoy de acuerdo con que los usuarios de AMD mesa puedan utilizar los parches de Gallium 9. Es parte de mesa, solo necesitamos la versión en vino para permitir su uso.

Acordado. ¿Y quien sabe? ¿Quizás en un futuro cercano no solo radeonsi y nuveau se beneficien de él?
https://www.phoronix.com/scan.php?page=news_item&px=Intel-Iris-Gallium

Tuve mucho éxito con esto yo mismo y los parches están bien mantenidos. Los paquetes de Mesa se basan en openSUSE y todos funcionan juntos. Generalmente va de jugable con muchos tartamudeos a suave como la seda, mientras que otros juegos solo tienen una pantalla negra. Tendría que ser conmutable o dos versiones de wine o algo así con los valores predeterminados proporcionados para los juegos compatibles.

Gallium Nine ha sido fantástico en mi experiencia. Sería genial verlo incluido en Proton.

Yo personalmente voto por el enfoque de todos los Vulkan.

@ shoober420 Yo también preferiría eso eventualmente. Pero falta un año para completar una capa de traducción de dx9 a vulkan. ¿Por qué no dejar que los usuarios de AMD disfruten del rendimiento nativo de dx9 a través de parches Gallium Nine que están bien probados y completamente terminados? Solo necesitan fusionarse para que los usuarios de AMD puedan disfrutar del rendimiento nativo en este momento.

@ shoober420 Creo que todos preferimos esa ruta para el protón. Es el paso lógico hacia adelante. No le estamos pidiendo a Valve que renuncie a una implementación vulkan de d3d9. Estamos pidiendo que permitan a las personas de los controladores abiertos basados ​​en galio usar lo que ya tienen. El galio 9 ya forma parte de nuestra pila de controladores. Los "nueve parches de galio" para vino simplemente omiten la traducción predeterminada de la api d3d9 a opengl y, en su lugar, alimenta las llamadas de la API directamente a la gpu. Evitando la pérdida de rendimiento debido a la traducción de API.

@Mushoz @Xalphenos

Veo que sus chicos señalan, ambos tienen razón. No sabía que VK9 estaba tan lejos. Luego apoyo la elección de más opciones. Puede que algún día use AMD o Intel.

Hice el trabajo para construir todas las variaciones de vino, puesta en escena y nueve para openSUSE. Básicamente, solo necesita aplicar el conjunto de parches relevante de https://github.com/sarnex/wine-d3d9-patches y compilar como de costumbre. Por tanto, necesitamos compilar wine dos veces y ofrecer una opción a un binario específico.

Como referencia, el paquete openSUSE / wine que construye los cuatro sabores de vino.

  • vino
  • vino nueve
  • puesta en escena del vino
  • vino-puesta en escena nueve

No estoy seguro de cuál es la situación en protones en relación con la puesta en escena del vino. Si nadie más llega y Valve no se opone, puedo darle una puñalada, pero Steam necesitaría una opción de interfaz de usuario para realmente agregar el pulido.

En lo que estás pensando es en el número 22. Puede que exista de alguna manera un mecanismo para agregar el propio tiempo de ejecución, pero por el momento se desconoce.

Pero para mí, el vino y el protón deberían tener un elegante mecanismo de retrocesos. De vulkan a galio, a opengl .. Dependiendo de la alternativa más funcional que pueda utilizar en su sistema.

Ciertamente relacionada, pero esta solicitud siempre tendrá que ser opcional por la misma razón que wine upstream no la fusiona ... no funciona en todas las plataformas y solo con un subconjunto de tarjetas que pueden usar los controladores de Mesa relacionados. Esto es bastante diferente de los otros cambios realizados en vino en este repositorio (aparte de excluir las tarjetas más antiguas). # 22 permitiría que alguien con un wine-nine construido lo cambiara, pero este problema se trata de que sea parte de la compilación oficial.

Sí ... y no veo qué es difícil en verificar qué controlador se está utilizando, en qué hardware y terminarlo (lo mismo para vulkan u opengl de todos modos)

Yo tampoco, nunca dije que no lo fuera. Solo respondo al # 22, que trata específicamente de elegir compilaciones personalizadas fuera de proton, que no es lo que estoy proponiendo ni sobre este tema.

Dada la naturaleza extensa de la diferencia de ValveSoftware / wine (3.7) vs wine / wine (3.7) y el enfoque que está tomando Valve, probablemente tenga más sentido fusionarlo directamente en su bifurcación de vino. Entonces, a) tendría que ser conmutable en tiempo de ejecución (posiblemente automáticamente) o compilarse dos veces (creo que los parches ya incluyen un cambio de tiempo de compilación).

Los parches de etiquetas 3.7 no se aplican claramente a ValveSoftware / wine.

error: patch failed: configure.ac:1261
error: configure.ac: patch does not apply
wine-d3d9.patch:5385: new blank line at EOF.
+

Puede ser simple, pero imagino que este sería un problema continuo que probablemente sería otra razón para fusionarse directamente con la bifurcación.

Ellos van a actualizar tan pronto como se manejan "los problemas de inicio"

... además, tal vez sería más productivo si trabajaras para conseguirlo primero

Actualizar la versión de vino no fue lo que pedí o necesité ya que apliqué parches para 3.7. En cuanto a la puesta en escena, esta ha sido una solicitud a largo plazo en la que Wine Upstream no está interesado principalmente porque no funciona en Mac y no en todo el hardware de Linux. Por lo tanto, proton está integrando una variedad de mejoras de rendimiento que limitan el alcance del hardware ... por lo que esto podría ser de interés para ellos.

Tenerlo en la puesta en escena del vino o en el vino propiamente dicho sería genial, pero puede encontrar muchos problemas anteriores que indican que no sucederá en nuestra vida.

Mac no es un problema, ni la compatibilidad de hardware (especialmente después de los últimos rumores de Intel).
Puede ver mis enlaces sobre por qué el problema más ... preocupante, al menos por el momento, es la falta de reconocimiento en primer lugar.
(por cuanto, quién sabe, tal vez ya hayan llegado a un consenso sobre el IRC)

Incluso si VK9 estuviera listo para Proton, preferiría la solución más eficiente. Hasta que Proton ofrezca eso, sigo apegándome a mi viejo y confiable vino de nueve parches para juegos dependiendo de d3d9.

Soy plenamente consciente de que Gallium Nine no será (y probablemente nunca será) la solución más eficiente para todos , pero ese no es mi punto aquí. ¡Tenerlo como una opción para aquellos que ejecutan un controlador Gallium sería genial! :)

Esta es la solucion:
https://www.phoronix.com/scan.php?page=news_item&px=Zink-Gallium3D-OpenGL-Vulkan
https://gitlab.freedesktop.org/kusma/mesa/tree/zink/src/gallium/drivers/zink

Básicamente, Gallium3D siempre fue una pequeña abstracción entre varios rastreadores estatales y los controladores, por lo que solo en Vulkan como controlador y bam, obtienes todos los rastreadores estatales compatibles, incluidos Gallium nueve y OpenGL de Mesa. El ciclo de vida del código de bytes del sombreador será el código de bytes DX9 HLSL del juego-> TGSI-> NIR-> SPIRV wow, si funciona, funciona .... :)

Lo único que puedo ver como una "solución" es una solución temporal para las tarjetas Nvidia antes de que la VK9 esté lista. Esto ciertamente no sería más rápido en AMD.

@ jerbear64 Gallium Nine ya está bastante probado en batalla, aunque por lo que veo, al menos en el controlador amdgpu. A menudo pensaba que esto podría haberse hecho desde el principio, incluso con el caso de DXVK, podría haber sido un rastreador de estado dentro de Mesa también y luego simplemente escribir algo como ZINK al final para controladores cerrados o usar el hardware nativo directamente donde sea posible. Aunque no me quejo ... :)

No todo el mundo usa mesa.

El miércoles 26 de septiembre de 2018 a las 20:35, Alex Fuller, [email protected] escribió:

@ jerbear64 https://github.com/jerbear64 Gallium Nine ya es bastante
probado en batalla, aunque por lo que veo, al menos en el controlador amdgpu. era
a menudo pensando que esto podría haberse hecho desde el principio incluso con DXVK
caso de que pudiera haber sido un rastreador de estado dentro de Mesa también y luego
simplemente escriba algo como ZINK al final para controladores cerrados o use el
hardware nativo directamente cuando sea posible. Aunque no me quejo ... :)

-
Estás recibiendo esto porque hiciste un comentario.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/ValveSoftware/Proton/issues/66#issuecomment-424824077 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AAipRw-R-g3DJOiWzHdR5SOHBu2X-xCxks5ue8jigaJpZM4WHXpZ
.

@cjwijtmans bueno, con esto todos pueden que tengan un controlador vulkan existente, solo sería una biblioteca para vincular como DXVK ...

Aquí hay otra forma de hacerlo:

https://github.com/GabrielMajeri/d3d9-to-11

dgVoodoo ya implementa direct3d 1 a 7 más 8.1 a 11 entre otras cosas, por lo que la reimplementación del proyecto de direct3d9 en direct3d 11 permitiría que todas las versiones antiguas de direct3d simplemente se ejecuten a través de DXVK.

@ jerbear64 que suena al revés. Nine es inútil solo en la propiedad de nVidia. Con AMD, usa Mesa predominantemente. Intel también está construyendo un nuevo controlador Gallium3D, por lo que esta será la solución Intel + nouveau + AMD en algún momento en el futuro.

Parece que dgVoodoo está trabajando en el soporte D3D9:

https://www.vogons.org/viewtopic.php?f=59&t=34931&start=3780#p705374

Está limitado al modelo de sombreado 1.x. Esto significa que los juegos que usan D3D9 con el modelo de sombreado 1.x podrían ejecutarse sobre DXVK en su próxima versión. La desventaja de esto es que dgVoodoo no es de código abierto.

Por lo que vale, ahora obtuvimos soporte para Mesa, parte de Gallium Nine ahora en Steam Flatpak debido a la demanda de otras aplicaciones Flatpak.

@ jerbear64 que suena al revés. Nine es inútil solo en la propiedad de nVidia. Con AMD, usa Mesa predominantemente. Intel también está construyendo un nuevo controlador Gallium3D, por lo que esta será la solución Intel + nouveau + AMD en algún momento en el futuro.

Bueno, es inútil para los usuarios de Nvidia, pero no rompe la compatibilidad con él. Está bien dar algo a los usuarios de gráficos de código abierto y no a Nvidia si está disponible

Espera, ¿no es así? Pensé que la parte del vino (que se discute aquí) lo hizo. De todos modos, probablemente sería bueno tener esto construido y enviado incluso si no se usa por defecto.

Espera, ¿no es así? Pensé que la parte del vino (que se discute aquí) lo hizo. De todos modos, probablemente sería bueno tener esto construido y enviado incluso si no se usa por defecto.

Detecta si hay galionino al iniciar el juego y, si es necesario, lo redirecciona a la otra implementación.

@shanefagan GPU sin galio nueve puede ser la minoría en el futuro.
Intel ha expresado interés en admitir Gallium 3d en todas las GPU futuras.

@hungrymonkey No creo que @shanefagan haya afirmado nada en contrario. Además, las GPU de nVidia con controladores propietarios todavía ocupan una parte masiva del uso de escritorio de Linux.

@nanonyme gallium nine no afecta en absoluto a los controladores propietarios de nvidia ni al uso. Comprueba si el controlador en uso es capaz de g9 y, en caso contrario, no se utiliza. Específicamente, verifica si mesa tiene g9 habilitado y luego verifica qué controlador de mesa está en uso. Si no se usa ningún controlador mesa, literalmente no puede usar la funcionalidad g9 y se ignora por completo.

@GloriousEggroll parece que no estamos hablando en el mismo idioma. Esto solo se explicó en un par de publicaciones.

Una buena nota para el parche es que su desarrollador ha estado manteniendo los parches de WINE actualizados con el trabajo de hace 3 días. Yo diría que sería bueno al menos construirlo y tener una selección como configuración para algunos sistemas que tienen problemas de rendimiento de dx3d9 (como yo con juegos como SC2 sin grandes modificaciones).

De todos modos, es bueno vincular los parches ya que no vi ningún enlace https://github.com/sarnex/wine-d3d9-patches

@Mushoz Ya ejecuta Unreal Tournament. Durante 2019 _podría_ ser plenamente funcional. Tienes la hoja de ruta aquí .

Saltarse los controladores y herramientas nativos que ya están en uso y listos para usar en favor de la capa de transición que está en un gran desarrollo no parece prudente. En todo caso, el Gallium Nine, que ya está listo, debería presentarse como una opción para los usuarios de AMD; una vez / si llega VK9, todavía puede permanecer como una opción.

Vería que el principal inconveniente son las múltiples rutas de código que potencialmente hacen que los juegos de soporte sean más difíciles. Por otra parte, los resultados de las pruebas, incluso ahora, no son aplicables entre los proveedores de GPU

VK9 no funcionará en dispositivos que no sean amdgpu / pre-GCN-GPU. Gallium-Nine, por otro lado, posiblemente podría ejecutarse en material antiguo de r300g e incluso hasta en GPU como mi VEGA10. Pero sí, estas viejas GPU VLIW impulsadas por r600g en las que algunos de mis amigos todavía confían se consideran obsoletas.

Al igual que el propio D3D9.

Vería que el principal inconveniente son las múltiples rutas de código que potencialmente hacen que los juegos de soporte sean más difíciles. Por otra parte, los resultados de las pruebas, incluso ahora, no son aplicables entre los proveedores de GPU

Bueno, es un beneficio si funciona, insignificante si no funciona. Como si pudiera hacer la implementación predeterminada de WINE, pero permitir que los usuarios la establezcan como una variable de entorno si quieren probarla. Ya lo hacen si obtiene un mejor rendimiento de WINE en lugar de DXVK, por lo que no es realmente un problema de herramientas de ellos para la configuración. Solo tienen que colocarlo en su lugar. Incluso podrían contratar al tipo que hace el parche para atar el último 10% para conseguirlo.

La diferencia aquí es que WineHQ no le vende juegos y es probable que tenga que hacer reembolsos.

Pensé que por eso teníamos una lista blanca ...

La lista blanca no funcionará si tiene una ramificación complicada de modos operativos, seguramente

"Complicado"

La lista blanca no funcionará si tiene una ramificación complicada de modos operativos, seguramente

Bueno, podría ser una opción que solo los usuarios mismos habiliten si quieren probarla si el rendimiento del juego no es excelente.

La lista blanca no funcionará si tiene una ramificación complicada de modos operativos, seguramente

Bueno, podría ser una opción que solo los usuarios mismos habiliten si quieren probarla si el rendimiento del juego no es excelente.

Me suena bastante justo.

Creo que primero necesitarás obtener libd3dadapter9-mesa en el tiempo de ejecución de Steam.

Creo que primero necesitarás obtener libd3dadapter9-mesa en el tiempo de ejecución de Steam.

¿Cómo funciona libd3dadapter9? Sé que GalliumNine está en Mesa propiamente dicho y los parches de WINE apuntan a eso. Vi que está en Ubuntu a partir de 18.10, pero en realidad nunca usé esa biblioteca.

¿Cómo funciona libd3dadapter9? Sé que GalliumNine está en Mesa propiamente dicho y los parches de WINE apuntan a eso. Vi que está en Ubuntu a partir de 18.10, pero en realidad nunca usé esa biblioteca.

Solo se está dirigiendo al rastreador de estado D3D9 de Mesa al igual que lo hace opengl32.dll de Wine, por ejemplo, con los rastreadores de estado OpenGL comunes¹.
Editar: Lo siento, confundí libd3dadapter9 con la DLL construida para Wine. Ese día no tomé suficiente café. La biblioteca en cuestión implementa un rastreador de estado D3D9 para Mesa. Simplificado: ofrece compatibilidad nativa con D3D9 sin capas de traducción adicionales como WineD3D o VK9. Eche un vistazo a esta presentación si está interesado .


¹: Advertencia: la respuesta puede ser inexacta.

Pude construir proton con nueve parches como compilación de arch linux local con --no-steam-runtime. El único juego que probé hasta ahora es Valkyria Chronicles 1 y se estaba comportando de manera extraña con esta compilación local, por ejemplo, RX 480 se detectó como R9 290 en la configuración, los controles no funcionaban correctamente a veces y la configuración establecida a través de la herramienta de configuración de Valkyria Chronicles no se obtuvo guardado en absoluto.

Aunque esos problemas pueden estar relacionados con la construcción de protones con --no-steam-runtime en lugar de los nueve parches.

El parche original de https://github.com/sarnex/wine-d3d9-patches/blob/wine-d3d9-3.16/wine-d3d9.patch solo necesitaba una corrección para el contexto en configure.ac ver https: // gist .github.com / raetiacorvus / 8bf19a733ac131d744030788030941c4 solo las líneas 72 y 73 se eliminaron del parche original.

Todavía necesita aplicar https://github.com/sarnex/wine-d3d9-patches/blob/wine-d3d9-3.16/d3d9-helper.patch primero y ejecutar autoreconf en la carpeta de vinos después de haber aplicado ambos parches.

Además, tuve que agregar -with-d3d9-nine-module=/usr/lib32/d3d/d3dadapter9.so a la configuración de wine32 en el siguiente archivo, pero eso puede ser el resultado de no configurar correctamente el entorno de compilación. https://github.com/ValveSoftware/Proton/blob/83871c7bf93b785b23b987956b7cc3608d6998b3/build/makefile_base.mak#L713 -L726

Además, no olvide que debe habilitar galio nueve a través de winecfg para cada pfx.

https://github.com/ValveSoftware/Proton/issues/66#issuecomment -447569917

¡Esta es una gran noticia! A pesar de los contratiempos iniciales, tener una construcción algo funcional es un progreso significativo. Dado que no estoy bien versado en codificación, ¿puede explicarnos por qué construyó con el argumento --no-steam-runtime ? ¿No funciona el Proton que construiste con el cliente Steam? Porque, el objetivo de Proton es ejecutar juegos de Steam que requieren Steam DRM con el cliente Steam nativo en lugar de la versión de Windows.

@raetiacorvus

Tengo una colección de juegos considerablemente grande en Steam. Por favor, avíseme, si necesita probar más juegos, para que pueda intentar arreglarlo.

El único juego que probé hasta ahora es Valkyria Chronicles 1 y se comportaba de manera extraña con esta compilación local, por ejemplo, RX 480 se detectó como R9 290 en la configuración

Este es el comportamiento normal de Gallium Nine, mi RX 580 hace lo mismo en mis compilaciones de wine-staging-nine.

Parece que ninguno de los problemas que encontré están relacionados con el galio nueve, sino que son causados ​​por --no-steam-runtime o por el juego en sí.

@ rea987 --no-steam-runtime significa que el protón se construye contra las bibliotecas locales en lugar de las parcheadas del contenedor de la ventana acoplable en tiempo de ejecución de Steam. Sigue siendo una herramienta válida de compatibilidad con vapor y se puede utilizar como reemplazo de las liberaciones de protones provistas por la válvula. Un problema hasta ahora es que carece del mapeo del controlador parcheado del tiempo de ejecución, lo que resultó en el problema que tuve con Valkyria Chronicles. Probablemente podría solucionarlo utilizando algunas de las herramientas disponibles para que wine mapee los controladores correctamente.

@raetiacorvus Sería maravilloso si proporcionara una guía de compilación de Gallium Nine para Proton paso a paso. Además, ¿qué tal hacer una solicitud de extracción para que tal vez @ValveSoftware la combine con una de las ramas? Si eso resulta ser una construcción funcional, consideraré seriamente cambiarme a AMD. @raetiacorvus Mi oferta de proporcionar más juegos para probar sigue en pie.

Hice mi propia bifurcación de Proton con los parches:

https://github.com/popsUlfr/Proton (revisa la sucursal proton_3.16_gallium_nine_extras y sigue el archivo Léame)

git clone https://github.com/popsUlfr/Proton.git
cd Proton
git checkout proton_3.16_gallium_nine_extras
git submodule update --init

También funciona con el tiempo de ejecución de Steam, tuve que agregar este bloque ligeramente feo de cosas de mesa: https://github.com/popsUlfr/Proton/commit/0397af03059c32a6ac5e0213d39769e33f2914df

Agregué una variable de entorno PROTON_USE_GALLIUM_NINE=1 que puede usar para habilitar fácilmente Gallium nine si su tarjeta lo admite (también se puede habilitar a través de la pestaña de preparación en winecfg)

Características :

  • Galio Nueve obviamente
  • Parche Path of Exile dx11: https://bugs.winehq.org/show_bug.cgi?id=42695
  • Forzar wined3d11 si no hay soporte para Vulkan: # 1749
  • Habilite ffmpeg de forma predeterminada y compile FAudio con él: # 2082
  • Alternar GLSL para deshabilitar los sombreadores GLSL y usar sombreadores ARB en su lugar para reducir el tartamudeo con wined3d

Aquí hay una compilación para probar:
~ Proton_3.16-5_Gallium_Nine_Extras.tar.xz ~
~ Protón 3.16-5 Galio Nueve Extras 0.1.0 ~
~ Protón 3.16-5 Galio Nueve Extras 0.1.1 ~
~ Protón 3,16-6 Galio Nueve Extras 0,1,1 ~
~ Protón 3,16-6 Galio Nueve Extras 0,1,2 ~
Protón 3,16-6 Galio Nueve Extras 0,1,3

$ mkdir -p ~/.steam/root/compatibilitytools.d
$ tar xf Proton_3.16-6_Gallium_Nine_Extras_0.1.3.tar.xz -C ~/.steam/root/compatibilitytools.d

En la pestaña de Steamplay debería aparecer como Proton 3.16-6 Gallium Nine Extras

Por cierto, agregué esto al README, después del paso de configuración, debe ejecutar make all dist lugar de solo make dist o simplemente terminará con win64 wine y nada más. Así que esto parece ser un error en el README del protón oficial o simplemente actuar así en mi propio sistema, no estoy seguro.

¡Buen trabajo @popsUlfr!

¿Tendrá lanzamientos genéricos de 32 bits, 64 bits y / o multiarch en la página de GitHub de su bifurcación?

¡Gracias por el esfuerzo y el tenedor!

@ rea987 ¿ Te gusta esto? https://github.com/popsUlfr/Proton/releases/tag/proton-3.16-5-gne-0.1.0

Dime si te funciona bien, no tengo acceso a una tarjeta amd para probar esto a fondo: /

Hrm Seguí las instrucciones pero parece que Steam no está recogiendo lo que esté en el directorio creado. El menú desplegable de la herramienta de compatibilidad solo muestra las versiones "normales" de Steam.

¿Alguna idea de lo que podría estar haciendo mal? Estoy en KDE NEON 18.04 (básicamente Ubuntu) si eso cambia algo.

@popsUlfr ¡Precisamente! Esa es una forma más clara y explicativa de distribuirlo. Sí, también necesito una tarjeta AMD para probarlo correctamente. : - /

@AndrewLoom ¿Está su instalación de Steam ubicada en el directorio ~/.local/share/Steam o ~/.steam ? Porque necesitaba usar el último para que funcione.

¡Gracias rea987! D'Oh, es tan obvio ahora, pero todavía no lo pensé. :-)

@AndersDala No hay problema, ese es un problema que confunde a mucha gente recientemente. ¿Quizás @popsUlfr puede editar la guía de instalación para señalar también el directorio ~/.steam ?

Tengo una AMD Radeon Vega 56. La instalé correctamente y la seleccioné para usar con todos los juegos de Windows, pero parece que juegos como A Hat in Time o Dragon Age: Origins no funcionarán si habilito Gallium Nine con PROTON_USE_GALLIUM_NINE = 1 (con prefijo limpio), ni siquiera aparece una ventana. Con PROTON_USE_GALLIUM_NINE = 0 funcionan bien.

Tengo una AMD Radeon Vega 56. La instalé correctamente y la seleccioné para usar con todos los juegos de Windows, pero parece que juegos como A Hat in Time o Dragon Age: Origins no funcionarán si habilito Gallium Nine con PROTON_USE_GALLIUM_NINE = 1 (con prefijo limpio), ni siquiera aparece una ventana. Con PROTON_USE_GALLIUM_NINE = 0 funcionan bien.

Misma GPU y el mismo resultado para mí. Los juegos (Dishonered, Dead Space) no comenzarán con Gallium.

@Mastergatto , @archfan ¿Ha instalado controladores Mesa habilitados para Gallium Nine?

https://launchpad.net/~oibaf/+archive/ubuntu/graphics-drivers

Sí, estoy en Arch e instalé mesa-git desde AUR. Viene con Gallium Nine habilitado.

@archfan Muy bien, mañana, lo probaré en mi vieja computadora portátil AMD que, con suerte, es compatible con Gallium Nine.

Sí, ya que Gallium Nine está habilitado de forma predeterminada con el paquete mesa, al menos para tarjetas AMD en ArchLinux. También tengo galio de estadificación de vino, en el que Gallium Nine funciona según lo previsto.

¿Puede ver la salida cuando se ejecuta con galio nueve encendido?
Entonces, en las opciones de lanzamiento para el juego, agregue:

PROTON_DUMP_DEBUG_COMMANDS=1 PROTON_USE_GALLIUM_NINE=1 %command%

Ejecuta el juego.
Esto colocará algunos scripts de protones en /tmp/proton_<username>
Ejecute ./run para ver la salida.

También solo para asegurarse, cambie a otro protón, reinicie el vapor. Ahora cambie al protón de galio nueve.

EDITAR: para no contaminar este hilo, creo que sería mejor discutirlo aquí: https://github.com/popsUlfr/Proton/issues/2

También lo siento si esto le hizo ilusiones y no funciona de la caja. Mantuve esto localmente, la parte de galio nueve era más un 'qué pasaría si' en caso de que pudiera probar en amd. Decidí compartirlo de todos modos al ver que esta discusión se vuelve más prominente y podría ser útil para obtener algo sobre el soporte del galio nueve en el protón :)
Las otras funciones integradas también podrían ser útiles, así que ...

Gallium Nine funciona en Proton con https://github.com/dhewg/nine

Como era de esperar, esto rompe la superposición de Steam, pero por lo demás funciona bien.

Gallium Nine funciona en Proton con https://github.com/dhewg/nine

Como era de esperar, esto rompe la superposición de Steam, pero por lo demás funciona bien.

¡Oye, bonito!

¿Podría proporcionar una guía de lo que hizo? Estoy un poco perdido.

Otro proyecto a considerar como alternativa a este https://github.com/Joshua-Ashton/d9vk

aparentemente deberíamos usar protontricks para obtener todas esas golosinas?

alguien sabe sobre eso?

aparentemente deberíamos usar protontricks para conseguir todos esos googdies?

alguien sabe sobre eso?

Buena llamada. Sinceramente, preferiría una solución sin protontricks, pero lo intentaré lo antes posible.

Hice esto :

wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks.bash-completion
sudo mv winetricks /usr/bin
sudo mv winetricks.bash-completion /usr/share/bash-completion/completions/winetricks
python3 -m pip install --user pipx
~/.local/bin/pipx ensurepath
eval "$(cat .bashrc | tail -n +10)"
pipx install protontricks
pipx upgrade protontricks
protontricks 9420 galliumnine

pero ahora el juego (que estaba funcionando) me da un cuadro de error que dice: "No se pudo crear el dispositivo direct3d"

@tatsujb No creo que sea la página correcta para esto, pero aquí va. ¿Estás usando Ubuntu 18.04 o Mint 19? Porque los controladores Mesa de oibaf para esas versiones de Ubuntu / Mint no funcionan para Gallium Nine desde diciembre / enero. Tuve el mismo problema, cambié a Ubuntu Mate 19.04 y ahora funciona.

@ rea987 Estoy usando ubuntu 19.04, lo intentaré de nuevo. EDITAR no, no ayuda. ¿Qué más hiciste? ¿Qué argumentos tienes y qué juego te funciona?

@tatsujb Sinceramente, no mucho.

  • Evité los PPA de Mesa de terceros ya que la compatibilidad con Gallium Nine de los controladores Mesa de
  • Me aseguré de que tanto libd3dadapter9-mesa como libd3dadapter9- mesa: i386 estén instalados.
  • Reemplazado manualmente / usr / bin / winetricks con la última versión: https://wiki.winehq.org/Winetricks
  • Borrado ~ / .cache / winetricks
  • Gallium Nine Standalone reinstalado (más reciente) a través de Protontricks.

@ rea987

sí, ese era el truco. Lo había descubierto desde entonces, ¡gracias!

Sería bueno tener galiumnine y d9vk por cierto. Los comparé en el sombrero a tiempo hoy y el galionino funciona mucho mejor (20% o más fps más alto) y no tartamudea la primera vez que visita una nueva área. tener ambos daría como resultado mayores posibilidades de ejecutar un juego directx9 dado con un buen rendimiento, ya que algunos títulos podrían romperse con uno u otro.

En un mundo ideal, el renderizador retrocedería elegantemente de nativo, a vulkan a opengl (o cambiaría la prioridad de los dos primeros si se suponía que d9vk eventualmente tuviera alguna ventaja intrínseca, pero aún así).
En cambio, Valve (e incluso los tejedores de códigos a los que se les ha burlado de Nine) parece centrado en crear un bonito jardín "suficientemente bueno" para las últimas cartas en lugar de tener todo y el fregadero de la cocina funcionando. Ni siquiera agregarán el cheque automático para tarjetas que carecen de vulkan en absoluto

Aquí están mis 20 centavos:

Ahora que tenemos Gallium Nine independiente, es bastante fácil de usar porque ya no necesita parches para el vino. Todo lo que necesita hacer es: (1) instalar mesa-libd3d9 desde el administrador de paquetes de su distribución (2) instalar Nine en su prefijo de vino usando winetricks o el script de instalación.

Con respecto a cuál es la opción "mejor": no tengo la intención de comenzar una guerra de llamas aquí, así que solo compartiré lo que encontré hasta ahora: https://github.com/Joshua-Ashton/d9vk/issues/ 95 # problemacomentario -492651741 - eso, por supuesto, solo significa que en mi sistema Nine fue más rápido con los títulos que probé hasta ahora, lo que puede no ser representativo de cómo funcionarían en las computadoras de otras personas. EDITAR: Me doy cuenta de que Nine no es actualmente una opción para los usuarios de NVidia, pero funciona razonablemente bien con AMD (radeonsi) e Intel (iris), y mejorará en NVidia una vez que el zink alcance la madurez suficiente.

Nine standalone es muy fácil de usar.
Sin embargo, de alguna manera, * cada vez que * le señalas esto a los desarrolladores, parece caer en oídos sordos.
No sé si tal vez las discusiones no podrían haber tenido lugar detrás de las puertas / IRC y tampoco quiero incendiarme, pero no sé qué más decir para que reconozcan el estado * actual * de las cosas de la maldito código, en lugar de cualquier imagen caricaturesca que tengan en sus mentes sobre lo que era el proyecto hace media década.

Me doy cuenta de que Nine no es actualmente una opción para los usuarios de NVidia, pero funciona razonablemente bien con AMD (radeonsi) e Intel (iris), y mejorará en NVidia una vez que Zink alcance la madurez suficiente.

También funciona bien con r600g. Las GPU compatibles con r600g carecen de compatibilidad con Vulkan por cierto.

en nvidia por ahora cambio entre un ubuntu con 418 instalado y un ubuntu con Nouveau instalado para poder habilitar mesa y galio nueve. el rendimiento con juegos linux nativos que pueden ejecutarse bajo nouveau es aceptable y los juegos wine-gallium-nine funcionan muy bien.

Pero obviamente no puedo esperar a que mesa también sea compatible con Nvidia.

Creo que esto lo resuelve D9VK ahora. Lo probé con SC2 y algunos otros juegos y funciona muy bien. Con suerte, eso se integrará en DXVK en el futuro y los parches también se enviarán a Proton.

d9vk todavía tiene un rendimiento mucho peor que el galio nueve, pero sí, incluso el soporte d9vk integrado sería increíble, ya que ya es más difícil que el galio nueve integrarlo en una instalación de protones existente.

También otra parte complicada del envío de d9vk es que requiere la última mesa. no solo la última versión, se basa en mesa-git. por lo tanto, para que sea accesible para una amplia variedad de distribuciones, es posible que incluso tenga que enviar mesa-git con él o instruir a los usuarios para que descubran cómo obtener mesa-git para su distribución.

@shanefagan No, d9vk es mucho, mucho más lento que nueve, mira mis hallazgos en mi publicación anterior.

Existe una versión independiente que es fácil de instalar. Tal vez puedan enviarse con Proton y habilitarse con un argumento. D9VK es excelente, pero como otros han dicho, es más lento y, a menudo, usa controladores de vanguardia. La instalación de Gallium a través de winetricks funciona, pero tener una opción integrada sería realmente bueno.

Independiente: https://github.com/iXit/wine-nine-standalone

¡Hola! ~ ¿Alguien más experimenta bloqueos silenciosos en 4.11-6 al iniciar juegos con Gallium Nine Standalone instalado?

@Bryophyllum mismo, el juego no se iniciará después de instalar galliumnine a través de protontricks.
Lo peor es que no hay una manera fácil de saber si el galionino se está ejecutando en primer lugar.

En realidad, después de algunos intentos y errores, esto funcionó:

¿Puede ver la salida cuando se ejecuta con galio nueve encendido?
Entonces, en las opciones de lanzamiento para el juego, agregue:

PROTON_DUMP_DEBUG_COMMANDS=1 PROTON_USE_GALLIUM_NINE=1 %command%

Ejecuta el juego.
Esto colocará algunos scripts de protones en /tmp/proton_<username>
Ejecute ./run para ver la salida.

También solo para asegurarse, cambie a otro protón, reinicie el vapor. Ahora cambie al protón de galio nueve.

EDITAR: para no contaminar este hilo, creo que sería mejor discutirlo aquí: popsUlfr # 2

También lo siento si esto le hizo ilusiones y no funciona de la caja. Mantuve esto localmente, la parte de galio nueve era más un 'qué pasaría si' en caso de que pudiera probar en amd. Decidí compartirlo de todos modos al ver que esta discusión se vuelve más prominente y podría ser útil para obtener algo sobre el soporte del galio nueve en el protón :)
Las otras funciones integradas también podrían ser útiles, así que ...

Si lanzo desde Steam, aparece una ventana emergente "Instalando controladores" o algo así y desactiva el galionino antes de iniciar el juego.
Sin embargo, el lanzamiento del juego a través de scripts descargados no deshabilita el galionino y el juego se inicia con él.

@tuxutku Algunos de los juegos con los que he probado Gallium Nine Standalone en Proton 4.11 se bloquean silenciosamente o, independientemente de este problema, se inician como de costumbre, pero con la capa de traducción DX9 a OpenGL de Wine en su lugar. Todos funcionan bien en 4.2-9 con Gallium Nine Standalone instalado.

Lo peor es que no hay una manera fácil de saber si el galionino se está ejecutando en primer lugar.

No exactamente. Si ejecuta Steam Client desde CLI, verá un mensaje de Gallium Nine en verde o rojo cuando comience un juego; sin embargo, en este caso, no se descarta nada.

Con PROTON_LOG=1 obtengo este error al intentar ejecutar GTA SA:

10264.098:0031:0032:err:module:import_dll Library d3d9.dll (which is needed by L"Z:\\var\\home\\user\\.local\\share\\Steam\\steamapps\\common\\Grand Theft Auto San Andreas\\gta-sa.exe") not found

No sé qué lo causa, ni cómo lo soluciono, pero, con suerte, alguien puede descubrir la raíz de este problema juntando todas las pistas.

Voy a abrir un nuevo problema sobre la desactivación del cliente de Steam antes del lanzamiento del juego, tengo este problema en otro juego

Hola @tuxutku , esta solicitud de función es el lugar adecuado para discutir el nuevo comportamiento. Parece que el cambio ocurrió al mismo tiempo que se agregó d9vk a Proton y puede ser un efecto secundario de Proton manejando eso.

Lo peor es que no hay una manera fácil de saber si el galionino se está ejecutando en primer lugar.

No exactamente. Si ejecuta Steam Client desde CLI, verá un mensaje de Gallium Nine en verde o rojo cuando comience un juego; sin embargo, en este caso, no se descarta nada.

Con PROTON_LOG=1 obtengo este error al intentar ejecutar GTA SA:

10264.098:0031:0032:err:module:import_dll Library d3d9.dll (which is needed by L"Z:\\var\\home\\user\\.local\\share\\Steam\\steamapps\\common\\Grand Theft Auto San Andreas\\gta-sa.exe") not found

@Bryophyllum no es tan fácil como ver si se publica Native Direct3D 9 v0.5.0.356-release is active. For more information visit https://github.com/iXit/wine-nine-standalone .
Por ejemplo, al lanzar el juego Tomb Raider 2013 desde el comando dump ./run , publica la línea porque el lanzador usa directx9, pero no el juego. Tuve que modificar un registro con regedit para jugar el juego con galionino

Los juegos con VAC solían funcionar con wine afaik. pero ahora no lo hacen por alguna razón. CSGO se queja de que las firmas de archivos no coinciden. TF2 no da ninguna razón específica.

Por alguna razón, PROTON_DUMP_DEBUG_COMMANDS=1 no funcionó en Team Fortress 2 y tuve que copiar y modificar un script de otro juego.

#!/bin/bash
#Run game or given command in environment

cd "/home/utku/took/happytosharemysteamapps/steamapps/common/Team Fortress 2"
DEF_CMD=("/home/utku/took/happytosharemysteamapps/steamapps/common/Team Fortress 2/hl2.exe" "-steam" "-dev" "-secure" "-game" "tf" "-w" "1366" "-h" "768")
PATH="/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/bin/:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/bin:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/bin:/home/utku3/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/utku3/.local/bin" \
    TERM="xterm" \
    WINEDEBUG="-all" \
    WINEDLLPATH="/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib64//wine:/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib//wine" \
    LD_LIBRARY_PATH="/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib64/:/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib/:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_64:/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/usr/local/lib:/usr/local/lib/libstrangle/lib32:/usr/local/lib/libstrangle/lib64:/lib/x86_64-linux-gnu:/lib32:/libx32:/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib:" \
    WINEPREFIX="/home/utku/took/happytosharemysteamapps/steamapps/compatdata/440/pfx/" \
    WINEESYNC="1" \
    SteamGameId="440" \
    SteamAppId="440" \
    WINEDLLOVERRIDES="steam.exe=b;mfplay=n;d3d11=n;d3d10=n;d3d10core=n;d3d10_1=n;dxgi=n;d3d9=n" \
    STEAM_COMPAT_CLIENT_INSTALL_PATH="/home/utku2/.local/share/Steam" \
    "/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/bin/wine" steam.exe "${@:-${DEF_CMD[@]}}"

2019-10-29_19:24:52:660867031
Salida TF2

2019-10-29_19:31:59:209339350
salida csgo

También hay un script generado automáticamente por PROTON_DUMP_DEBUG_COMMANDS=1 :

#!/bin/bash
#Run game or given command in environment

cd "/mnt/WD-green/common/Counter-Strike Global Offensive"
DEF_CMD=("/mnt/WD-green/common/Counter-Strike Global Offensive/csgo.exe" "-steam")
PATH="/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/bin/:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/bin:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/bin:/home/utku3/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/utku3/.local/bin" \
    TERM="xterm" \
    WINEDEBUG="-all" \
    WINEDLLPATH="/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib64//wine:/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib//wine" \
    LD_LIBRARY_PATH="/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib64/:/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/lib/:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_64:/usr/lib/x86_64-linux-gnu/libfakeroot:/lib/i386-linux-gnu:/usr/local/lib:/usr/local/lib/libstrangle/lib32:/usr/local/lib/libstrangle/lib64:/lib/x86_64-linux-gnu:/lib32:/libx32:/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu:/home/utku2/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib:" \
    WINEPREFIX="/home/utku/took/happytosharemysteamapps/steamapps/compatdata/730/pfx/" \
    WINEESYNC="1" \
    SteamGameId="730" \
    SteamAppId="730" \
    WINEDLLOVERRIDES="steam.exe=b;mfplay=n;d3d11=n;d3d10=n;d3d10core=n;d3d10_1=n;dxgi=n;d3d9=n" \
    STEAM_COMPAT_CLIENT_INSTALL_PATH="/home/utku2/.local/share/Steam" \
    "/home/utku2/.local/share/Steam/compatibilitytools.d/Proton-4.15-GE-4/dist/bin/wine" steam.exe "${@:-${DEF_CMD[@]}}"

No he probado csgo pero tf2 se ejecuta y no tengo problema de vacío bajo vapor de vino

@tuxutku ¿

@tuxutku
¿Qué tiene esto que ver con el galio 9?

Te lo preguntaba porque tengo curiosidad genuina. dejar los votos negativos

@tuxutku ¿

¿Porque los juegos de la fuente 1 no funcionan lo suficientemente bien en Linux?
Les fue peor con el galionino, pero eso no significa que a los puertos nativos les esté yendo bien. Lo hacen muy mal en comparación con sus homólogos de Windows.
Los nuevos mapas de zonas de peligro de CS: GO no se pueden reproducir (~ 15 fps) en amd a10-9620p + rx 540.
Cuando hay demasiada geometría en el escenario, la velocidad de fotogramas cae considerablemente en todos los juegos de fuente 1 que he probado hasta ahora (amanecer nuclear, cs: go, tf2, half-life 2, half-life 2 team death match).
left4dead2 es una excepción y en realidad utiliza gpu lo suficientemente bien

la suposición es "el código es malo" en lugar de "las llamadas se interpretan a través de GL en lugar de vulkan", ¿verdad?

si tienes un juego vulkan-native funcional, ¿los resultados no serían mejores el 100% del tiempo en nativo?

Dado que esto está disponible externamente desde proton con protontricks, diría que esta solicitud de función está bastante reemplazada.

Si se puede solucionar manualmente, podríamos cerrar la mitad de los problemas aquí.

Dado que esto está disponible externamente desde proton con protontricks, diría que esta solicitud de función está bastante reemplazada.

Steam siempre desactiva el galionino al iniciar el juego o al confirmar la caché. Además, no hay una bandera de protones para activarlo y requiere actualizaciones manuales.

Descubrí que la galionina no solo es a menudo más rápida que la traducción predeterminada de wined3d (en r600), sino que parece solucionar problemas con la pantalla completa para muchos juegos (comandante supremo FA, por ejemplo). Agregarlo a proton parece que sería bastante fácil dada la versión independiente, no diría que debería ser una opción "compatible", pero sería bueno tenerla incorporada como una solución / mejora.

Creo que esto es compatible desde el protón 5.

EDITAR: nvm estoy pensando en d9vk

Creo que esto es compatible desde el protón 5.

EDITAR: nvm estoy pensando en d9vk

Sí ... d9vk no funcionará con r600, desafortunadamente. : /

Este es un problema que debe tenerse en cuenta, deberíamos poder habilitar el galio nueve sin recurrir a hacks (como protontricks) solo por variables de entorno.

Es fácil de arreglar (ustedes ya tienen muchas bifurcaciones y soluciones para arreglar esto), Gallium Nine ahora tiene mejor soporte de GPU (ahora funciona con los controladores más recientes de Intel) y brinda un aumento de rendimiento de 1.5-2x sobre DXVK y wined3d.

Y ya tiene un montón de informes de juegos que hablan de una compatibilidad mejorada con solo usar Gallium Nine.

https://github.com/ValveSoftware/Proton/issues/173#issuecomment -499869941
https://github.com/ValveSoftware/Proton/issues/255#issuecomment -415997284
https://github.com/ValveSoftware/Proton/issues/355#issuecomment -415972910
https://github.com/ValveSoftware/Proton/issues/554#issue -354016973
https://github.com/ValveSoftware/Proton/issues/770#issue -354455950
https://github.com/ValveSoftware/Proton/issues/1073#issuecomment -473703760
https://github.com/ValveSoftware/Proton/issues/2704#issuecomment -518029014

Sé que probablemente esto no sea una prioridad para ti, ya que esto solo se aplica a los juegos antiguos, pero vamos, hay un catálogo enorme de juegos geniales que se beneficiarán de Gallium Nine.

¿Alguna actualización sobre este tema? @popsUlfr lamentablemente se detuvo para proporcionar nuevas compilaciones de Proton con soporte nativo D3D9 hace más de un año.

¿Alguna actualización sobre este tema? @popsUlfr lamentablemente se detuvo para proporcionar nuevas compilaciones de Proton con soporte nativo D3D9 hace más de un año.

He estado usando protón normal + galio nueve de forma independiente. Lo he estado instalando con winetricks y deshabilito DXVK

He estado usando protón normal + galio nueve de forma independiente. Lo he estado instalando con winetricks y deshabilito DXVK

¡Bueno saber! ¿Qué versión de Proton usaste y cómo desactivaste DXVK? WineD3D estaba interfiriendo la última vez que lo intenté.

@ crt0mega galliumnine ("d3d9") siempre será reemplazado por dxvk o wined3d

Proton-5.9-GE-8-ST/proton:
            if "wined3d" in g_session.compat_config:
                dxvkfiles = ["dxvk_config"]
                wined3dfiles = ["d3d11", "d3d10", "d3d10core", "d3d10_1", "d3d9"]
            else:
                dxvkfiles = ["dxvk_config", "d3d11", "d3d10", "d3d10core", "d3d10_1", "d3d9"]
                wined3dfiles = []

debe ser arreglado ...

o podemos usar Proton-5.9-GE-8-ST / dist / bin / wine sin proton (y sin juegos de steam)
ps: configuración de galionino:
WINE = "./ Proton-5.9-GE-8-ST / dist / bin / wine" WINEPREFIX = ~ / .steam / steam / steamapps / compatdata / 372000 / pfx / ./Proton-5.9-GE-8-ST/ correcciones de protones / trucos de vino: fuerza de galionino

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

AwesamLinux picture AwesamLinux  ·  3Comentarios

AwesamLinux picture AwesamLinux  ·  3Comentarios

matou68 picture matou68  ·  3Comentarios

Dakunier picture Dakunier  ·  3Comentarios

AwesamLinux picture AwesamLinux  ·  3Comentarios