Guía de desarrollo de juegos Indie

Maaarc

Alguien me puede ayudar con la instalación de "Indielib" que no hay manera de conseguirlo >,< y eso que sigo el manual "oficial".

http://www.indielib.com/wiki/index.php?title=Tutorial_01_Installing#Things_you_have_to_download

1 respuesta
B

#3241 Podrías detallar qué problemas tienes?

1 respuesta
1 comentario moderado
B

#3243 En teoría hasta donde yo sé debes instalar el Visual Studio y abrir el core de IndieLib, compilarlo y usarlo una vez compilado, pero no me hagas mucho caso.

2 respuestas
BLZKZ

#3244 no, mejor que no te haga caso

3
MarioRomero

#3239 A ver, creo haberlo dicho ya varias veces, sino, aquí va:

Aprendí muchísimo. Separándolo un poco por partes, puedo decir que...

Relacionado con la programación en C++ yo ya sabía programación orientada a objetos, así que no me supuso ningún problema y sólo tuve que aprender las características propias del lenguaje como su sintaxis y demás.
Sin embargo, aprendes también a programar para un videojuego. Hay ciertas cosas que debes tener en cuenta a la hora de hacerlo, como por ejemplo los destructores, o que las copias no se hagan del objeto completo, sino al puntero, etcétera...
Se puede pensar que en un ordenador actual tampoco hace falta esmerarse mucho en eso, pero por poner un ejemplo práctico, al principio nosotros teníamos un escenario entero que pesaba más de un gb. Cuando añadimos las luces dinámicas, el juego petaba directamente porque no era capaz de manejar tantos vértices en pantalla, y eso es una restricción típica de las videoconsolas por ejemplo. Al final tuvimos que partirlo en varias partes. Visualmente era igual, pero internamente sólo renderizaba la luz en la parte en la que estábamos.

Y luego de la parte de programación gráfica si aprendí más: OpenGL, los "pasos" de la inicialización del motor gráfico, renderizado y texturizado ya sabía pero también aprendí a hacer modelados lowpoly, etcétera...

Y luego de temas varios, aunque ya sabía IA, redes, físicas y demás, también "aprendí" a ponerlos en práctica en una aplicación interactiva en conjunto: por ejemplo el tema de los hilos para cada IA, cada cuanto tiempo actualizábamos el motor de físicas, ...

Y no sé que más decir... también dimos por encima distintas características propias ya de un nivel empresarial, como los pasos d un juego (a lo ingeniería del software), tecnologías de programación ágil como SCRUM o variantes más centradas en moa videojuegos, pruebas de software, ...

Y tras todo este tocho post, lo de siempre: siqqueréis saber algo en particular, preguntar¡¡

1 respuesta
Wasd

#3246 Mmmm yo te voy a preguntar algunas cosas :)

Yo estoy estudiando Desarrollo de Aplicaciones Web (CFGS DAW), tengo conocimientos de programación, no avanzados, pero he programado tanto estructural como orientado a objetos en Java y día a día voy aprendiendo más.

Teniendo en cuenta lo anterior:
¿Los libros por si mismos se explican bien o es imprescindible la ayuda de un profesor?

Se deben estudiar uno a uno en orden o me puedo tomar cada libro como una "asignatura"?
Ejemplo: Hoy estudio "Arquitectura del Motor de Videojuegos" (1er libro), mañana "Programación Gráfica" (2º libro), etc... (o incluso en un mismo día ponerme horarios).

¿La creación del motor está orientada a un tipo determinado de videojuego o te enseña a hacerlo lo suficientemente abierto como para adaptarlo a tus necesidades?

¿A nivel laboral como lo ves? ¿Los conocimientos que obtuviste en el curso son extrapolables a otras áreas?

Dices que ya sabías IA, redes, física y otras cosas. ¿Todo esto los libros lo dan por sabido o te dan una base para los que no estamos tan avanzados?

