[Bf-viewport] OpenGL ES compatibility

Brecht Van Lommel brechtvanlommel at pandora.be
Mon Dec 7 22:44:46 CET 2015


Hi Yuri,

Thanks for the explanation, and great to hear you guys are going to be
involved in this work.

Those statistics are very interesting. So 40% can't use DX 10, but if
we look closer 12% can't because their GPU does not have the
capabilities, and 28% because they use Windows XP which does not
support DX 10? Am I understanding that right, because I thought
Windows XP had a lower market share? Blender (and Microsoft) already
dropped support for Windows XP in any case.

For desktop computers, I think that we can cover all existing users
with software emulation? When Blender 2.8 is released in 1-2 years, I
imagine the percentage will be lower and ANGLE with ES 3.0 will also
cover hardware with poor drivers, if this is a problem we encounter.

The main issue to me seems to be Android / iOS / WebGL support. At
this point no one is actually planning to make a usable Blender editor
for those platforms, at least not that I know. But if someone wants to
work on this in the near term then I guess keeping ES 2.0 support
makes sense.

I think a lot of the OpenGL 3.x features that we want to use aren't
even hardware limitations. FBOs and basic NPOT are part of ES 2.0, new
GLSL syntax is more a driver than a hardware issue, VAOs and instanced
draw are easily emulated. Float texture hardware support I'm not so
sure about, would be nice if we could rely on that for color
management. Geometry shaders would have to be optional.

So perhaps there's a reasonable way to get most of the advantages, I'm
not sure. What do others think?

Brecht.


On Mon, Dec 7, 2015 at 1:04 PM, Yuri Kovelenov <yuri at blend4web.com> wrote:
> Hi Brecht, guys,
>
> I'd like to share our experience here in Blend4Web regarding target API
> level.
> WebGL (which is essentially JavaScript binding to OpenGL ES 2.0 API) is
> supposed to run everywhere,
> on desktops, mobiles, TVs, consoles, etc. This is theory - in practice,
> however,
> some our users are reporting glitches, crashes or unavailability of
> WebGL on
> different platforms - mainly because of driver issues (both proprietary
> and open source).
> Upcoming WebGL 2.0 (counterpart of ES 3.0) will possibly bring even more
> problems since it offers
> much wider feature set.
>
> My point is that targeting OpenGL 2.1/ES 2.0 is already quite
> restrictive and will alienate some Blender users who will be
> forced to update their hardware or stick to older Blender version. To my
> opinion, targeting OpenGL 3.x will result in significant decreasing
> of Blender user base. This can be illustrated with the Unity3D stats -
> 40% of Web Player users (general public on the Internet)
> do not have DX 10+ (roughly corresponds to OpenGL 3.x-4.x) capabilities.
> http://hwstats.unity3d.com/web/gpu.html (see picture at the bottom)
>
> Accessibility has always been the main advantage of Blender. Being a
> FOSS tool, Blender is natural choice for CG beginners,
> freelancers and small teams. Some of them cannot afford paying for
> expensive hardware. It is also often used on Linux where
> open source drivers are often of bad quality and thus can lead to
> inability to run Blender.
>
> In our team we would prefer if Blender targeted mandatory OpenGL ES 2.0
> with optional OpenGL ES 3.0 features
> activated on supported platforms. This is how we are going to do with
> WebGL 1.0/2.0. The Google-maintained ANGLE open source
> library suggested by Martijn Berger perhaps could be used as a backend
> to insure cross-platform performance
> similar to Chrome and Firefox browsers which work literally everywhere.
> Targeting OpenGL ES is preferable over generic
> desktop OpenGL due to better portability. This will lay groundwork for
> Blender to run on tablets and even as a PPAPI browser plug-in.
>
> In any case what you are doing is already awesome. We are going to
> dedicate a programmer for the viewport project as well.
>
> Best regards,
>
> Yuri
>
> Blend4Web Team
> https://www.blend4web.com
> _______________________________________________
> Bf-viewport mailing list
> Bf-viewport at blender.org
> http://lists.blender.org/mailman/listinfo/bf-viewport


More information about the Bf-viewport mailing list