Не совсем согласен с Дмитрием. Зачем С++? Нужна оболочка нативных команд на JS, как это сделано например в C#. И это и сделано также в WebGL, но только не поверх полного OpenGL, а поверх кастрированного OpenGL ES, который был разработан для встраиваемых систем. т.е. сейчас в WebGL теоретически есть минимальный набор функций, который будет работать на всех системах, а также, важна экономия энергии.
Как будет дальше сложно сказать. OpenGL ES не особо спешно развивается, да и второй WebGL кажись еще не перешел на последнюю версию OpenGL ES 3.2, только на 3. Поддерживать весь функционал OpenGL он конечно не будет, слишком затратно и небезопасно.