Por último, y en relación con lo anterior, podrías hacerme una lista de los conocimientos que sería bueno tener para empezar bien con los libros (de forma autodidacta)?

PD: Joder, ha quedado como si fuesen preguntas de examen xD

Bueno, muchas gracias! :)

1 respuesta
GreyShock

#3243 #3244 No hagas caso de lo que diga Midgard, a NADA de lo que diga Midgard. No sé como puedes dar consejos sobre un entorno C++ macho, cada día te lo curras más para darme rabia.

No hace falta compilar Indielib ni leches. Y Visual Studio 2008 no hace falta q lo pilles de piratebay, con el exprés 2008 de la web oficial de Microsoft te sobra.

Donde más problemas tuve yo fue en vincular el directx o lo que sea que hay q bajarse (hace mucho tiempo que pasé por ello) con el entorno de Visual Studio, y es que nunca había usado VS antes de probar Indielib, así que iba más perdido que un pulpo en un garaje.

Supongo que no estarás siguiendo the "easy way", the easy way es para los que saben lo que hacen, léete bien el modo from scratch y sigue pasito a pasito las directrices, buscándolas en google si hacen falta, como hice yo. Cuando tengas algún error concreto, nos cuentas y pensamos qué puede ser.

Y una pregunta obligada... ¿Cómo vas de programación?

4 1 respuesta
Maaarc

#3248 De programación voy haciendo, pero se sobretodo ASM y C++ "industrial", pero bueno que voy haciendo mis pinitos y usando solo c++ a pelo(stdio.h stdlib.h y time para randoms) hice el de hundir la flota y un intento de space invaders (algo hice mal que si te movías y disparabas a la vez crasheaba, aunque perdí el código xd) pero bueno a nivel del 1/10 me pondría un 2 porque se como va todo el tema de matrices, vectores, arrays, llamar funciones, etc.. Se utilizar el lenguaje vamos, pero usar openGL y demás no tengo ni idea, pero poco a poco, que aprender es muy bonito ^^

Y el VS ya me va el de piratebay a la perfección así que voy a ponerme con la guia paso a paso y comento algo si me falla algún punto, thanks!

1 respuesta
BLZKZ

#3249 stdio y stdlib son de c no de C++. A saber qué llamas tu C++...

#3251 ????

4 respuestas
Maaarc

#3250 Y iostream ?

2 respuestas
GreyShock

#3250 #3251 Bueno, si ha hecho un space invaders y un hundir la flota habrá que darle algo de crédito :P Yo empecé con Indielib sin saber NADA de C++, me pusé con el Thinking in C++ y algun manualillo extra y conseguí hacer un pseudo Brutal Collage.

1 respuesta
BLZKZ

#3252 no es por darle credito o no, no discuto que haya hecho juegos incluso en asm (porque se puede, yo empecé un arkanoid para clase) pero lo que discuto es que use c++, de hecho dudo que sepa qué diferencia realmente hay entre c++ y c.

E

#3250 te has citado a ti mismo, amor.

BrUn

#3250 Tampoco seas tan quisquilloso con alguien que por ahora solo sabe lo más básico de c/c++ no ?

1 respuesta
BLZKZ

#3255 si supiera lo básico de c++ sabría que un proyecto en c++ no usa la entrada/salida standart de c, ni stdlib.

La gente se pone a aprender programación por el tejado, y empieza a suponer que sabe cosas que no sabe.

Llevo meses diciendo que empecéis por la base y no dejéis de mirar algo porque os parezca trivial, que luego vienen los lloros y las afirmaciones absurdas.

Maaarc

La verdad es que no se la diferencia entre uno y el otro, por eso me informo y pregunto si tengo alguna duda. Pero vamos, en ningún momento digo que sepa programar, es más ya he dicho que soy un manta, que yo estudio electrónica, empezaré si todo va bien informática el año que viene...

