qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] OpenGL in qemu


From: Nik
Subject: Re: [Qemu-devel] OpenGL in qemu
Date: Wed, 30 Apr 2008 11:07:36 +1000
User-agent: Thunderbird 2.0.0.12 (X11/20080226)

Hi Paul,

Thanks for your concise and helpful comments.

Thank you also for your link to Gallium. That is a very interesting development, which I think is long overdue.

Regarding the importance of Direct3D, it is of little importance to me personally and what I am trying to achieve. I need to get CAD packages like Archicad and Autocad running well in a Windows guest on a linux host, and so OpenGL support in the guest is all I actually need.

However, if I can find a solution which has a good longer-term future and supports the greatest range of applications and users, then I am very interested, so long as it doesn't make the implementation overly complex. :o)

Regarding Gallium, I understand you are saying that a generic gallium driver in the guest OS could forward to a gallium system on the host?

Do you think that a gallium -> opengl adaptor could be readily written?

... Actually, given that gallium models graphics hardware, perhaps a gallium driver in the guest could talk almost directly to a gallium driver on the host?

Looking at the work involved, I think it best to get an opengl -> opengl connection working in the short-term.

This is because that (should) represent a mostly 1-1 mapping which can hopefully be auto-generated to a large degree. And the result can talk to a range of current graphics hardware using existing drivers.

In addition, it seems to me that a gallium -> opengl connection could be complex to write, as it is converting from hardware abstraction (gallium) to software abstraction (opengl).

And finally, there are not likely to be gallium drivers for the current nVidia or ATI graphics cards in the immediate future.

At the same time or immediately after the opengl -> opengl connection is being written, a gallium -> gallium connection could be built along the same lines. (The standard gallium softpipe implementation would also be a good place to start.) Then all that is needed is to wait for the rest of the gallium support for existing hardware to fill in.

Then for non-opengl Windows support, a gallium state tracker for Direct3D would allow Windows guest OSes to forward through a gallium driver to a host gallium system.

Paul Brook wrote:
Getiing basic OpenGL working is fairly easy. The tricky bits are:

- Multiple contexts.
I presume you are referring to the question of whether to represent multiple contexts in the guest OS as one or multiple contexts in the host?
- Window manager integration, and cliprects.
- OpenGL extensions, particularly if you're going to be migrating between different hosts..
I presume we need a way for the opengl driver in the guest to correctly report the abilities of the host opengl (and video card)?


Thanks again for all your advice.

Cheers!
Nik




reply via email to

[Prev in Thread] Current Thread [Next in Thread]