[vbox-dev] Chromium WebGL vs Angle WebGL

Michael Thayer michael.thayer at oracle.com
Mon Apr 29 13:14:33 PDT 2013


Hello Michael,

Once again, what would you expect that to gain us that our existing 
solution can't provide?

Regards,

Michael

On 29/04/13 22:11, Michael Slavitch wrote:
> Not there yet.
>
> I'm glad that there's a fork. Has there been any thought of revisiting the model towards something more akin to Gallium3D?
>
>
> -----Original Message-----
> From: Michael Thayer <michael.thayer at oracle.com>
> Date: Mon, 29 Apr 2013 22:03:33
> To: Michael Slavitch<slavitch at gmail.com>
> Cc: <vbox-dev at virtualbox.org>
> Subject: Re: [vbox-dev] Chromium WebGL vs Angle WebGL
>
> Hello Michael,
>
> VirtualBox is not using upstream Chromium - we have forked it and
> maintaining our version ourselves.  There is certainly room for
> improvement there, and you are welcome to contribute, but it is being
> actively worked upon on our side.  I still haven't find anything on
> ANGLE through google to indicate that it is not Windows-only (except
> for: "In addition to OpenGL ES 2.0 and EGL 1.4 libraries, ANGLE also
> provides a GLSL ES to GLSL translator [...] The translator code is fully
> independent of the rest of ANGLE code and resides in $BASE/src/compiler.
> Since the translator is supposed to be a cross-platform utility, it uses
> a different build system GYP, which generates native project files for
> all supported platforms."[1]  Do you have a pointer to something relevant?
>
> Regards,
>
> Michael
>
> [1] http://code.google.com/p/angleproject/wiki/DevSetup
>
> On 29/04/13 21:36, Michael Slavitch wrote:
>> The VirtualBox 3D driver is based on the Chromium OpenGL proxy tool.
>> As far as I know Chromium does not support Mac OS X as a platform.
>> There hasn't been an official release since 2006. From what I have
>> seen on MacOS hosts 3D rendering is done by the host using a mix of
>> software and hardware calls.  The performance of 3D on Windows guests
>> running on MacOS and Linux hosts is somewhat lacking.
>>
>> Angle is not Windows only, it a cross-platform library that wraps
>> local implementations of OpenGL (MacOS, Linux) or DirectX (9 and 10)
>> (Windows) with WebGL to access hardware-accelerated libraries using a
>> single consistent API.  3D tasks such as shading are done in hardware,
>> not software, using common calls. It is used on Mac OS X, Linux, and
>> in mobile platforms, as well as in Windows. The major use has been in
>> browsers but that is only a circumstance of the energy going towards
>> web applications.
>>
>> Now, I might be wrong but I would be very leery of depending on API's
>> from a project that hasn't seen a revision in seven years, and looks
>> to be orphaned, when there is a library that allows VirtualBox to
>> create host environments that can provide a consistent
>> hardware-accelerated graphics API to guest, especially one that is
>> still in active development.  There seems to be little thought put in
>> to 3D support.  This has the potential of changing that.
>>
>> Regards
>>
>> Michael
>>
>>
>> On Mon, Apr 29, 2013 at 2:49 PM, Michael Thayer
>> <michael.thayer at oracle.com> wrote:
>>> Hello Michael,
>>>
>>> Perhaps I am missing something here, but first I have trouble seeing what
>>> ANGLE should provide which we are currently lacking (in fact I am not quite
>>> sure what you feel is wrong with our current solution at all which cannot be
>>> fixed in place), and secondly it looks from its web page like a Windows-only
>>> library to run OpenGL ES on top of DirectX rather than a cross-platform one
>>> to translate DirectX into WebGL.  I am not even quite clear either why you
>>> think we need such a library - are you considering Windows guests being
>>> displayed in a host web browser?  And if so, do you think that ANGLE would
>>> be suitable for being embedded into a guest display driver?
>>>
>>> Regards,
>>>
>>> Michael
>>>
>>>
>>> On 29/04/13 19:09, Michael Slavitch wrote:
>>>>
>>>> In other words, it's an open-source library that can do for VirtualBox
>>>> what Mesa/Gallium3D does for VMWare: Present a consistent OpenGL 3D
>>>> library no matter the underlying platform.  It has a BSD license.
>>>>
>>>>
>>>> On Mon, Apr 29, 2013 at 12:49 PM, Michael Slavitch <slavitch at gmail.com>
>>>> wrote:
>>>>>
>>>>> The latter is what's used in Oracle VirtualBox to provide WebGL
>>>>> services to pass graphics commands to the host.
>>>>>
>>>>> That's what Angle provides, as a library, for applications that can
>>>>> use it, and for the same reason, as it allows the same library to
>>>>> offer near-native graphics support cross-platform, such that DirectX
>>>>> API commands can be translated into WebGL calls supported on myriad
>>>>> platforms.  They support translation of DirectX 9 and DirectX 10.
>>>>>
>>>>>
>>>>>
>>>>> On Mon, Apr 29, 2013 at 12:42 PM, Michael Slavitch <slavitch at gmail.com>
>>>>> wrote:
>>>>>>
>>>>>> The latter is what's used in Oracle VirtualBox to provide WebGL
>>>>>> services, correct?  That's what Angle provides, as a library, for
>>>>>> applications that can use it.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Mon, Apr 29, 2013 at 12:13 PM, Michael Thayer
>>>>>> <michael.thayer at oracle.com> wrote:
>>>>>>>
>>>>>>> Hello Michael,
>>>>>>>
>>>>>>> I think you have the wrong Chromium there[1][2].
>>>>>>>
>>>>>>> Regards,
>>>>>>>
>>>>>>> Michael
>>>>>>>
>>>>>>> [1] http://www.chromium.org/
>>>>>>> [2] http://chromium.sourceforge.net/
>>>>>>>
>>>>>>>
>>>>>>> On 29/04/13 17:59, Michael Slavitch wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>> Has anyone investigated replacing the Chromium WebGL used in
>>>>>>>> Virtualbox with the capabilities offered by Angle?  The result would
>>>>>>>> give Windows guests on Linux/MacOS hosts access to
>>>>>>>> hardware-accelerated WebGL libraries on the underlying hosts,  and
>>>>>>>> achieve parity with host implementations when using Direct3D 10 or
>>>>>>>> above.
>>>>>>>>
>>>>>>>> Deets here:
>>>>>>>>
>>>>>>>> https://code.google.com/p/angleproject/
>>>>>>>>
>>>>>>>> ANGLE is a conformant implementation of the OpenGL ES 2.0
>>>>>>>> specification that is hardware‐accelerated via Direct3D. ANGLE
>>>>>>>> v1.0.772 was certified compliant by passing the ES 2.0.3 conformance
>>>>>>>> tests in October 2011. ANGLE also provides an implementation of the
>>>>>>>> EGL 1.4 specification.
>>>>>>>>
>>>>>>>> ANGLE is used as the default WebGL backend for both Google Chrome and
>>>>>>>> Mozilla Firefox on Windows platforms. Chrome uses ANGLE for all
>>>>>>>> graphics rendering on Windows, including the accelerated Canvas2D
>>>>>>>> implementation and the Native Client sandbox environment.
>>>>>>>>
>>>>>>>>>>
>>>>>>>> Portions of the ANGLE shader compiler are used as a shader validator
>>>>>>>> and translator by WebGL implementations across multiple platforms. It
>>>>>>>> is used on Mac OS X, Linux, and in mobile variants of the browsers.
>>>>>>>> Having one shader validator helps to ensure that a consistent set of
>>>>>>>> GLSL ES shaders are accepted across browsers and platforms.
>>>>>>>>
>>>>>>>> The shader translator can be used to translate shaders to other
>>>>>>>> shading languages, and to optionally apply shader modifications to
>>>>>>>> work around bugs or quirks in the native graphics drivers. The
>>>>>>>> translator targets Desktop GLSL, Direct3D HLSL, and even ESSL for
>>>>>>>> native GLES2 platforms.
>>>>>>>> <<<
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> vbox-dev mailing list
>>>>>>>> vbox-dev at virtualbox.org
>>>>>>>> https://www.virtualbox.org/mailman/listinfo/vbox-dev
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> ORACLE Deutschland B.V. & Co. KG   Michael Thayer
>>>>>>> Werkstrasse 24                     VirtualBox engineering
>>>>>>> 71384 Weinstadt, Germany           mailto:michael.thayer at oracle.com
>>>>>>>
>>>>>>> Hauptverwaltung: Riesstr. 25, D-80992 München
>>>>>>> Registergericht: Amtsgericht München, HRA 95603
>>>>>>> Geschäftsführer: Jürgen Kunz
>>>>>>>
>>>>>>> Komplementärin: ORACLE Deutschland Verwaltung B.V.
>>>>>>> Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
>>>>>>> Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
>>>>>>> Geschäftsführer: Alexander van der Ven, Astrid Kepper, Val Maher
>>>>
>>>>
>>>> _______________________________________________
>>>> vbox-dev mailing list
>>>> vbox-dev at virtualbox.org
>>>> https://www.virtualbox.org/mailman/listinfo/vbox-dev
>>>>
>>>
>>>
>>> --
>>> ORACLE Deutschland B.V. & Co. KG   Michael Thayer
>>> Werkstrasse 24                     VirtualBox engineering
>>> 71384 Weinstadt, Germany           mailto:michael.thayer at oracle.com
>>>
>>> Hauptverwaltung: Riesstr. 25, D-80992 München
>>> Registergericht: Amtsgericht München, HRA 95603
>>> Geschäftsführer: Jürgen Kunz
>>>
>>> Komplementärin: ORACLE Deutschland Verwaltung B.V.
>>> Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
>>> Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
>>> Geschäftsführer: Alexander van der Ven, Astrid Kepper, Val Maher
>
>


-- 
ORACLE Deutschland B.V. & Co. KG   Michael Thayer
Werkstrasse 24                     VirtualBox engineering
71384 Weinstadt, Germany           mailto:michael.thayer at oracle.com

Hauptverwaltung: Riesstr. 25, D-80992 München
Registergericht: Amtsgericht München, HRA 95603
Geschäftsführer: Jürgen Kunz

Komplementärin: ORACLE Deutschland Verwaltung B.V.
Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
Geschäftsführer: Alexander van der Ven, Astrid Kepper, Val Maher



More information about the vbox-dev mailing list