Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

winex11.drv: Support child window rendering for Vulkan via XComposite #91

Closed

Conversation

stevenlafl
Copy link

In relation to ValveSoftware/Proton#3886 and ValveSoftware/Proton#3681 the Workshop Tools have child windows (the preview panes, Hammer views, etc.) that do not display: 006b:fixme:vulkan: X11DRV_vkCreateWin32SurfaceKHR Application requires child window rendering , which is not implemented yet!

Upstream issue: https://bugs.winehq.org/show_bug.cgi?id=45277

@aeikum
Copy link
Collaborator

aeikum commented May 18, 2020

If I'm reading that upstream bug report correctly, this patch still has problems, right?

@stevenlafl
Copy link
Author

stevenlafl commented May 18, 2020

Yeah, you might have seen my comment and the one about Z order (which does appear to happen precisely as one predicted, if that's why child windows laid in top of each other, such as with Hammer's Top/Side/etc views appear to flash back and forth). I wanted to keep this here for posterity with the other PR but serves to shine a little more light on it as this functionality is pretty core to getting that (in my opinion flagship) product working right with wine/Proton.

It does -work-, but I am seeing is that basically only one child window appears to render at a time (so looks a little like flashing), like with having multiple 3d views together that both update as an object is being manipulated (such as in a modeling program where looking at both Top and Side views at the same time in different child windows). It just needs some tweaks.

I'm by no means an expert in Wine, so if anyone has a comment on whether those two particular findings are indeed correct, Workshop Tools is certainly a fantastic test case for someone who is.

@stevenlafl
Copy link
Author

Placing this here for reference, see Accelerated Compositing https://blogs.igalia.com/carlosgc/2016/09/20/webkitgtk-2-14/

@jqadev
Copy link

jqadev commented Apr 2, 2021

@aeikum is this PR related to child window rendering mentioned in the Proton Experimetal changelog https://github.com/ValveSoftware/Proton/wiki/Changelog#available-in-proton-experimental-as-of-20210401
?

@kisak-valve
Copy link
Member

Hello @jqadev, you can compare 9145d36 from the experimental_6.3 branch to the merge request and assess any changes yourself.

@jqadev
Copy link

jqadev commented Apr 2, 2021

Thank you @kisak-valve. I missed it on a phone.

@rbernon
Copy link
Collaborator

rbernon commented Oct 19, 2022

We have this merged in some different form now, so I'm closing this MR.

The version in proton could benefit from improvements, and #152 tries to make it better, but the code now has some interactions with other hacks that makes it difficult to change. It'd probably be better redone from scratch with all the requirements in mind, and upstreamed.

@rbernon rbernon closed this Oct 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants