[Bug 46923] New: X-Tension, X-Beyond The Frontier: Dynamic light breaks after opening up a menu
https://bugs.winehq.org/show_bug.cgi?id=46923 Bug ID: 46923 Summary: X-Tension, X-Beyond The Frontier: Dynamic light breaks after opening up a menu Product: Wine Version: 4.4 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-d3d Assignee: wine-bugs(a)winehq.org Reporter: 19non91(a)gmail.com Distribution: --- Created attachment 64026 --> https://bugs.winehq.org/attachment.cgi?id=64026 lspci | grep VGA and Xorg gpu config In place of thousand words: https://imgur.com/a/7oQESA1 -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=46923 --- Comment #1 from Non <19non91(a)gmail.com> --- Comment on attachment 64026 --> https://bugs.winehq.org/attachment.cgi?id=64026 lspci | grep VGA and Xorg gpu config
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09) 01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Mars [Radeon HD 8670A/8670M/8750M]
Section "Device" Identifier "Intel Graphics" Driver "intel" Option "AccelMethod" "sna" Option "TearFree" "true" EndSection
Section "Device" Identifier "Radeon" Driver "radeon" Option "AccelMethod" "exa" Option "DRI" "3" Option "TearFree" "on" Option "ColorTiling" "on" Option "ColorTiling2D" "on" Option "EXAVSync" "yes" EndSection
Linux mbs 5.0.4-arch1-1-ARCH #1 SMP PREEMPT Sat Mar 23 21:00:33 UTC 2019 x86_64 GNU/Linux
-- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=46923 --- Comment #2 from Non <19non91(a)gmail.com> --- I've found older bugreport on Steam version https://bugs.winehq.org/show_bug.cgi?id=34611 And also reference video from Snowdrake: https://youtu.be/EX5CdUYiYp4 Possible errors, which I also get on the recent 4.4 wine version: 0031:fixme:d3d:state_flushbatch Render state WINED3D_RS_FLUSHBATCH not implemented yet. 0031:fixme:d3d:state_subpixel Render state WINED3D_RS_SUBPIXEL not implemented yet. However now dynamic lights work, but only until you open up a menu. And then only with menu opened or until you reload save / land on a station. So I guess it could be fixed without too much effort? -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=46923 Paul Gofman <gofmanp(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |gofmanp(a)gmail.com -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=46923 --- Comment #3 from Paul Gofman <gofmanp(a)gmail.com> --- I tested "X-Beyond The Frontier", steam version, and could reproduce the problem. Should be fixed now by commit addc611b2ac56d4fc59a9df8f129f96ea4105773. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=46923 --- Comment #4 from Non <19non91(a)gmail.com> --- In short: After commit addc611b2ac56d4fc59a9df8f129f96ea4105773 I couldn't reproduce the bug. I've built wine from git, commit 56404595d5c42168d4fd4c1ec3a1b802a6aab5c1 and it indeed got fixed. That was really fast. In the modding community few smart minds created tools to disassemble some of the game code and translate it to the C equivalent. I thought I could check what causes the problem in the menu function, and found this game code, which strangely runs two times in a row: TMENU.me_Inst3D[TMENU.me_NumInst3D] = B3D_LightAlloc(); if(TMENU.me_Inst3D) { B3D_LightSetColor(TMENU.me_Inst3D[TMENU.me_NumInst3D], 175, 175, 175); B3D_InstSetPos(TMENU.me_Inst3D[TMENU.me_NumInst3D], -1100000000, 330000000, -330000000); B3D_InstAddToScene(TMENU.me_Inst3D[TMENU.me_NumInst3D], TMENU.me_CompScene3D); TMENU.me_Path[TMENU.me_NumInst3D] = -1; TMENU.me_NumInst3D = TMENU.me_NumInst3D + 1; } I don't know how this B3D functions implemented in exe file, but I thought I should try to skip this code altogether. So I've made JUMP in asm, which skips this code and after that menus started to work fine without breaking dynamic lights. Although light colors in the game gone a little odd. Was working on workaround scripts for posting in WineDB (extract game files, patch binary file, pack them back), and you fixed it for good before I could finish. Thanks, Paul. :) -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=46923 Józef Kucia <joseph.kucia(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |addc611b2ac56d4fc59a9df8f12 | |9f96ea4105773 Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED CC| |joseph.kucia(a)gmail.com --- Comment #5 from Józef Kucia <joseph.kucia(a)gmail.com> ---
Should be fixed now by commit addc611b2ac56d4fc59a9df8f129f96ea4105773.
-- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=46923 --- Comment #6 from Paul Gofman <gofmanp(a)gmail.com> --- (In reply to Non from comment #4)
I thought I could check what causes the problem in the menu function, and found this game code, which strangely runs two times in a row: ... So I've made JUMP in asm, which skips this code and after that menus started to > work fine without breaking dynamic lights.
I don't think there is something particularly special or wrong in respect to the light management in this game's code, apart from the fact it is Directx 4 game and the lights were attached to viewports in Directx X < 7. I came across some problems managing that in Wine while testing the other bug related to lighting in some other ddraw4 games. Now they are hopefully fixed and it might fix a number of ddraw2-4 titles. Just to note, lighting in ddraw1 still does not fully work for completely different reasons. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=46923 Alexandre Julliard <julliard(a)winehq.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED --- Comment #7 from Alexandre Julliard <julliard(a)winehq.org> --- Closing bugs fixed in 4.6. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=46923 Michael Stefaniuc <mstefani(a)winehq.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |4.0.x -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=46923 Michael Stefaniuc <mstefani(a)winehq.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|4.0.x |--- --- Comment #8 from Michael Stefaniuc <mstefani(a)winehq.org> --- Removing the 4.0.x milestone from bug fixes included in 4.0.2. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (1)
-
wine-bugs@winehq.org