Si quisiera hacer un juego, ¿debería usar JavaScript, C ++ y / o qué más?

El que evitaría aquí es JavaScript. Aunque los fanáticos de JavaScript le dirán lo contrario, es una elección terrible para el desarrollo de juegos. La única razón por la que las personas usan JavaScript para el desarrollo fuera de un navegador es porque son buenos y no están preparados para desarrollar sus habilidades en ningún otro idioma al mismo nivel.

C ++ es el lenguaje estándar de la industria de los juegos, también es el lenguaje de uno de los motores de juegos más populares y potentes: Unreal 4. Sin embargo, es un lenguaje difícil de dominar. (Además, puede usar Unreal 4 sin C ++, ya que tiene una interfaz de programación visual extremadamente potente).

Otro motor de juego popular es Unity, que utiliza C # como lenguaje de programación. C # es un lenguaje relativamente fácil de dominar, y si desea ingresar a la programación de juegos, entonces Unity es una excelente manera de comenzar. Tiene una gran tienda de activos, una gran comunidad y muchos tutoriales en línea. Además, Unity le permite publicar en cualquier plataforma.

Unidad – Game Engine

Si desea alejarse de los motores de juegos patentados y sus EULA, también hay disponibles motores de código abierto, como jMonkeyEngine, que utiliza Java.

Sin embargo, mi recomendación es comenzar con Unity.

Debes tomar el motor de la unidad, aprender los conceptos básicos de C # y usar la unidad para tu juego.
Otra opción es Unreal 4, pero la curva de aprendizaje es más pronunciada.

Si quieres hacer un juego, pero no aprendes a escribir motores de juegos, aprender C ++ e incluso javascript te desviarán de la creación de juegos durante varios años. No lo hagas

Aquí está la sección de aprendizaje de Unity3D con tutoriales:

Unidad – Aprender – Descripción general

Manual de usuario de Unity (5.6)

Unidad – API de secuencias de comandos:

Además, no obtenga ninguna “idea sorprendente” en la línea de “Primero debería aprender correctamente C #, y luego comenzar a usar la unidad”; esto también lo desviará y perderá mucho tiempo.

Simplemente comience con el motor y comience a codificar de inmediato, y aprenda la información que falta a medida que avanza.

Recomiendo Javascript por las siguientes razones:

  1. Aunque C ++ tiene algunas capacidades de alto nivel, es principalmente un lenguaje de programación de bajo nivel. Por lo tanto, tiene una curva de aprendizaje muy empinada. Javascript, por otro lado, es un lenguaje de programación de alto nivel, lo que significa que la mayoría de las entradas / salidas, matemáticas, lógica, alcance, estructuras de datos, etc., se realizan casi automáticamente para usted con algunas funciones Javascript nativas simples.
  2. Javascript es mucho más fácil de programar porque está disponible sin tener que comprar nada. Por ejemplo, C ++ requiere un IDE y un compilador, mientras que Javascript, un lenguaje interpretado, ya está instalado en su máquina en forma de navegador y no necesita ser compilado. También tiene un IDE para ello en forma de editor de texto. Y hay literalmente docenas de editores / IDE de código abierto con capacidades Javascripting completamente funcionales.
  3. Ahora hay numerosos motores de juegos 2D / 3D / bibliotecas / marcos disponibles en Internet. Esto significa que algunos juegos muy sofisticados (tan buenos como los de escritorio) se pueden crear de manera muy económica con Javascript.
  4. Los programas C ++ deben distribuirse e instalarse en forma de exe o algo similar, mientras que Javascript se puede distribuir simplemente proporcionando un enlace a una página web. No es necesario descargar ni instalar.
  5. Si está buscando una aplicación de escritorio, también se pueden crear con Javascript usando Node.js. Este es un motor Javascript que ejecuta programas Javascript fuera de un navegador.

Ya casi no veo ventajas de usar C ++ sobre Javascript. Yo digo ir con Javascript todo el camino.

Happy Gaming!

Recomiendo JavaScript para comenzar.
Hay algunas otras cosas que aprender, pero verá los resultados más rápido y aprenderá algunas de las cosas complejas que necesita saber sobre el desarrollo de juegos con JS / HTML / CSS.
Recomiendo encarecidamente CreateJS, ya que es una herramienta fácil de aprender. C ++ brilla en el desarrollo de juegos porque muchas empresas y personas desarrollan herramientas para ello. También es un lenguaje de nivel lo suficientemente alto como para administrar los recursos de la máquina. JS, no tanto, pero quieres una introducción y CreateJS u otro JS sin formato te dará una introducción lo suficientemente buena.
Intente rehacer Cookie Clicker en JS para levantar los pies del suelo e ir desde allí.