Aprendí a "programar" en un CFGS(DPE) con una asignatura de 5h a la semana y ya esta, tampoco me pidáis que sepa hacer lo que sabéis hacer vosotros porque no llego al nivel, con tener un interés y ponerme expectativas reales yo creo que voy bien y poco a poco si mejoro ya me veréis dando por culo por aquí y sino pues pido perdón por antelación por hacerte perder el tiempo xD

1 respuesta
BLZKZ

#3257 no te preocupes, mis post iban encaminados a lo que dije en el anterior.

Antes de nada deberías coger nociones básicas de lo que haces y para qué lo haces, si sabes programar no te llevará mas de un dia o dos, y luego metete con el cursillo a saco. Eso sí, si no sabes lo que es programación orientada a objetos te recomiendo que empieces con algún manual desde 0.

1 respuesta
B

Es que no se puede "copypastear" un proyecto de c++ y despues decir "voy a ver lo que hace cada cosa". Sin una base vais jodidos y os pegareis toda la vida dando palos de ciego amén de desarrollar código desastroso. El día que tenais un memory leak en la app rezaré dos padres nuestros por vosotros.

#3260 cuando hablamos de plataformas con recursos más limitados como móviles es una jodienda.

1 1 respuesta
BLZKZ

#3259 ni que fuera tan critico. Chrome y firefox tienen y mira, tan ricamente haciendose con el mercado.

1 respuesta
Maaarc

No se, no consigo que me funcione la IndieLib, así que mañana repito el manual.

Build Log Error, por si alguien se aburre

En cuanto los consejos, los aplicaré no os preocupéis. Algún libro de programación de objetos que sea imprescindible #3258 ?

1 respuesta
B

#3261 fatal error C1083: Cannot open include file: '../../common/LibHeaders/Indie.h': No such file or directory
Main.cpp

Tienes los path mal.

1
Potito

He notado una perturbacion en la fuerza, estaba inquieto, he logeado, al ver q Midgard esta siendo flameado todo cobra sentido y vuelvo a la calma.

Todo sigue su imperecedero patron.

7
LoRiOn

Alguna opinion sobre este curso para los que queremos iniciarnos? O no merece la pena y mejor empezar de autodidactas mis conocimientos son basicos de c y poco poco de java, merece la pena un curso de estos? (Aunque sea para refrescar llevo mas de un año sin programar )
http://www.offerum.com/especial-shopping-formacion-2012/nacional/descubre-tu-profesion-ideal-aprende-a-disenar-juegos-y-aplicaciones-para-apple-y-android-44743

2 respuestas
GreyShock

#3264 Sólo con esto:

Adéntrate en el mundo de las nuevas tecnologías por sólo 49€ (precio real: 750€).

Ya me suena a timo xD

3
ier

#3264 Me he estado mirando el curso este y la empresa que lo monta, no me llama nada la atención. Me da la impresión de que te van a soltar un tochaco de apuntes copiados de a saber donde ,digitales por supuesto, y pista. No mencionan ni metodología( que seguro que no tienen) ni profesores que hayan hecho cosas interesantes en la industria.

Creo que con 6 meses(que es lo que dura la mierda de curso este) de aprendizaje autodidacta con disciplina aprenderás mucho más.

alterego

Como ya comentaron antes, hay un curso que tiene buena pinta, que está a punto de empezar, a principios del año que viene. Online y gratuito.
http://www.udacity.com/overview/Course/cs255/CourseRev/1

1 respuesta
Meleagant

#3267

Llevo meses apuntado esperando a ver si empieza, tengo muchas ganas de probarlo ya, a ver si le dan caña que seguro que aquí tendrá mucho seguimiento.

Se supone que empieza en Diciembre.

MarioRomero

#3247 A ver si soy capaz de responderte a todo de la mejor manera posible ;)

