Guía de desarrollo de juegos Indie

GreyShock

#3599 Genial aporte, se merece estar en #1 por todo lo alto.

Me ha gustado como empieza xD

"Alright, back to the whole C++ question. Should you start learning with C++? NO. See, no maybe, no wishy washy answer or caveats, it’s simple, C++ is an epically stupid language to start with. It’s about the same as starting to learn math by starting with advanced calculus. Again, dumb. If you are going to listen to a single piece of advice I give, it’s DO NOT START WITH C++. I know, of course, that you are going to completely disregard this advice and start with C++, but in 3 or 4 years when you’ve got the scars and trauma from ignoring my advice, I’m going to smugly tisk tisk and give you my best “I told you so!”. I will offer another piece of advice while I am at it… anyone that recommends you start with C++, in the future ignore their advice!"

2 respuestas
krzz

Gracias a ambos #3599

#3600 tengo conocimientos de html y poco mas , aptitudes bastantes pues estudio todo lo que es el mundo de la informática y estoy en el superior ,y motivaciones la de labrarme un futuro y de lo que me gusta

FrioneL

#3601 Pues en la uni nos enseñaron a programar desde 0 con C++, y una vez asientas las bases, entiendes todo mucho mejor.

1 2 respuestas
Idontknow

Del GameMaker que me aconsejáis? El normal o el medio pro?

1 respuesta
Srednuht

#3603 +10

1 respuesta
Potito

#3604 usa el gratis y vete aprendiendo, luego cambiar al otro se hace sin ningun trauma

BLZKZ

#3603 #3605 eso es porque os han enseñado así, pero que es lo único que conozcáis no lo hace lo mejor.

Y no, directamente con c++ no te pueden enseñar una buena base, porque para entender de primeras la orientación a objetos es como ponerte un cartel para que te peguen patadas en los cojones

1 respuesta
Srednuht

#3607

Dar por hecho que es lo unico que conozco tampoco te hace más listo.

Por cierto ya dije post atras que primero C y luego C++.

1 respuesta
BLZKZ

#3608 no digo que sea lo unico que conoces en cuanto a lenguaje (que ya ves tu, saberse 4 sintaxis de memoria no tiene misterio), me refiero a la forma de aprender.

Empezar por C es un error tambien

1 respuesta
Srednuht

#3609

Empezar por C es un error tambien, y ahi lo dejas. Si no me das más motivos no merece la pena seguir hablando, entiendo que C++ y que te metan POO de entrada es como meterte un palo por el culo. ¿PERO que problema hay con C? Ahora ven a decirme que empezar con Java es lo mejor y esas cosas xD No se por qué pero hablas de una forma taaan sobrada "...no tiene misterio." no vayas asi por la vida macho.

1 respuesta
BLZKZ

#3610 pues para empezar por punteros, que es bastante complicado si no sabes como se gestiona la memoria a bajo nivel, siguendo por un tipado basura y anticuado, obligacion (por normas sintacticas) a estructuras poco amigables...

pues oye si quieres sigo

Edit: y no, empezar con java es igual o más mierdoso. Yo ya me decanté por python en mi ideario

2 respuestas
Dante88

No existe ningún juego hecho con python, fijate lo util que es empezar por ahi.

Si quieres aprender a programar bien desde el principio, empezar por C/C++ es imprescindible.

1 1 respuesta
Maaarc

#3611 Yo empecé por C y estoy vivo... además también me han enseñado ensamblador y ese idioma si que es una basura. Putos PIC de mierda (por suerte ya me dejan usar C y un traductor xDD)

Yo personalmente, lo hago todo con C porque es el único que se usar con soltura metiendo SDL y punto, es como mejor me va.

1 1 respuesta
BLZKZ

#3613 ensamblador es DIOS, anda que no mola optimizar a nivel "ciclos de reloj" ahahahah :)

Además que al menos para intel se pueden hacer cosas chulas con a penas unas miles de lineas

1 respuesta
Maaarc

#3614 "Con apenas unas miles de lineas" jajajajja eso es lo que me amargaba xD la mayoría eran algo a WORK y de work a otra cosa y cambio work y vuelvo a cambiar otra cosa y ahora miro los flancos j3.

Srednuht

#3611 punteros es algo que se ha de saber manejar si o si, por lo que dices es como: "Bueno como es jodido, mejor no aprendas" y lo de empezar con python, si, über útil. Lo primero es controlar el manejo de datos y una vez ya sabes como controlar la información(informacion puede ser desde un entero hasta un modelo 3D) ponerte a hacer lo que quieras con ella.

PD: ensamblador molaba pero como bien decís el número de lineas es mortal.

1 respuesta
BLZKZ

#3616 en qué no es útil python? Puedes aprender 3 paradigmas de programación distintos sin un tipado absurdo, y siendo uno de los lenguajes más legibles que hay.

Además de en C en qué otro lenguaje de uso mayoritario usas punteros? Ya te lo digo yo, en ninguno.

"Lo primero es controlar el manejo de datos y una vez ya sabes como controlar la información"

Bonita frase de mierda que suelta un profesor en clase y que con la experiencia te darás cuenta que no quiere decir nada.

2
Meleagant

#3612

http://wiki.python.org/moin/PythonGames

Para lo demás, a mi me parece que C es tan buen lenguaje como otro cualquiera para empezar.

De hecho, me parece mejor C que Java, precisamente por lo que comentábamos de POO. C++ ni de coña.

Y si os dicen que no empecéis a hacer juegos en C++ es porque es un dolor de huevos innecesario.

1 respuesta
krew

#3601 tú empezaste esta locura, por Dios, ¡haz que acabe!

1
B

