desarrollo y produccion de videojuegos resumen
TRANSCRIPT
Desarrollo y Producción de videojuegos
Definición: Un juego es “una actividad competitiva en donde se quieren alcanzar un conjunto de metas, siguiendo
un marco de reglas preestablecidas.” Su finalidad puede ser principalmente divertir o educar.
Un videojuego es un medio de entretenimiento que involucra a un usuario, denominado jugador, en una interacción
constante entre una interfaz y un dispositivo de video. Recrean entornos y situaciones virtuales en los que el
jugador puede controlar uno o varios personajes para alcanzar objetivos por medio de determinadas reglas
Desde el concepto inicial hasta el videojuego en su versión final. Es una actividad multidisciplinar, que involucra
profesionales de la programación, el diseño gráfico, la animación, el sonido, la música, la actuación, etcétera.
Los videojuegos comerciales son normalmente financiados por una distribuidora y tardan varios años en
desarrollarse. Dada la complejidad de un videojuego, dicho proyecto debe de manejarse a través de un proceso,
involucrando así una serie de pasos organizados que guiarán cada actividad hasta el producto final.
Los primeros videojuegos fueron desarrollados en la década de 1960, pero requerían grandes ordenadores y no
estaban disponibles para el público en general. El desarrollo del videojuego comercial comenzó en 1970 con la
llegada de la primera generación de consolas de videojuegos y ordenadores domésticos. El precio promedio de la
producción de un videojuego lentamente aumentó de $1-4 millones de dólares en 2000 a más de $5 millones en
2006, y luego a más de $20 millones en 2010.
La industria de video juegos está basada en la creación, publicación y distribución de productos.
Géneros:
Acción: actuar sin pensar dos veces
Aventura: la historia importa y lo que importa es seguir una historia
Estrategia: elecciones no triviales, podría verse como el inverso a accion.
Simulación: ejercicios de optimización
Puzzle: pensar de forma analítica
Juguetes: sirven solamente para divertirse
Educacional: experimentar para aprender
Los desarrolladores son los responsables de la creación de los videojuegos
Publishers
Son los responsables de la selección de títulos de videojuegos, tanto provenientes de estudios de desarrollo independientes o de estudios internos. Suelen administrar la verificación, la localización (traducción a diferentes idiomas y costumbres), el marketing, la manufactura y en algunos casos,
la distribución a los Retailers (Tiendas donde se pueden comprar los video juegos en caja. Compran los video juegos a un Distribuidor o Publisher.)
Distribuidores: Venden juegos a los Retailers en nombre de los Publishers pequeños que no tienen los recursos necesarios.
Retailers: Tiendas donde se pueden comprar los video juegos en caja.
Los distribuidores Venden juegos a los Retailers en nombre de los Publishers pequeños que no tienen los recursos necesarios.
Equipos de desarrollo
DISEÑO
El equipo de diseño esta compuesto por el Diseñador del Juego, Diseñadores de Niveles y el escritor. A pesar
de que todos en el equipo contribuyen al diseño, este grupo es el que establece el diseño orignial de juego.
Crean y definen los elementos interactivos y narrativos
Diseñador del Juego; Responsable del concepto general.
Diseña la mecánica, gameplay y factor diversión del juego. Si es el Líder de Diseño evalúa nuevas ideas
determinando si pueden ayudar o perjudicar al juego. Encargado del documento de diseño del juego
Diseñador de Niveles: Construye la arquitectura interactiva (tanto edifcios como terreno natural) para cada nivel
del juego. Diseño de campañas o misiones
Este rol es apropiado para juegos de rol o estrategia, en los que el disenador utiliza un editor de ambiente
específico del juego para colocar terrenos y recursos.
En todos los tipos de juego, el diseño de niveles puede incluir establecer objetivos, habilidades y comportamiento
de los enemigos.
Escritor de guiones/historia
Investigan y crean la historia de trasfondo
Componen el texto en pantalla, escriben los diálogos y las voces para los personajes en el juego
Crean el guion de las escenas para las introducciones y transiciones. Escribe los manuales o libros de ayuda del
juego.
PROGRAMACION
El diseño del juego es plasmado por parte de los programadores. Transforman las ideas, arte y música y en un
programa de software. Escriben el software que implementa la funcionalidad pedida por diseño, la tecnología
necesaria para mostrar los contenidos, y las herramientas para construirlos
Programador junior: Debe demostrar talento, habilidades para codificar y motivación. Agrega pequeños
elementos al juego. Tiene conocimientos báscios de programación de AI, programación gráfica, matemáticas 3d,
físicas, sistemas de colisiones, teoría de diseño de juegos.
Programador líder: Es parcialmente un gerente y parcialmente un programador.
Debe tener habilidades para liderar el equipo y actuar como nexo entre el productor y el equipo de programación.
Toma decisiones de análisis y diseño de software, que tecnologías usar y asigna tareas a los demás
programadores.
Es responsable de la estructura general y la implementación de todo el código del juego.
Programador de herramientas/motor (infraestructura)
Ayuda a diseñar y construir la base del motor en el cual correrá el juego.
Debe conocer conceptos matemáticos, gráficos, detección de colisiones.
Tiene conocimientos sólidos de APIs gráficas, conceptos 3d y física.
Construye herramientas para ayudar a los artistas y diseñadores a interactuar con el motor.
Se escriben scripts que permiten especificar acciones a los personajes controlados por computadora
Se diseñan plugins de programas gráficos para que los artistas puedan integrar las texturas y fondos en el juego
Se crean editores de mapas y niveles.
Debe tener sólidos conocimientos del motor del juego y del sistema objetivo (PC, consola).
Programador gráfico/efectos especiales.
Deben ser expertos en las técnicas de programación gráfica
Deben saber optimizar los algoritmos a modo de aprovechar mejor los recursos dedicados al area gráfica.
Se requiere de bastante experiencia ya que sus principios se basan en matemáticas y el conoc imiento de
particularidades de APIs gráficas.
Programador o Ingeniero de audio.
Escriben las herramientas de software que soportan los sonidos y música en los juegos.
Debe conocer los procesos de producción, grabación y mezcla de audio, estándares de compresión, procesamiento
de señales y APIs de música interactiva
Programador de inteligencia artificial.
Proporciona inteligencia a las entidades del juego escribiendo las reglas que manejan su comportamiento.
Es un trabajo en el que se debe determinar la mejor forma de hacer que las cosas parezcan inteligentes y a la vez
minimizar los costos de procesamiento.
Conocimientos:
Búsqueda de caminos , patrones y árboles de decisión, autómatas deterministas, maquinas de estados finitas,
redes neuronales, algoritmos genéticos, entre otros
Programador de redes
Los juegos multijugador tienen desafíos únicos basados en un conjunto de variables: el sistema de usuarios, las
capacidades
cambiantes de las redes, la arquitectura del servidor del juego, sistema de facturación, aspectos de seguridad,
entre otros.
Se deben conocer conceptos como: arquitecturas (p. ej. cliente/servidor), seguridad de redes, protocolos de red,
concurrencia,
sincronización, APIs de red y aspectos de administración y manejo de bases de datos.
DISEÑO ARTISTICO
Constructor de objetos 3D
Diseña gráficamente objetos físicos como vehículos, muebles, armas, etc
Artista de concepto
Trabajan con el equipo de diseño para crear el aspectoConcept artists work with the designer to create the look of
the game. You make multi-
ple sketches of characters and settings, trying to bring the designer’s vision to lifePuede crear historietas para las
secuencias cinemáticas
Debe poder esbozar los elementos importantes de la escena rápidamente.
Probablemente no cree arte que vaya al juego, pero es responsable por la apariencia básica de muchas cosas.
En las tormentas de ideas de diseño dibuja las ideas en el momento.
Crean la mayoría del arte que aparece en el documento de diseño.
Artista de texturas
Construyen los elementos visuales, escenarios y personajes
Hay diferentes técnicas utilizadas comunmente para crear texturas, y necesita conocerlas todas y ser capaz de
escoger la mejor para cada trabajo en particular. Algunos de los métodos más comunes es la manipulació de
fotografías, pintura a mano, aplanar modelos detallados, texturas algorítmicas y mapeo de relieves.
Artista de (CUTSCENE)
Sigue la historieta generada por el artista de concepto para generar una secuencia de cinemática de alta calidad,
tanto
con animaciones pre renderizadas, o con un script que crea la escena utilizando el motor del juego. Las cutscenes
no interactivas
requieren movimiento de camara virtual, iluminación, animación de personajes y objetos, efectos especiales, fondos
y utilería
Constructor de personajes
Crea los personajes del juego, que pueden ser modelos de baja o alta resolucion dependiendo
de la plataforma y del diseno del juego.
Trabaja de cerca con el artista de concepto y los programadores
Animador de personajes
Constructor de niveles
Trabaja de cerca con el disenador de niveles para colocar estructuras, objetos, y personajes en el nivel del juego.
Muchas compañías utilizan herramientas propietarias para crear el mundo en lugar de paquetes 3D, por lo que no
esta tan difundido como otros roles.
Director de arte y animaciones
El director de arte es el que conoce todas las herramientas, tecnologías y métodos,
Trabaja de cerca con el productor y diseñador para manejar el desempeño del equipo de arte.
Técnico de arte
Ayuda a los equipos de arte a vencer los obstáculos tecnológicos y de software.
Es el comprador de hardware y software sirviendo como enlace con las compañías de software gráfico para ayudar
a decidir que paquetes de software comprar
AUDIO
Diseño del estilo y ambiente sonoro, Composición, dirección y creación musical, Composición y creación de efectos
sonoros (Librerías de instrumentos y efectos), Masterización y edición.
Ingeniero/diseñador de sonidos
Crea todo el material de audio en el videojuego, excepto la música.
Genera los efectos de sonido
Trabaja junto con los equipos de diseño y programación
Compositor
Son quienes componen la música
Proceso El desarrollo de un videojuego generalmente sigue el siguiente proceso:
Concepción de la idea del videojuego
Preproducción
Producción
Testing ALFA y BETA
Congelación de código y Liberación
Parches y Actualizaciones
Concepción del Videjuego Definicion del concepto del juego. la idea fundamental “en 25 palabras o bien una idea rápida y otra mas completa.
Se realiza una tormenta de ideas. Se crea el arte de concepto para mostrar como se verá el juego y su historia.
En esta etapa se define los aspectos fundamentales que conformarán el videojuego:
Concepto de alto nivel: Es una descripción en pocas oraciones de lo que es el juego. Incluye las características que lo destacan y lo diferencian de
los demás juegos. Muestra la visión del juego.
Propuesta del juego: Es un documento que se utiliza para realizar la presentación del juego en busca de financiamiento. Resume el documento de
concepto, explicando de que se trata el juego, porque será exitoso, como será desarrollado y como generará dinero
Documento de concepto: Describe el concepto en forma más detallada.
Puede incluir las siguientes secciones:
Concepto de alto nivel
Género
Gameplay
Características
Ambientación (incluye arte de concepto)
Audiencia objetivo
Plataformas de hardware
Cronograma estimado
Presupuesto
Análisis competitivo
Equipo de desarrollo
Análisis de riesgos
Participan
Diseñador
Líder técnico (Programador)
Artista de concepto
Productor
Elementos que incluye un GDD (Game Design Document)
Género Clasificación según su naturaleza
Jugadores Modalidad de juego (individual o
colectivo). Si es multijugador, si éstos son humanos o entra la máquina.
Historia Resumen de la historia del juego, de qué trata y cómo lo trata.
Look and Feel A partir de los bocetos se define el aspecto gráfico y artístico del juego,
colores, temas dominantes, musicalidad,
técnicas de diseño 3D o 2D, posiciones de
cámaras, etc.
Interfaz de Usuario Se define como la manera en la que
interactuará el jugador con el juego y con qué mecanismos contará para ello.
Objetivos Cuáles son las metas del juego, de acuerdo a la historia de éste.
Reglas Qué cosas podemos hacer y cómo vamos a dejar que se hagan.
Características Especificaremos las principales características de cada personaje del juego
y de los elementos que intervienen en
éste.
Diseño de Niveles Describiremos qué niveles, según la
historia o dificultad, tenemos, cómo serán éstos, cuántos serán, y qué dificultad y
retos se plantearán en cada uno de ellos.
Requerimientos técnicos Estableceremos los requerimientos técnicos de equipo que necesitará nuestro
juego para poder ejecutarse.
Marketing Un mal estudio de marketing puede tirar
por tierra la inversión millonaria de un
producto de este tipo, es fundamental el
trazado de las líneas de publicidad para nuestro juego.
Presupuesto Fijamos el presupuesto aproximado que necesitaremos
Pre-produccion Este puede utilizar el período de Pre-Producción para determinar si el proyecto puede ser realizado por el equipo. exploramos las posibilidades abiertas por el
concepto. Se plantean las reglas y se definen las posibilidades de jugabilidad. Ejemplo Campaña single-player basada en misiones” “Con posibilidad de
multiplayer”, “Con un motor 3D para potenciar la animación”. Se hace un trabajo de investigación respecto a esos elementos:
• Cuál será el estilo visual
• Cómo se van a realizar los escenarios y unidades
• Qué tipo de tecnologías hacen falta, evaluar software existente para realizarlas, realizar las primeras pruebas
• Documentación histórica
• Esbozos del guión, personajes, contexto histórico
• Soporte para modificaciones y extensiones de usuario
• Preparar prototipos si es posible: Max, Photoshop, Director, Visual Basic
Se generan:
Plan de proyecto
Es una guía que indica como va a ser construido el juego. Se divide en varios documentos independientes que son plan
de personal, plan de recursos, seguimiento de proyecto, presupuesto, análisis de pérdidas y ganancias, cronograma de
desarrollo y definición de milestones.
Documento de diseño
Define el juego describiéndolo en forma clara y detallada.
Detalla la mecánica, gameplay, vistas, niveles, personajes, las distintas pantallas, interfaz de usuario, historias, assets,
etc
Documento de diseño técnico
Es un documento de diseño de software
Describe las herramientas que serán utilizadas.
Lista hardware y software que debe ser comprado.
Establece un cronograma de implementación.
Plan de producción de arte
Indica la estética del juego y el cronograma de creación de arte. Incluye una Biblia de arte que describe los objetos a ser
creados
Prototipo abstracto
Muestra la visión y demuestra que se puede llegar de las ideas a la realidad en forma efectiva y razonable . Es un modelo que
captura la esencia del juego.
Diseño
En esta fase se detallan todos los elementos que compondrán el juego, dando una idea clara a todos los miembros del grupo desarrollador acerca de
cómo son:
Historia; forma en que se desenvolverán los personajes del juego y la historia del mundo representado.
Guión: el equipo de Guión trabaja por conseguir un borrador en el que queden plasmados cuales serán los objetivos en el juego , las partes
en las que se dividirá, el contexto en el que se desarrollará la acción, y cuales y cómo serán los principales personajes del juego.
Arte conceptual: se establece el aspecto general del juego. En esta etapa un grupo de artistas se encargan de visualizar o conceptualizar
personajes, escenarios, criaturas, objetos, etc.
Sonido: detallada descripción de todos los elementos sonoros que el juego necesita para su realización.
Mecánica de juego: es la especificación del funcionamiento general del juego. Es dependiente del género y señala la forma en que los diferentes
entes virtuales interactuarán dentro del juego, es decir, las reglas que rigen éste. se marcan las pautas de interacción con el juego, las normas
internas y el tipo de comunicación que debe darse en caso de que el destino del juego sea el entorno on line.
Diseño de programación: describe la manera en que el videojuego será implementado en una máquina real mediante un cierto lenguaje de
programación y siguiendo una determinada metodología. Generalmente en esta fase se generan diagramas de UML que describen el
funcionamiento estático y dinámico, la interacción con los usuarios y los diferentes estados que atravesará el videojuego como software.
De toda la fase de diseño es necesario generar un documento llamado Documento de Diseño, que contiene todas las especificacio nes de arte,
mecánicas y programación.
Diseño Técnico: se asemeja con la producción de cualquier otro software, su diseño es similar, es donde se trata el juego como un verdadero producto
de software. Se generaran los distintos tipos de flujos de relación, los diagramas que describan el funcionamiento estático y dinámico, la interacción con
los usuarios y los diferentes estados que atravesará el videojuego como software. A partir de aquí se generará nuestro Documento de Diseño.
El diseño de Inteligencia Artificial (IA) del juego y el motor asociado a ella deben darse ahora y, evidentemente antes de qu e el motor de juego sea
materializado. También se diseña el Motor Físico, encargado de generar diversos aspectos físicos de los elementos y del mundo donde se lleva a cabo el
juego (explosiones, disparos, caídas, etc.).
Se desarrollan todas las piezas fundamentales del juego:
– Motor gráfico y tecnologías asociadas
– Editor
– Exportadores
– Interfaz de juego
– Lógica de juego, comportamientos
– Soporte de red
– Tecnologías de IA, y primeras muestras
– Menus, sonido, efectos visuales básicos
– Implementación definitiva de un rango de unidades, habilidades y objetos
– Ritmo de juego
– Elementos gráficos reutilizables: texturas, decoración
– Varias muestras de escenarios, misiones, puzzles
– Requsitos del sistema ya evaluables
– Diseño de definición casi completo
– Herramientas totalmente usables
Se genera la Biblia de Arte del juego con cuatro elementos, historia, sonido, interfaz y gráficos.
Documento Tecnico de Diseño, La Historia asi como la primera versión de Game Engine
La implementación No es un proceso creativo en sí mismo pero a pesar de ello tiene una importancia crucial: se finalizan contenidos, se perfilan
detalles, se corrigen errores juego y utilizando, por supuesto, el motor de juego previsto.
Producción
Aquí se llevan a cabo todas las tareas especificadas en la fase de planificación, teniendo como guía fundamental el documento de diseño. Esto incluye
entre otras cosas la codificación del programa, la creación de sprites, tiles y modelos 3d, la grabación de sonidos, voces y música, la creación de
herramientas para acelerar el proceso de desarrollo, entre otras.
Programación: la mayoría de los juegos se programan utilizando el lenguaje C++ dado que es un lenguaje de alto nivel que permite un rápido acceso
a los componentes de hardware de una computadora o consola de juegos que lo hace más accesible.
Ilustración: los juegos 2D deben ser ilustrados por artistas experimentados, quienes trabajan tomando en consideración las limitaciones técnicas del
hardware sobre el cual correrá el juego, esto incluye: Cantidad de colores disponibles, tamaño de los sprites, resolución final de los sprites y formatos
a utilizar. Los artistas 2D también son los encargados de elaborar las animaciones del juego.
Interfaz: es la forma en que se verán los elementos de la interfaz gráfica de usuario y el HUD, mediante los cuales el usuario interactuará con el
juego.
Animación y Modelado 3D: los artistas utilizan herramientas comerciales de modelado y animación tridimensional como 3DS Max, Maya,
XSI/Softimage, Blender(el cual no es comercial), etc. Pero además usan herramientas desarrolladas internamente que facilitan algunas de las
funciones más comunes del proceso de creación de juegos.
Sonido: los ingenieros de sonido se encargan de crear sonidos para cada objeto o personaje del juego. Pueden crear sonidos de sde cero o utilizar
sonidos del ambiente y modificarlos según sus necesidades.
Se comienza la construcción del juego
– Se escribe el código. – Se crea el arte gráfico. – Se crean los sonidos. – Se crean niveles del juego – Verificadores comienzan a trabajar cuando algo puede ser jugado – Se realizan cambios y se deben actualizar los documentos – Todas las misiones, scripts, etc. – Todas las unidades, habilidades, etc. – Se programa la Inteligencia Artificial de acuerdo a las necesidades del juego
De acuerdo con el diseño de misiones y situaciones Niveles de dificultad
– Grabación de voces – Producción del manual – Traducciones
Se encargan de asegurar que el progreso del proyecto sea acorde con lo planificado
Productor externo :Se asegura que el proyecto esté encaminado y siga la planificación Productor interno: Gestiona lo referente a el equipo de desarrollo y Representa al equipo y al
producto hacia el exterior
Deben estar definidas en forma clara, medible y concisa. El ritmo de trabajo debe ser constante
Motor del Juego.
Es el elemento más importante, y se puede decir que es la parte fundamental de este proceso tan costoso y duradero. El Motor del Juego hace referencia a
una serie de rutinas que permiten la representación de todos los elementos del juego, debemos controlar cómo se representan los elementos del
juego y cómo se interactúa con ellos. El Motor del Juego es el equivalente a la conjunción del Motor Gráfico, Motor de Sonido, Gestor de IA y
Motor Físico, además de las reglas necesarias para crear el universo completo de nuestro juego y facilitar la inmersión del gamer.
Pruebas
Al elaborar las pruebas primero, el programador no siente que las pruebas destruyen el código
Se tiene mucha retroalimentación.
Ayuda al realizar reconstrucción logrando un mejor diseño.
Reducen tiempo de debugging sobre el juego
Requiere de un framework para correr las pruebas de forma automatizada.
Difícil de adoptar ya que no es intuitivo realizar pruebas antes que codificar, muchas veces no se sabe como escribirlas o que probar específicamente, lo cual lleva a frustraciones por parte de los
desarrolladores.
ALFA
Es el punto en el que el juego puede ser jugado de principio a fin.
Se comienza la verificación en busca de errores
• Code Complete (también llamado alfa)
– Todos los elementos de funcionalidad están programados • Incluyendo todas las variantes!
– Todas las misiones y scripts están completos con sus niveles de dificultad – El código está razonablemente optimizado y probado para compatibilidad con sistemas
BETA
Todos los assets son integrados y el desarrollo se detiene, lo único que se hace es arreglar errores.
El objetivo en esta etapa es estabilizar el proyecto y eliminar la mayor cantidad de errores posible antes de liberar el juego
• Content Complete (también llamado beta)
– Se terminan todas las variaciones de contenido: • Decoraciones de misión • Gráficos • Textos y traducciones • Voces
Tenemos un disco con todo el juego completo, instalable, y jugable de principio a fin en todas sus variantes: misiones, multiplayer
QA
– Para ver si pueden ganar, perder, hacer que falle o se cuelgue, deje de funcionar en condiciones razonables y no razonables
– Para encontrar errores, inconsistencias y erratas en los textos
– Sugerencias de última hora, casi todas desechadas
LIBERACION
Problemas en el desarrollo de videojuegos
La velocidad con que evoluciona la tecnología hace que constantemente se deba estar aprendiendo y adaptando sin permitir tener un conocimiento y una infraestructura estable.
La comunicación se dificulta por ser una industria multidisciplinaria. El desarrollo se basa en la interacción de varias disciplinas por lo que aumentan los problemas en la comunicación, además con distintas formaciones.
Existen diversas soluciones Se pueden atacar en distintas manera, cambios en las formas de trabajo (métodos), cambios en los procesos (hay una cadena de comunicación para algo simple, se cambia y se comunican directamente, etc.), cambios en las herramientas (se crea una herramienta que permite modificar fácilmente los modelos3d y compila automáticamente para el formato utilizado en el videojuego), o también usando enfoques y paradigmas nuevos (se debe escribir una prueba antes de hacer código).
Parches y Actualizaciones
En los juegos para PC, se ha vuelto casi inevitable que se requieran parches luego del lanzamiento.
La actualización es diferente al parche, ya que representa contenido adicional creado para mejorar el videojuego.
La actualización es un proyecto y necesita ser manejado como tal, con verificación, milestones, y el resto de los elementos del proceso de desarrollo
Verifican que el contenido y funcionalidad del juego son correctos y están completos
– Funcionalidad: ¿hace lo que debe? • Compatibilidad: ¿en todas las máquinas? • Versiones localizadas: ¿en todos los idiomas?
– Jugabilidad: lo que hace, ¿es divertido? • Progresión: ¿la dificultad crece adecuadamente? • Usabilidad: ¿resulta claro lo que hay que hacer? • Equilibrado: ¿formas obvias de ganar? ¿Hay opciones demasiado buenas o bastante
inútiles? – Legal: ¿algo que provoque pleitos?
• ¿en distintos paises?
Herramientas Herramientas de Programación
• Desarrollo: – Compiladores: MSVC, Intel, gcc, Codewarrior... – Depuradores y analizadores run-time: MSVC, Boundschecker, Purify...
– Profilers: VTune, profilers hardware – Kits de desarrollo para consola
• Control de código (formalmente: gestión de configuración) – Visual SourceSafe, Perforce, CVS, BitKeeper...
• SDKs y librerías externas – DirectX, OpenGL, MaxSDK.
Herramientas Gráficas
• Photoshop para imágenes y texturas • 3DS Max, Lightwave, Maya o SoftImage para modelado y animación 3D • Sin olvidarnos de plug-ins: telas, fluidos, render cartoon, etc. • Adobe Premiere y Discreet Combustion para secuenciado y compresión de video • Herramientas internas para exportación, visores, creación de secuencias cinemáticas, editores de mapas
Problemas en el desarrollo de videojuegos
La rápida y constante evolución de las tecnologías. Realizar mejoras en el proceso y metodologías de
desarrollo. Desarrollo de nuevas herramientas para realizar prototipos o motores que encapsulen la
dependencia a una tecnología específica
La comunicación se dificulta por ser una industria multidisciplinaria
El programador dedica un tiempo considerable a pedidos de los artistas y los diseñadores y menos
tiempo a implementar nuevas características funcionales del juego en sí.
El código termina atado a Un juego en particular, reduciendo considerablemente la reusabilidad del
código.
Las arquitecturas Data-driven solucionan estos problemas colocando la mayor parte del contenido en
archivos separados y lo mínimo posible en el código del videojuego.
Esto implica no solo contenido audiovisual sino también definiciones completas de personajes e incluso
comportamientos.
Metodología de desarrollo
Una metodología plantea realizar un conjunto de prácticas y métodos para lograr un objetivo. Existen dos
extremos, las metodologías que intentan predecir (deterministas o secuenciales) y las que se adaptan al
cambio (ágiles).
Waterfall Plantea que el diseño tiene que ser perfecto y estar completo antes de comenzar la
implementación.
Scrum Es una metodología ágil que sirve para administrar y controlar el desarrollo de un producto,
implementar y estimar los tiempos correctamente
La idea es no entrar en mucho detalle. Scrum master rol que toma un miembro del equipo, hace de nexo o
puerta de enlace entre los desarrolladores y el cliente Protege al equipo de desarrollo y es el encargado de
remover los impedimentos que estos tengan.
Scrum team: usualmente son equipos de 6 a 10 personas
Backlog de producto: conjunto de todas las funcionalidades que se desean para el producto final, usualmente
cuando comienza el desarrollo no está claro muchas de estas (cambia durante el desarrollo).
Sprint: una iteración de scrum, de 2 a 4 semanas usualmente El equipo de desarrollo se compromete a
implementar funcionalidades del product backlog, denominado sprint backlog según sus estimaciones En las
reuniones de planificacion del sprint se determina el sprint backlog, en donde se eligen conjunto de
funcionalidades del product backlog que se podrán hacer en ese sprint. se generan varias tareas que en su
totalidad cumplen con una funcionalidad.
Al ser iterativo e incremental se obtienen versiones jugables del producto en intervalos regulares de
tiempo. reduce el riesgo de que cambien los requisitos y permite mayor retroalimentación
Priorización de características del producto en cada Sprint
No significa saber con exactitud el alcance sino que se va acordando sobre la marcha, es decir, puede
pasar que a la mitad del desarrollo (originalmente planificado) ya se tiene un videojuego como se
deseaba, por lo que se puede acortar el alcance sobre la marcha.
En proyectos que duran años es difícil mantener la perspectiva y la dirección.
Extreme Programming
HERRAMIENTAS
se acompañan de herramientas para generar contenido
Editor de modelos 3d (p. ej. Blender)
Editor de scripts
Editor de shaders (p.ej. RenderMonkey
motores (p. ej. Ogre3d para acceder al hardware gráfico, entre otras funcionalidades)
bibliotecas (p. ej. SDL_mixer para reproducir sonidos)
frameworks
GLOSARIO
*sprite: Se trata de un tipo de mapa de bits dibujados en lapantalla de ordenador por hardware gráfico especializado.
Inspiración de videojuegos
Drakensang
BLESS Arche Age
Wild War2 TERA
AION
RIFT the elder scrolls
Never winter
age of wushu dragon prophet
Runes of Magic MAESTIA
http://es.wikipedia.org/wiki/Desarrollo_de_videojuegos
http://www.cursodesarrollovideojuegos.com/
http://www.genbetadev.com/programacion-de-videojuegos/10-sitios-que-todo-programador-de-videojuegos-deberia-conocer
http://jugabilidad.wikispaces.com/Producci%C3%B3n+y+Desarrollo+de+Videojuegos
http://en.wikipedia.org/wiki/Video_game_development
http://en.wikipedia.org/wiki/List_of_books_about_video_games
DISEÑADOR DE niveles
http://en.wikipedia.org/wiki/Level_design