Comments (14)
Venemo, who works on iris support, says there is issues with mesa master.
I don't know exactly which version would work, best would be to wait a week or two this gets fixed.
from wine-nine-standalone.
There is a regression in mesa 19.1 and master, which affects iris + nine. We are currently working on fixing it. I would suggest to wait a couple of weeks until this is resolved.
from wine-nine-standalone.
hm, thanks for fast reply. I checked 19.1 (one of the early commits with enabled iris) and the same result.
Will wait for updates, thanks again. Should this issue be created in mesa BZ or it is already exist there?
from wine-nine-standalone.
It's enough that we have this issue here, no need to duplicate it in the mesa BZ.
from wine-nine-standalone.
Technical details:
Since this commit nine will manually allocate a GPU resource and give that to the driver to use in slot 0, whereas previously it used the in-memory user_buffer
. This is all good and may yield more optimal behavior than before.
However, iris treats cbuf0 in a special way: what you can see in iris_setup_uniforms
is that iris turns all system values into cbuf0 uniforms and shifts all other uniform usage that were previously in cbuf0 to match this. So, essentially, in the current implementation, iris must have both the sysvals and the cbuf0 uniforms in the same GPU resource.
Possible solutions:
- Copy the user-supplied resource into the buffer that is allocated by
upload_uniforms
. This is easy and I made a patch that does this but in practice it performs really badly. - Change nine so that it keeps using
user_buffer
on iris. This is a hack, and may result in sub-par performance, and a maintainability burden. - Change iris in such a manner that it puts the sysvals into a separate UBO slot, and allow the state tracker to use cbuf0 just like any other, for its own purposes.
I think 3. is the correct solution here, because it reduces the complexity of the driver (so it won't need to treat cbuf0 differently) while also improving its flexibility.
from wine-nine-standalone.
@DenKos363 Just one more thought for you: iris is not yet the default intel driver, so you need to set the MESA_LOADER_DRIVER_OVERRIDE=iris
environment variable if you want to use it.
from wine-nine-standalone.
@Venemo sure, I know this and do so. Below you may see script I am using for running the game.
Thank you one more time. Will wait for updates and be happy to test the fix as soon as it will be provided.
export LIBGL_DRIVERS_PATH=/home/ubutu/mesa_versions/mesa-git-12.06-iris/lib/x86_64-linux-gnu/dri/
export MESA_LOADER_DRIVER_OVERRIDE=iris
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/ubutu/mesa_versions/mesa-git-12.06-iris/lib/x86_64-linux-gnu/
glxinfo -B
D3D_MODULE_PATH=/home/ubutu/mesa_versions/mesa-git-12.06-iris/lib/x86_64-linux-gnu/d3d/ "$@"
from wine-nine-standalone.
Here is a work-in-progress MR to fix iris with nine: https://gitlab.freedesktop.org/mesa/mesa/merge_requests/1104
from wine-nine-standalone.
@DenKos363 Something seems not right in your environment. The error message you get indicates that it didn't load nine at all.
from wine-nine-standalone.
When you get something working, I'd be happy to test it.
I have the same hw as op and looking to get gallium-nine working with Starcraft 2.
I'm running on gentoo, currently kernel 5.1.9.
The current patch compiles with head, but mesa seems to crash out on anything, even ninewinecfg.exe.
from wine-nine-standalone.
@tomboy-64 Starcraft 2 works for me with this patch: https://gitlab.freedesktop.org/mesa/mesa/merge_requests/1104
Though note that both iris and nine's iris support are experimental at this time, meaning there are still issues that we need to iron out. Two issues I know of are that I don't see any shadows in SC2, and the GPU hangs when I click the quit button.
from wine-nine-standalone.
Hello guys, sorry for long reply. I managed to successfully apply gallium-nine to the game and run it, but found 2 issues:
-
with this commit (e81392868e6827360762fff38baf2c10c1f3b7f0 is the first bad commit) game started crashing with this assertion:
[1;32mNative Direct3D 9 v0.4.0.294-release is active. For more information visit https://github.com/iXit/wine-nine-standalone[0m 81249.157:0029:002a:fixme:d3d9nine:DRIPresentGroup_GetMultiheadCount (0x1ae2c0), stub! 81249.157:0029:002a:fixme:d3d9nine:DRIPresentGroup_GetMultiheadCount (0x1ae2c0), stub! ../src/gallium/drivers/iris/iris_resource.c:855: iris_resource_get_handle: Assertion
aux_state == ISL_AUX_STATE_RESOLVED || aux_state == ISL_AUX_STATE_PASS_THROUGH' failed.` -
Before this commit game launches with a black screen - and then (after some time) - crashes.
here is a report in Bugzilla https://bugs.freedesktop.org/show_bug.cgi?id=111150
from wine-nine-standalone.
Does iris+nine work for you guys by now?
from wine-nine-standalone.
hi, sorry for delay, I would close this issue for now, because I was able to apply drivers to the game. Other issues are not related no gallium-nine, at least for now.
Thanks for the help
from wine-nine-standalone.
Related Issues (20)
- Wine 7.12 problem: err:d3d9nine:nine_set Couldn't load d3d9-nine.dll: L"Fehlerhaftes EXE-Format f\00fcr %1.\r\n" HOT 14
- 320 frames per second maximum HOT 1
- Constant limit issues with r500 hardware HOT 20
- Some games work while others run up to main menu & don't load to in-game HOT 22
- Prince of persia Warrior Within HOT 10
- Github workflow failed with ubuntu-latest HOT 6
- No compatible GPU found HOT 1
- Gallium Nine (winetricks) seems to be broken since Wine 8.3 HOT 35
- Setting a native DLL override for d3d9 is incorrect HOT 6
- Nine only works when installed to system32/syswow64 HOT 17
- Native Direct3D 9 will be unavailable HOT 3
- Dx10, dx11 HOT 4
- Dragon HOT 2
- Using gallium-nine, CAD software repeatedly opening connections to the X server HOT 3
- Make the release produce files that don't need renaming HOT 2
- Hidden & Dangerous Deluxe HOT 4
- Gallium Nine (winetricks) seems to be again broken in Wine 8.13 HOT 5
- whats the difference between this program and the other wines? HOT 1
- Miss of textures on Grand Chase HOT 1
- ninewinecfg fails to enable nine - err:d3d9nine:executeCmdline CreateProcessA failed, error=2 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from wine-nine-standalone.