Thoughts on shading language

Dear GPU on the Web Community Group,

I'm nobody.  I make indie video games and open source game libraries
for fun. But this is a public mailing list, so, please allow me to
bring your attention to this segment of the recent State Of Godot
presentation at GDC:

https://www.youtube.com/watch?v=C0szslgA8VY&t=2195

Quote: "Apple is fighting with everyone about the shader language used,
they are acting like little kids, so when they stop quarrelling we will
probably have WebGPU."

Regardless of the accuracy of this statement, it is a perception I have
heard before from people who are following the WebGPU development
process, from the people who are interested enough in writing software
using this and to be playing with existing implementations even though
they're not finished.  "Some companies want one kind of language,
others want a different kind of language, and they're really just
fighting over vendor lock-in rather than technical advantages."  And
from my digging into the WebGPU group meeting minutes and Github issues
a little, it's easy to see how one could form that impression.

This perception is bad.  It makes the web ecosystem look bad.  It makes
the companies currently slap-fighting each other for market share look
bad.  And no matter who "wins" it will probably result in a mediocre,
nasty, compromise solution that makes us all lose.  That's how these
things generally end, after all.

It will be more complicated for browsers to implement.

So, each vendor's browser team will focus on their preferred portion of
the standard that they managed to force down everyone's throat, leaving
other portions unimplemented or poorly implemented.

So, it will have more platform-specific bugs, performance problems and
feature differences.

So, web developers will have to do more work to try to paper over the
flaws to make a program that just heckin' works reliably.

We've seen this happen over and over again with different technologies,
and from the outside it looks exactly like we're seeing it again now. 

This is nonsense.  All I want is to make web games that work. So,
instead of continuing to argue over petty corporate interests in the
guise of technical merits, allow me to propose a drastic, nay, radical
change of approach in shader language design:

 1) Ask game and engine developers what sort of tool they want,
 2) Make that.

Sincerely,
Simon Heath

Received on Monday, 15 July 2019 06:57:42 UTC