¿Libros de programación de juegos que no enseñan programación? [cerrado]

29

Soy un programador normal con aproximadamente 3 años de experiencia, que está interesado en entrar en el desarrollo del juego. El problema al que me enfrento es que cuando miro estos libros "para principiantes", la mayoría de ellos enseñan habilidades básicas de programación, y no tengo la paciencia para leerlo o encontrar que valga la pena. Pero, cuando miro libros más avanzados, están sobre mi cabeza y, una vez más, son inútiles para mí. Lo que estoy buscando son libros que expliquen lo esencial de los juegos, pero a un nivel más razonable.

Por ejemplo, estoy muy familiarizado con todo tipo de estructura de datos (hashes, árboles, listas vinculadas) y con muchos algoritmos comunes (clasificación, búsqueda), pero no sabría cómo, por ejemplo, implementar la detección de colisiones de manera efectiva. También tengo experiencia en el uso de bibliotecas extranjeras, así que sé cómo usar la documentación para aprender una API, por lo que tampoco necesito un libro "Aprender a usar X".

Personalmente, no me importa qué plataformas / idiomas / bibliotecas se usen en los libros, ya que me siento cómodo en muchos idiomas, pero el juego que estoy buscando crear usaría Javascript y el lienzo HTML5.

¿Alguna sugerencia? ¿Alguno que sea gratis?

PD: Debo señalar que mi nivel de matemáticas y física es relativamente bajo, y un libro que integre suavemente esas cosas sería una ventaja.

EDITAR: Debo mencionar que estoy interesado en la programación 2D, y en este punto todavía no me importa el 3D.

Mike
fuente
1
¿Has intentado hojear / pasar las páginas con cosas que ya sabes?
Ricket

Respuestas:

11

¿Has mirado la serie Game Programming Gems ? Podría darle los detalles que parece estar pidiendo. No hay muchos libros en HTML5 / canvas ya que es bastante nuevo, especialmente los que hablan sobre programación de juegos.

timfreilly
fuente
9

¿Qué aspecto de la programación de juegos tienes curiosidad? Hay bastantes libros que discuten aspectos específicos de la programación de juegos. Poner en marcha un juego no es difícil, y cualquier lógica de juego es como la forma en que administraría los datos para cualquier otra aplicación, quizás un poco más preocupado por la velocidad de ejecución. Sin embargo, entrar en cosas como la programación de gráficos puede ser algo completamente diferente. Comience con un marco básico de un juego, luego concéntrese en un área que le interese, como diseñar un sistema de combate robusto o sincronizar animación o sombreadores.

Libros de tipo información general que he encontrado útiles:

Probablemente se encuentre en la etapa en la que obtendrá la mayor cantidad de información al ver varias publicaciones de tutoriales para motores específicos en línea. También hay una cantidad decente de juegos de código abierto que puedes ver.

Una cosa interesante para estudiar podría ser el motor Monocle .


Editar :

Con respecto a las matemáticas, también estoy un poco inestable sobre mis cimientos. Un buen recurso para estas áreas temáticas generales es Khan Academy .

Para otras cosas gratis, simplemente navega por GameDev.net, y posiblemente los artículos de MSDN para XNA.

michael.bartnett
fuente
6

Si confía en la programación orientada a objetos, debe asegurarse de elegir algo que cubra el diseño orientado a componentes. Es un enfoque de programación dentro de OOP que es muy poderoso en el desarrollo de juegos y se ha convertido en un enfoque estándar en la última década.

Dos recursos que contribuyeron enormemente a mi comprensión de la DQO:

Hay una respuesta en Stack Overflow que contiene una increíble lista de recursos: ingeniería de software basada en componentes en la literatura de juegos .

Nota: COD no se usa únicamente en el desarrollo de juegos. Puede encontrar recursos que explican la DQO en contextos completamente diferentes, lo que no necesariamente será útil para comprender el papel que desempeña en los juegos (YMMV).

doppelgreener
fuente
6

Agregaré al diluvio de títulos aquí:

Game Engine Architecture de Jason Gregory (Naughty Dog) para obtener una descripción general del motor del juego a un nivel razonablemente detallado.

Detección de colisión en tiempo real por Christer Ericson (God of War) para obtener una descripción completa y exhaustiva de los sistemas de detección de colisión.

Renderizado en tiempo real por Tomas Moller y Eric Haines para un tratamiento de renderizado en profundidad similar.

user_123abc
fuente
5

Recomiendo Introducción a la programación de juegos con DirectX 9.0c: un enfoque de sombreador de Frank Luna. También está disponible para D3D10 si tienes curiosidad. El libro asume el conocimiento básico de C ++ pero nada específico del juego y sin COM, y comienza con varios fundamentos matemáticos como vectores y matrices, y guía con bastante suavidad al usuario a través de la configuración de juegos de básicos a intermedios. Lo que es notable, por supuesto, es que a medida que pasa el tiempo, las cosas cambian, por ejemplo, no enseña instancias de hardware u otras optimizaciones que son relativamente nuevas.

Anna Lear
fuente
Aunque dados los cambios significativos entre 9 y 10, iría con la versión para DirectX 10 ahora.
John Robertson