videojuegos unity que ps4 programan programacion los lenguajes lenguaje juegos desarrollo crear c++ python

c++ - unity - Quiero aprender a desarrollar juegos. ¿Qué idioma debo usar?



programacion de videojuegos pdf (29)

¿Estás empezando a programar ahora? ¿Por qué no quieres aprender C #?

Si usted es un principiante, sugeriría que no comience con C / C ++. Creo que deberías aprender a usar UNITY3D, un motor de juego que es muy popular hoy en día. Muchas personas, desde desarrolladores independientes hasta grandes compañías, están usando Unity para hacer todo tipo de juegos (por cierto, los juegos de carreras de autos son uno de los tutoriales).

Este motor es fácil de aprender, puede usarlo con UnityScript (un lenguaje personalizado con sintaxis inspirada en JavaScript), C # o Boo (que tiene una sintaxis inspirada en Python). Recomiendo encarecidamente C #, es más poderoso y aprendes el idioma que puedes usar con XNA más adelante.

He escuchado que C ++ y Python son dos de los lenguajes más utilizados.

¿Cuál debería elegir?

¿Y en Python - versión 2 o 3?

Estoy considerando el desarrollo de juegos básicos (como un juego de carreras de coches, por ejemplo) y NO juegos flash / iphone / navegador.

Además no quiero saltar a C #.

C ++ vs python es lo que estoy considerando ...

también, sería útil, si pudiera hacerme saber algunos recursos en línea para comenzar.


¿Qué idioma sabes mejor? Si tu objetivo es aprender a desarrollar juegos, no hagas que el proceso sea mucho más difícil al tratar de aprender C ++.


C ++ es el lenguaje utilizado para escribir el juego, al menos para los juegos complejos de uso gráfico como World of Warcraft. Los lenguajes como Python se usan a menudo para los comportamientos de scripting dentro del juego.

Por otro lado, una categoría importante de juegos es la categoría de juegos "informales", que incluye juegos más simples como juegos de Sudoku o juegos de resolución de rompecabezas simples. Estos pueden estar escritos en un lenguaje de muy alto nivel como Python.

Sin embargo, es más probable que Python, los juegos ligeros generalmente se escriben en Flash, utilizando el lenguaje de scripting en Flash (ActionScript). Resulta que esto es en realidad un sabor de Javascript. Javascript, a su vez, es muy parecido a Python.

Entonces, mi sugerencia es que aprendas Python, y luego aprendes Javascript. Luego escribe algunos juegos simples con PyGame, Flash o incluso con Javascript en el navegador. Luego, si aún quieres aprender C ++, continúa y aprende eso, pero sigue jugando con el diseño de juegos en tu tiempo libre, escribiendo juegos casuales.


C ++ ya que es el más utilizado para la programación de juegos y obtendrás muchas muestras para los juegos de c ++. Como otra respuesta dijo, no hay muchos programas 3d de python.


Comenzaría con C ++, que es el idioma de elección para la mayoría de los juegos creados hoy. Hay varios juegos que se están desarrollando en DirectX usando C # en un entorno administrado, usando el trabajo de marcos XNA. Echa un vistazo a este sitio. Centro de desarrolladores XNA


Considero que quieres saber muchos idiomas y cómo se ve el mismo "programa" en diferentes idiomas. Luego puede tomar mejores decisiones sobre qué partes de un programa deben estar en qué idiomas. Puedes usar cualquier idioma para escribir un juego. Los conceptos en sí mismos detrás de la organización de los datos para ejecutar son más importantes que el lenguaje, y practicar diferentes idiomas lo ayuda a sentirse cómodo con esos conceptos. Luego puede "aprender" y obtener nuevos idiomas rápidamente sin tener que volver a aprender.