¿Los libros por si mismos se explican bien o es imprescindible la ayuda de un profesor?
Los libros te permiten estudiar todo el temario que aparece sin mayor problema. Nosotros en clase dábamos la teoría mediante unas transparencias que eran un resumen de su apartado del libro, de tal manera que el libro nunca tiene menos sino más. Además, desde la misma página se pueden descargar absolutamente todos los ejemplos de código que dimos, que era la parte práctica. Estas partes en la mayoría de los casos están explicadas en el libro también.
Así que, respondiendo a tu pregunta: sí, creo que los libros se pueden estudiar de manera autodidacta.

Se deben estudiar uno a uno en orden o me puedo tomar cada libro como una "asignatura"?
Ejemplo: Hoy estudio "Arquitectura del Motor de Videojuegos" (1er libro), mañana "Programación Gráfica" (2º libro), etc... (o incluso en un mismo día ponerme horarios).

En nuestro caso, y así es como te recomiendo que lo hagas, dimos los dos primeros libros en el 1er cuatrimestre y los dos siguientes en el 2do cuatrimestre. Cada día dábamos dos sesiones de uno de los libros y dos del otro, o tres y dos, o dos y tres, ... dependiendo de la densidad de cada sesión, pero siempre intentando llevar los dos libros a la par, sobre todo con los dos primeros libros, ya que se complementan. Por sesión me refiere a un tema del libro, que ahora no recuerdo como los nombran ahí xD

¿La creación del motor está orientada a un tipo determinado de videojuego o te enseña a hacerlo lo suficientemente abierto como para adaptarlo a tus necesidades?
Como tal no se crea un motor, sino que se utiliza uno libre que es OGRE3D. Eso no quiere decir que cuando termines no te veas capaz de hacer uno, por lo menos en 2D que es más fácil, aunque claro, puede que yo piense eso porque al fin y al cabo al estudiar informática hay conocimientos que he dado.
Lo bueno de OGRE3D es que te da lo mínimo para poder lanzar el motor gráfico que al fin y al cabo es lo más complicado, y directivas para ello. Es al final una librería que comunica nuestro juego con la gráfica, como una implementación en alto nivel, en este caso C++, de OpenGL o DirectX. Todo lo demás o lo haces tú o buscas librerías. ¿Qué quieres entrada/salida con el teclado? Usa OIS. ¿Qué quieres sonido? OpenAL, SDL, ... ¿Qué quieres una interfaz gráfica bonita? CEGUI. Y así con todo.
Y eso te da mayor libertad para hacer lo que quieras y como lo quieras, dándote un control casi completo del desarrollo.
OGRE3D por tanto se encargaría de inicializar el motor y actualizarlo, es decir lo que realiza un motor gráfico.
Respecto a hacia que tipo de videojuego está orientado, sólo hay una "restricción" que es el 3D. No quiere decir que no se pueda hacer en 2D, pero el curso está hecho para 3D y además hay mejores opciones 2D que usar un motor 3D. En el video con los trabajos finales del curso, puedes ver que hay distintos tipos de videojuegos:

(Que alguien me lo inserte, please)
Aunque la mayoría son de acción, podrás ver que hay distintos tipos de videojuegos. Mi equipo hicimos RoboCorps que era un FPS, pero la mayoría son en 3era persona.

¿A nivel laboral como lo ves? ¿Los conocimientos que obtuviste en el curso son extrapolables a otras áreas?
A nivel laboral, como experiencia de trabajo no podría decirte porque no lo he intentado aún, ya que quiero terminar la carrera antes de empezar.
Respecto a los conocimientos, sí que creo que es una gran oportunidad de introducirte en el mundo laboral. Antes de hacer el curso tenía conocimientos, pero no sabía como ponerlos en práctica. Después del curso y haber realizado 3 minivideojuegos más el proyecto final, puedo decirte que sé como funciona. Y el hecho de que esté hecho en C++ y con OGRE3D, no quiere decir que no pueda salir de ninguno de los dos. Es como cuando aprendes un nuevo lenguaje, si sabes programar, es aprender sintaxis. Y en este caso es lo mismo: es más, el hecho de que sea en 3D hace que el problema de las matemáticas y quaternios de la programación en 3D se explique y no tengas que hacerlo tirando de diversas webs. Así que si luego quieres pasarte al 2D, veo más fácil un paso 3D->2D que 2D->3D.
Respecto a los conocimientos, un claro sí. Este año, estoy en cuarto y hay asignaturas que no estoy haciendo practicamente nada porque ya dí casi todo en el curso. La mayoría de los conocimientos son extrapolables a otras áreas perfectamente. Buenos hábitos de programación, patrones de diseño, modelado 3D y un largo etcétera.