Cada día que pasa me doy más cuenta que cualquier lenguaje te vale si cumple tu propósito, los guetos de lenguajes no valen para nada.

3 1 respuesta
elkaoD

#3603 seguuuuro (que no :P)

Lo más probable es que diérais un subset de C++ MUUUY reducido y no conozcas ni el 10% de sus "caveats" infernales. C++ es un lenguaje demasiado complejo, como para empezar a programar con él. Mucho. Demasiado. Cada vez que veo una respuesta en Stack Overflow sobre C++ sigo flipando (y por los comments/upvotes es tema generalizado incluso expertos en C++.)

#36110 #3611 creo que, los dos y ninguno lleváis razón. Si lo que quieres es hacer juegos empezar con C es tontería. ¿Para qué quieres manejar punteros en C? ¿Vas realmente a pelearte con strings, memcpys, malloc/free... cuando lo que quieres es hacer un juego? No.

Si te mola el tema de engines, es otra cosa. Ahí sí es importante saber cómo funciona la máquina.

#3612 mira que Python no es que me encante precisamente, pero decir que no hay ningún juego hecho con Python... ¬¬

Debo decir que lo peor de Python son las librerías. Incluso en Linux es un infierno el PYTHONPATH... y suerte que ha llegado "pip" a facilitar un poco las cosas.

#3616 "punteros es algo que se ha de saber manejar si o si"

Discrepo. Otra cosa es que sea algo tan sencillo (y que aclara tanto la mente) que merece la pena, pero en casi ningún lenguaje vas a tocar punteros.

#3620 #3622 toda la razón. Ambos.

2 respuestas
BLZKZ

#3620 el objetivo es aprender a programar, para eso hay un claro ganador y no es c ni c++ ni java

1
cabron

No quiero entrar en la discusión de cual es el mejor lenguaje para aprender, pero un detalle que a mucha gente se le olvida. C++ es un superconjunto de C, incluye todo lo que hay en C, más la programación orientada que objetos es opcional, y los templates que también son opcionales, si no quieres, no tienes por que usarlos.

Se puede usar C++ para hacer programación estructurada como la que se hace en C, pero con una e/s mucho más fácil de usar, y muchas más facilidades gracias a la librería estándar, vamos, que recomendar C, en la mayoría de los casos no tiene mucho sentido, para eso empiezas con C++ pero sin usar clases ni templates, que es algo que se puede hacer perfectamente, de hecho como me imagino que ya sabréis, a día de hoy casi no existen compiladores de C, el código en C se compila con un compilador de C++, debido a esa compatibilidad que hay entre ambos lenguajes.

1 respuesta
storm2211

pues yo desde mi experiencia no me arrepiento haber aprendido a programar con Pascal. Yo creo que lo primero es hacerse a la mente programadora y eso me parece mucho mas complicado si empezamos con C y punteros.

Mi recorrido fue Pascal->C->C++ y luego ya estas preparado para cualquier cosa, quitando lo que me costo hacerme a un lenguaje funcional como Erlang.

Por cierto tambien os traigo una actualizacion de nuestro juego, que hoy hemos tenido una presentacion y hemos hecho un nuevo video, a ver que os parece.

http://vimeo.com/58416311

Un saludo.

EDIT: Por cierto, algun fisico loco que me pueda hechar una mano con tema de colisiones y movimiento angular para una simulacion? gratze

1 3 respuestas
elkaoD

#3623 es que ni aún así se salva C++ de la quema. Para qué quiere un newbie saber *que &significa **esto? ¿Y un newbie que quiere hacer videojuegos? Para NADA xD

Creo que por ahí va BLZKZ. IMHO es innegable que para programar es mejor una buena base algorítmica que de sintaxis/low-level. Por eso hay tanto matemático metido a programador (aunque tiren código de mierda desde el punto de vista estructural) y tan poco a la inversa.

1 respuesta
BLZKZ

#3624 pascal con su restrictiva pila, sus millones de stackoverflows, su entorno de mierda (salvo devpascal que es mas amigable)

Por dios no vuelvo a tocar pascal ni con un palo

Dante88

#3618 #3621 Esos frameworks estan integramente hechos en C/C++. Después se hacen scripts con python sobre ese motor y aun así sale una cosa bastante poco portable y no demasiado eficiente.

Es como si hago un juego con RPG Maker y digo que se pueden hacer juegos presionando botones y arrastrando cosas.

#3628 Se perfectamente lo que estoy diciendo. Y sino estoy esperando a ver tu ejemplo de juego integramente hecho con python. Si puede ser para Android/IOS por favor.

2 respuestas
elkaoD

#3627 no sabes ni qué estás diciendo.

#3627 nada, tío, sigues perdido.

No puedo enseñarte un juego hecho en Python para iOS/Android de forma nativa porque Python no es su

Si para ti un binding SDL es que no es nativo, entonces ningún juego está hecho en nada que no sea ASM.

Java también tira de bindings. ¿Te suena JNI/JNA? ¿Sabes que para acceder a OpenGL lo necesitas por huevos?

1 respuesta
cabron

#3625

Ya, si no digo que recomiende C++, digo que no tiene sentido lo de "C++ es complicado, es mejor empezar solo con C ", por que para recomendar eso directamente recomienda usar C++ pero sin poo ni templates ni demás cosas esotéricas que tiene, por que de hecho C tiene algunas cosas que en C++ han sido simplificadas

Meleagant

#3627

OK, entonces me llevas a la conclusión de que la mejor manera de aprender a programar videojuegos es usando código binario a pelo.

Al fin y al cabo ningún juego está hecho en C++, eso es sólo una representación en términos legibles para las personas que necesita que un intérprete convierta para funcionar.

1 respuesta
Tema cerrado