Closed nooodles2023 closed 11 months ago
HI,
This project was at the time an experiment trying to explore opengl support for Windows. The source of truth for any development regarding virgl3d can be found on the main repo: https://gitlab.freedesktop.org/virgl/virglrenderer
As I haven't been involved in virgl3d development since then, my knowledge is not up-to-date, and I couldn't give you a real or accurate answer regarding any kind of opengl-virgl3d translation spec or rule. If I were you, I'd look at what's being done on Linux, and how they track opengl state and generate virgl3d commands. I believe you should still be able to start looking at https://gitlab.freedesktop.org/mesa/mesa/-/tree/main/src/virtio , but haven't follow the latest on this topic either.
IIRC, at the time,the next steps were to:
use mesa on windows to translate opengl to virtio-gpu commands, and find out how to interface with the windows windowing system. (Because as you could see, the framebuffer created on the demo was showing at 0;0, not respecting window's windows).
Good luck!
Gald to get your reply and thank you for your advice, I'm trying to start looking at mesa/virgl on linux😊
Thanks for this link! (and @max8rr8 for the work, cool stuff!). I've updated the README to mention this PR, hope this will redirect people to the correct project).
I also have implemented my own project about opengl acceleration on windows guest vm. https://github.com/tenclass/mvisor-win-vgpu-driver
I had read your articles about virtio-gpu and compiled ICD and DOD drivers. Great! It worked on win10 guest with qemu , thank you very much. Now I want to implement all the opengl commands to make software in vm like cinema4d run with 3d acceleration from host, but I'm a green hand in opengl, I just confused about the relationship between opengl and virgl3d command. Is there any official document about it and could you give me some advice or some articles about it?