Así que creo que no duele tratar de aprender y practicar varios idiomas a la vez, incluso como principiante. C ++ es sin duda ampliamente utilizado en la programación de juegos de la industria (donde ha sobrevivido más que en muchos otros dominios de programación). Por lo general, OpenGL viene con eso para la programación 3D de alto rendimiento. Python tiene bibliotecas para escribir juegos, se considera ''fácil'' sintácticamente (personalmente estoy de acuerdo). Puede omitir C ++ por ahora y concentrarse en C y python, y regresar a C ++ después de estudiar Orientado a objetos.

Desea aprender los conceptos detrás de lo que hace su código y las compensaciones de eficiencia. Para escribir juegos más complejos, simplemente necesita más conocimiento: saber qué estructuras de datos son más eficientes para los requisitos. Cómo estructurar sus programas para que no se desmoronen cuando desea corregir un error o agregar una función. Con un poco de conocimiento de programación rudimentaria y Python, puedes escribir un juego bastante bueno sin gráficos para la práctica. Y hay PyGame y otras bibliotecas para gráficos, sonido, etc.


Creo que C ++ es la mejor opción, hice algunos juegos pequeños con motores gratuitos como Ogre o Irrlicht, especialmente Irrlicht porque es muy fácil de aprender.

También para juegos 2D puedes usar HGE.

Pero si quieres ir con Pyton, prueba Blender modela en 3D una herramienta de animación, con Blender puedes crear juegos geniales y tienes todas las cosas que necesitas para hacer un juego en el mismo software, Blender usa Python para la programación, pero puedes Realiza juegos sin saber programar solo usando bloques lógicos.


Creo que su mejor enfoque es comenzar con un lenguaje con el que esté familiarizado. Aprender sobre el desarrollo de juegos requiere que se sienta cómodo con sus herramientas y que se centre en los desafíos específicos que conlleva el campo, en lugar del lenguaje.

Comience con los fundamentos: cómo administra su bucle de juego, cómo carga recursos externos, cómo guarda y restaura el estado, cómo administra su inteligencia artificial y qué algoritmos de ruteo son más eficientes para sus necesidades? A medida que comiences a aprender, verás emerger patrones arquitectónicos y funcionales.

A medida que su proyecto crezca, comenzará a enfrentar nuevos desafíos como la creación de redes, la optimización y el uso de marcos para hacer que el desarrollo de juegos sea más eficiente.

Así que en general, diría que vaya por algo fácil con el que se sienta cómodo, como Python (hay bibliotecas y marcos maravillosos disponibles). Conozca los fundamentos básicos allí y, a partir de ese momento, podrá explorar otras opciones como C ++ (que se usa seriamente en la industria) y sus marcos existentes. Me apegaría al desarrollo no móvil, no flash, por ahora, ya que el desarrollo en esos entornos introduce desafíos y limitaciones adicionales que son bastante específicos.


Creo que uno de los lenguajes de desarrollo de juegos más rápidos y gratificantes es ActionScript 3.0 con el SDK de Flex. La capacidad de crear un juego y lanzarlo en la web a una gran audiencia es una experiencia muy gratificante.

El material de referencia de ActionScript se puede encontrar here y Emanuele Feronato tiene un gran blog para desarrolladores de juegos para principiantes.


Dado que quieres aprender a desarrollar juegos y no tienes mucha experiencia, te recomendaría comenzar con Python 2 y usar la última versión compatible con PyGame.

http://www.pygame.org/

Hay una gran cantidad de juegos, escritos en Python con PyGame, que están disponibles como código fuente para descargar y estudiar. Si alguna vez obtiene un trabajo programando juegos, es probable que el motor del juego que ellos usan no sea uno que haya usado antes, por lo que deberá traducir su experiencia en su motor y API. Por lo tanto, Python no te perjudicará de ninguna manera. De hecho, debido a que te libera de muchos detalles importantes, puedes centrarte en aprender el desarrollo de juegos, no en punteros y estructuras, sintaxis y errores de compilación, etc.