Lo que si quiero remarcar, y no lo digo yo sino que lo dicen los propios desarrolladores de videojuegos que nos han dado charlas tanto el año pasado como los que no están dando ahora, es que para entrar en el mercado laboral hay que tener terminado un videojuego. No tiene que ser perfecto, ni original, ni nada de eso... sino que tenerlo terminado desde el principio al final, porque de esta manera desmuestras que puedes realizarlo, que sabes hacerlo y que te has peleado con ello. Y dicho por ellos, es preferible contratar alguien que ha termiando un videojuego, que un gurú de la programación en X idioma y que luego es incapaz de ponerlo en práctica en ese campo.
Otro punto es que hay que ser multidisciplinar. Sobre todo en los estudios pequeños, tienes que saber programar, diseñar, sonido, etcétera, y en este caso, el curso es capaz de explicar todos estos puntos sin pecar de abarcar mucho y al final no enseñár nada.

Dices que ya sabías IA, redes, física y otras cosas. ¿Todo esto los libros lo dan por sabido o te dan una base para los que no estamos tan avanzados?
Ni mucho menos lo dan por sabido. De hecho yo sabía pero no por clase, sino porque siempre me había interesado. Pero en el curso aprendí muchísimo sobre esos temas y este año, como ya he dicho antes, tengo IA y Redes y no estoy teniendo ningún problema, porque lo he dado casi todo en el curso, sobre todo en IA.

Por último, y en relación con lo anterior, podrías hacerme una lista de los conocimientos que sería bueno tener para empezar bien con los libros (de forma autodidacta)?
Aquí cada uno te dirá una cosa, pero seguro que todos coincidimos en que debes de tener conociemientos de programación. No tienen que ser de un gran nivel, pero si al menos tener nociones básicas y haber programado antes aunque sean pequeñas piezas de código. El curso abarca la programación orientada a objetos y enseña C++ desde cero, empezando de hecho con las prácticas de buen programador en C y que son completamente validas en C++. Yo no sabía C++ antes del curso, pero si llevaba ya algunos años programando en C y Java, y eso se nota, sobretodo a la hora de tener esa "idea feliz" que sólo te da la experiencia.
Otro de los conocimientos que yo tenía de antes es el modelado en 3D con Blender, ya que dí en la Uni la asignatura de Computer Animation and Rendering. Para la gente que no sabía nada de eso, y aunque en el curso se da la mayoría de las cosas, mi profesor, que también es el de la asignatura, nos dió un CD de un tutorial que además está en Internet de manera libre en
http://www.esi.uclm.es/www/cglez/fundamentos3D/
y que te recomiendo porque él es profesor certificado por la Blender Foundation.
Y por último, no es un conocimiento pero es más necesario que nada: motivación. Ganas y motivación, porque ya te digo yo que hay días que no te apetece encender el ordenador y, o tiras de ahí, o lo vas dejando y adios. Creo que eso es lo mejor de hacer el curso presencial, que te obligas con las entregas a ir al día.

Y espero que con eso haya podido responder a tus preguntas. Es un buen tocho, pero quería responderte lo mejor posible.

Y ya sabés: cualquier duda que tengas o si algo no te queda claro, vuelve a preguntar :D

5 4 respuestas
Wasd

#3269 Muchísimas gracias :) Me ha quedado todo perfectamente claro y tanto las respuestas como los nuevos recursos que has aportado me servirán bastante, seguro.

1 respuesta
Tema cerrado

Usuarios habituales

Tags