Desarrollo de videojuegos para android

N

Cual lenguaje de programacion me recomiendan para programar en android , java,c++ o c# estoy aprendiendo c++ hace algunos meses, ya he oido hablar de cocos 2d-x pero y si despues quiero hacer juegos en 3d ?en unity los juegos se programan en c# y de buena potencia ayundeme .

Wasd

Desde mi punto de vista lo más inteligente es aprender Unity. Puedes exportar a todas las consolas y dispositivos, además hace relativamente poco han abierto bastante su licencia, y tienes documentación a reventar, tanto oficial como de blogs y cualquier duda la tendrás solucionada en SO o en los foros especializados.

Por no decir que si algún día quieres entrar en al industria como profesional, ofertas en Unity es de lo que más hay.

Ánimo!

1
N

Lo tomare encuenta , pero vale la pena aprender c# despues de que comenzara a aprender c++? De verdad c# es mejor para la creacion de vj para android? Por cierto despues en un futuro lejano pienso crear mi propio engine.

1 respuesta
AngelRc

#3 Ambos lenguajes son muy similares. Para unity personalmente no veo necesario saber C#, con saber algún lenguaje similar te basta. Lo que veo que hay que aprender es unity como tal. Yo de C# solo se 4 cosillas(se c++) y no tengo ningún problema usando unity.

No es que C# sea mejor para desarrollar en android, es que Unity te puede portar el juego a distintas plataformas sin tener que hacer tu nada (algunas pequeñas modificaciones en código a lo mejor). Para hacer una engine yo si que tiraría de C++.

Si yo fuera tu aprendería C++ a saco y a la vez usaría Unity, escribiendo como aprendas en C++ y lo que te de errores miras cómo se hace en C#, por ejemplo la declaración de arrays no se hace igual en ambos lenguajes.

1 respuesta
Ridote

Yo me estoy iniciando en Unity. Déjate de librerías y morralla, Unity es la leche. C sharp es igualito que C++ a excepción de algunas cosas que no te van a suponer ningún problema. Y Unity te va a solucionar muchos más problemas de los que te ocasiona el tener que buscar la sintaxis de C sharp, que ya te digo es casi igual.

Wasd

#4 Por qué le recomiendas aprender C++ y a la vez usar Unity? Es más, por qué le dices que escriba su código en C++ y que luego lo corrija a C# si le da warnings/errors? Me parece una forma totalmente antiproducente de proceder, y es más, por el camino se encontrará mil errores lógicos (correctos en sintaxis, erróneos en diseño). Ojo, no pienso que quieras joderle, pero realmente me parece un camino muy extraño el que le aconsejas.

A #1, no se si has programado alguna vez o no, pero en cualquier caso:

Programar es programar. La forma de pensar es lo que tienes que desarrollar y eso no cambia de lenguaje a lenguaje (a no ser que pases de lenguajes OO a lenguajes funcionales, que de eso no tengo ni idea, pero dudo que vaya a ser tu caso). Puedes aprender el lenguaje que quieras, ya que al final todos son muy parecidos y si ya eres maestro en uno, ser maestro de otro no te llevará más de 6 meses (pudiendo empezar a producir desde el minuto 1 en cualquier caso).

Elijas el lenguaje que elijas, céntrate en aprender las buenas prácticas, en pensar bien cómo solucionar los problemas que se te plantean y en no tirar por el camino más corto a no ser que realmente pienses que es el correcto. Piensa en la limpieza, la estructura y la reutilización de tu código.

Entiendo que si te has mirado Cocos2D ya sabes programar. En caso contrario:
Pienso que en tu caso lo más inteligente es empezar con C# y pasar a Unity cuando conozcas un poco el lenguaje. No empieces a la vez a programar y a usar Unity porque te vas a encontrar cosas como Vector3<> sin siquiera saber lo que es un integer. Date un par de semanas dándole caña a algún curso o libro para entender un poco la programación y ya luego pasar a la acción.

Si Unity no te convence, ningún problema, dedica un par de meses a hacer un prototipo sencillo en todos los engines/frameworks que te atraigan. Aquí te aconsejamos Unity porque puedes hacer 2D y 3D, para Android, iOS y PC/consolas. Que luego quieres hacer un juego 3D super tocho? Pues te vas a Unreal Engine 4. Pero para juegos indie en Unity tienes todo lo que necesitas.

En cuanto a lo de hacer tu propio engine, date un par o 3 de años haciendo juegos y te lo planteas. Ahora mismo posiblemente no sabes lo que implica ni puedes tener un overview de qué módulos necesitarías integrar para hacerlo funcional.

PD: Para citar a la gente utiliza la almohadilla (#1), si no no nos enteramos de que nos estás hablando xD.

Un saludo!

2 2 respuestas
B

#6 joder yo tambien quiero algo tan explicativo xdd

AngelRc

#6 Debí explicarme mejor.

El ya está, según ha dicho, aprendiendo C++, pues que siga con ese (o que cambie a otro si quiere).

Los cambios de un lenguaje a otro son bastante pequeños tanto en sintaxis cómo en diseño y como has dicho, una vez dominas uno, puedes aprender todos rapidamente.

Cualquier duda de Unity/C# que encuentre ya está preguntada y respondida y le saldrá en el primer link de google... En 1 minuto sabrá que std::cout/printf NO, que Debug.Log SI, que int v[] NO, que int []v SI, etc...

Además, creo que debería aprender otro lenguaje aparte de Unity(lo considero un lenguaje propio como tal) ya que hará que pueda moverse de un lenguaje a otro bastante mas fácilmente que si solo ha tocado Unity, y si quiere hacerse su propia engine en un futuro no le queda otra. No veo posible poder pasar de Unity a UE por ejemplo si no has tocado un lenguaje a pelo, sería aprender todo de 0.

Mi opinión -> Lenguaje(c/c++/c#/java/similares) + unity. Ambos a la vez.
Camino rápido -> Unity

1
N

Gracias por sus respuestas , creo que primero completo mis estudios de c++ y crear algunos juego y programas (completos
)de ordenador,me ha gustado mucho c++ , programo en un editor de codigo(sublime text) lo que ase que escribir codigo en c++ sea muy estricto, por eso no queria dejarlo , porque me ha costado adaptarme a c++ y no estar cometiendo errores . dejare lo de android para despues(unity), todavia tengo tiempo(tengo 14).

B

el lenguaje en sí lo aprendes en nada, el problema son los frameworks y tirar adelante el proyecto cuando salen problemas, sobretodo de videojuegos, que hay que echarle muchas ganas, imaginación, y dominar de todo un poco

Yo tengo que hacer un juego online con sockets y tal y, entre que no tengo tiempo, y que hay que hacer la interfaz grafica y que tengo que mirarme muchas cosas, lo estoy dejando todo para el final y me la voy a pegar...

1 1 respuesta
N

#10

Usuarios habituales