Más adelante, puedes moverte a C cuando ya tienes los conceptos de programación del juego. O bien, es posible que prefiera excavar en las partes internas de un motor de juego y ajustar los controladores, etc. En ese caso, quédese con PyGame y trabaje en mejoras y mejoras.

Le daría diferentes consejos a un programador experto que quisiera hacer una carrera en la programación de juegos.


Depende de qué tipo de juegos. No creo que haya muchos juegos de gráficos en 3D programados únicamente en Python. C ++ se utiliza para gráficos en 3D, ya que es muy rápido en los cálculos numéricos necesarios. Python no puede competir con él. Si quieres hacer un juego de carreras de coches con gráficos en 3D como Mario Kart, necesitas aprender C ++, no Python.

Sin embargo, como dice San Jacinto, la pregunta es un poco discutible en esta etapa.


Depende de tu objetivo.

Por ejemplo, si alguna vez quieres desarrollar juegos para Xbox 360, necesitas C # y XNA Game Studio.

XNA Game Studio es un conjunto de proyectos y bibliotecas de C # creados para su uso con Visual Studio (cualquier edición, incluido Express) para crear juegos de Xbox 360 y Windows / DirectX.


Depende del tipo de juego. Para los juegos "grandes", ciertamente C y C ++, ya que eso es en lo que están escritos los grandes motores y el middleware (por ejemplo, Gamebryo, Unreal, id tech, FMOD Sound System, las herramientas del juego RAD, etc.).

Python se usa en algunos juegos como un lenguaje de scripting (para lógica de juegos, misiones, a veces AI), pero también hay LUA y posiblemente muchos otros, pero Python ciertamente se usa aquí.

Para juegos "casuales", también puede considerar Flash / ActionScript (los Juegos de navegador también son juegos, y es un gran mercado) o C # / XNA (aunque eso no despegó).

Si desea desarrollar juegos para iPhone, Objective-C es su mejor opción, ya que las alternativas (Flash y MonoTouch) aún tienen que demostrar su valía.

¿Qué es lo que realmente quieres hacer en el desarrollo del juego? ¿Quieres trabajar en un motor gráfico? O sonido? ¿AI? ¿Lógica de juego?


Diría que esto depende de su experiencia de programación, si está acostumbrado a la sintaxis de C y piensa de esa manera, es decir, corchetes, punto y coma, escritura fuerte, vaya con C ++, es rápido y es el lenguaje que conoce.

Sin embargo, si se siente cómodo con los lenguajes de programación como un todo, entonces Python no es una mala alternativa, y recomendaría el motor panda3d 3d (considero que se trata más de un motor 3D, en lugar de un motor de juegos en el sentido de que todavía tiene que construya la lógica específica del juego), usa python y creo que la versión más reciente de python 2.6.xx es su mejor apuesta. En cuanto al rendimiento, a menos que esté ejecutando una máquina más antigua, los lenguajes interpretados como Python pueden ejecutar lenguajes compilados casi tan rápido como c / c ++.


El concepto del juego es más importante que el idioma que eligió. Use el idioma con el que se sienta más cómodo. Todos, excepto los juegos de gráficos en 3D más complejos, funcionarán bien incluso con lenguajes interpretados.

Mi consejo es minimizar el número de incógnitas. Supongo que eres nuevo en la programación de juegos y dices que eres nuevo en Python. Mi sesgo personal es acercarse a un nuevo dominio (juegos) con un lenguaje familiar (C ++) o acercarse a un dominio conocido con un nuevo idioma. Acercarse a un nuevo dominio con un nuevo idioma es un desafío difícil.


Es posible que desee considerar comenzar con juegos casuales. Esto depende, por supuesto, de tus deseos, pero los juegos casuales son un poco más accesibles tanto para los desarrolladores como para los usuarios. Las herramientas también son más fáciles de aprender: Flash / Flex y Silverlight están muy disponibles y son muy divertidas de usar.


Estoy pensando que si quieres juegos gráficos en 3D, C ++ con DirectX es el mejor


La forma más sencilla y rápida de aprender a programar juegos es con Python / PyGame.

Python es un multiplataforma, código de bytes compilado, lenguaje de programación fácil de aprender con una sintaxis realmente clara que maximiza la legibilidad. Tiene un montón de bibliotecas y documentación escrita para ello.

PyGame es un marco de desarrollo de juegos 2D escrito en python que es realmente fácil de aprender, con muchos tutoriales y documentación escritos para cada uno. Cada año, se lleva a cabo un contexto de PyGame donde las personas envían sus juegos de PyGame. Python es un lenguaje interpretado (pero también puede empaquetarlo en un ejecutable independiente), de modo que cuando descarga un juego para jugar, también puede ver su código fuente y cambiarlo.


La mayoría de los juegos modernos no están diseñados desde cero, sino que utilizan algunos juegos / motores de gráficos preexistentes.

Los juegos flash son bastante populares. Aunque la mayoría de los juegos escritos en Flash tienden a ser simples, el lenguaje está orientado a los gráficos y realmente aprenderá en el nivel superior.

C ++ realmente se usa ampliamente, pero es poco probable que construir un motor de juego desde cero sea una idea viable.

Busque en www.GarageGames.com un buen lugar para encontrar tanto un motor de juego listo como una comunidad de desarrolladores que escriban juegos.


La programación de juegos no es diferente en C ++ de Python. Ya conoces C ++, así que la respuesta es: Aprende Python. ¿Por qué? Porque es un lenguaje malditamente genial.

También aprenderás mucha programación de juegos haciéndolo en Python, incluso si necesitas cambiar a C ++ para hacer motores 3D pesados.

Así que la respuesta es realmente ... ¡AMBOS! :-)


No estoy seguro de cuál es tu experiencia previa en programación. Si desea ponerse al día rápidamente, le recomendaría Python. Otros han recomendado PyGame, que es el estándar de facto para Python. Hay otras alternativas (como una versión modificada del motor Verge llamada Ika que está en desarrollo lento , http://ika.sourceforge.net/news.php ) pero PyGame es muy sólido.

Debido a que solicitó un recurso para comenzar, recomendaría Inventar con Python ( http://inventwithpython.com/chapters/ ). Utiliza Python 3 y PyGame, y comienza realmente básico. En el próximo mes o así, podrás comprar el libro si así lo deseas (el autor me mencionó que un editor tomó una versión anterior del libro e hizo una muy mala versión en papel, así que si ves eso en Amazon , evitarlo!).


Plataforma objetivo? ¿Flash o no Flash (gráficos basados ​​en vectores)? ¿Al bitmap o no al bitmap?

En función de algunos de esos tipos de preguntas, puede llegar a un rango de posibilidades más pequeño.

Por ejemplo, la plataforma de destino XBox 360: código: equipo de C ++ necesario con el acuerdo de publicación: sí (si trabajas en una compañía de juegos, es más fácil :)

Lo mismo se aplica a las plataformas Playstation o XBox más antiguas, etc. Casi todos los juegos basados ​​en consolas que vas a hacer necesitan un kit de desarrollo y eso solo sucede si tienes un trato con el fabricante o un editor.

Entonces, saltemos la consola por ahora.

Eso deja varias opciones aún más basadas en Internet o basadas en iPhone. Pero ya has dicho que no quieres hacer juegos basados ​​en Flash, iPhone o navegador.

Así que el siguiente es Mac o PC. Si quieres llegar a la consola, los juegos basados ​​en Widows son una excelente manera de hacerlo. Puedes aprender las librerías de gráficos, DX, y luego usar algo similar en XBox 360, por ejemplo. O, si quieres ir a la plataforma abierta, ve a Open GL ... y si decides descender a una plataforma que tiene descargas de "2 mil millones", te permite vender tu juego en todo el mundo ahora mismo, y solo cuesta $ 99 para tener acceso. como desarrollador, bueno, Open GLES está ahí como un subconjunto de Open GL.

En los casos de Windows y Mac e incluso de iPhone, C ++ funcionará. C definitivamente lo hará.

// :)


Querer "Aprender el desarrollo de juegos" es muy, muy vago.

Si quieres desarrollar tus propios juegos pequeños, por diversión, mientras aprendes cómo estructurar la aplicación, elige Python.

Si desea obtener más información sobre la programación de gráficos de núcleo duro o adquirir experiencia para trabajar en la industria, debo decir que vaya con c ++.

Creo que la respuesta depende mucho de tus habilidades y objetivos actuales. Tenga en cuenta que ciertamente no soy un experto en el campo.


Si el rendimiento es crítico, use C ++.

Muchos juegos escriben el motor central en C ++ y luego tienen enlaces a Python para obtener un código crítico de menor rendimiento (lógica del juego, misiones, IA). Un buen ejemplo de esto es Civilization 4. Esto también hace que el juego sea expandible.

Personalmente recomendaría C # / XNA para un nuevo desarrollador y usar un marco como Ogre.


Si está buscando un juego de carreras 2D, sugeriría usar AS3 (Flash) con Box2d. -más fácil para empezar -mayor público

La mejor de las suertes para usted, ¡el idioma que elija!


Si estás haciendo un juego Indie (es decir, 2d, en un equipo de menos de diez personas, con bajo presupuesto), entonces Pygame es tu mejor apuesta.

Hay muchas bibliotecas en http://pygame.org que facilitan el desarrollo. Hay GUI en el juego, redes, pathfinding ... Python 2 es mejor, por ahora. No necesitarás las cosas de P3000 todavía.

Lua también es una opción muy popular, pero es principalmente para juegos grandes y profesionales. A menudo eligen a Lua por su filosofía que no puede fallar . Puede pasar más o menos argumentos de los que toma una función y no se quejará. Casi cualquier cosa puede fallar, y todavía funcionará en promedio .
Además, tiene hilos muy poderosos (tipo de). No hay condiciones de carrera. Siempre. Y hay Lambdas. Y es extremadamente modificable. Es básicamente Lisp con menos paréntesis. No hace falta decir que los programadores de Lua son personas muy, muy cuidadosas.

De todos modos, no importa lo que escuche, sepa esto:
Los juegos están escritos en lenguajes de script .
Los motores están escritos en C ++ .

Si "quieres aprender a desarrollar juegos", probablemente quieras escribir juegos. Además, tanto para Python como para Lua hay una forma bastante sencilla de escribir un script y luego enviar un archivo .exe. Busque en otra parte "Incrustar% s"% language_name, pero básicamente es solo

#incluir
...
python_run_file ("main.py");


Si quiere ser contratado en la industria, sea bueno en C ++. Muy bueno. Como, piadoso.

Si desea hacer las cosas y enviar un juego pequeño con un equipo pequeño (por ejemplo, solo usted), use python, C ++ es una optimización prematura.

Python2 tiene mejor soporte de biblioteca para juegos, PyGame configurará tu ventana y te dará operaciones en 2D, PyOpenGL para hacer cosas más sofisticadas, Panda3D , etc.


Todo depende de cuales sean tus metas. Como principiante, elige el que creas que es más fácil y comienza a aprender. Debe aprender a programar antes de preocuparse por qué lenguaje usar para qué.

Cuando eres lo suficientemente maduro para enumerar los pros y los contras de cada uno por tu cuenta, entonces eres lo suficientemente maduro como para hacer esta pregunta (y, a pesar de cómo suena, no es una lógica circular).


Vaya con C ++, es el lenguaje principal en la industria; y aprenderás todos los detalles del desarrollo del juego. El uso de C ++ también le brinda otro beneficio, ¡puede implementar un lenguaje de secuencias de comandos como LUA o Python, por ejemplo, Game Logic!