jueves, 30 de agosto de 2012

Semana 3


Blattle ship



Como se juega?

Consiste en dos tableros que forman una maris bidimencional de 10x10 con ancho de la letra A hasta la J y de alto del 1 al 10, en el cual colacas 5 barcos en cualquier parte de dicho tablero ya sea en posicion horizontal o vertical mas no en diagonal.

Lo barcos son de diferentes tamaños los cuales abarcan diferentes casillas en el tablero teniendo:

2 barcos de 3 espacios
1 barco de 4 espacios
1 barco de 5 espacios
1 barco de 2 espacios

Una vez todas las naves han sido posicionadas, se inicia una serie de rondas. En cada ronda, cada jugador en su turno indica una posición del tablero de su oponente. Si esa posición es ocupada por una parte de un barco, el oponente indica averiado (toque o tocado) y el atacante marca con rojo esa posición, con un pin. Cuando todas las posiciones de un mismo barco han sido dañadas debe indicarse hundido dando a conocer tal circunstancia que indicará al atacante la importancia de la nave destruida. Ahora bien, si la posición indicada, efectivamente, no posee un barco alojado, se indica con agua, y será marcada con un pin blanco.
Quien descubra primero todas las naves será el vencedor, pero en caso de que el participante que comenzo la partida hunda el barco en su ultima jugada, el otro participante tiene una ultima posibilidad para alcanzar el empate.





jueves, 23 de agosto de 2012


Física del juego  en 2D


En el diagrama se explica la física del juego con la cual el personaje interactúa:

Espacio:
Todos los fenómenos ocurren dentro de un espacio, que no es más que un sistema de coordenadas. Es tarea del desarrollador que el sistema de coordenadas del espacio corresponda al de la pantalla.



Cuerpo:
Todos los cuerpos dentro de un espacio tienen propiedades físicas. En el caso de 2 dimensiones, tenemos la masa y tenemos la inercia. La masa es la cantidad de materia en el cuerpo, por otro lado, la inercia representa la cantidad de fuerza que hay que aplicar en el cuerpo para que éste rote sobre su centro de gravedad.

Forma:
La forma es la figura que adopta el cuerpo. Esta figura puede ser un círculo, un rectángulo o un polígono convexo. En todos los casos la forma tiene un “offset” que es el centro de gravedad del cuerpo.


Física rogdoll:
El significado de Ragdoll proviene de las palabras inglesas rag doll (muñeco de trapo). Como su nombre lo indica, éste es un procedimiento de animación y técnica de simulación para mostrar el movimiento de una persona como si estuviera muerto.
El sistema interpreta las características del cuerpo como una serie de huesos rígidos conectados entre sí, poniéndole bisagras para simular las articulaciones. La simulación modela lo que ocurre con el cuerpo cuando se cae al suelo, como si fuese un muñeco de trapo.


Junta:
Las juntas proveen restricciones al movimiento de los cuerpos. Un caso que ya mencionamos es el de la barra fija a la pared mediante un clavo. Otro caso puede ser limitar el ángulo de movimiento de esa barra. Otro caso puede ser conectar dos engranajes. Existe una diversidad de juntas para múltiples necesidades.

Motor físico:                                                                                                                                                     

Es un código de programa usado para simular la Mecánica newtoniana en el ambiente.

Detector de colisiones:                                                                                                                                    

Se utiliza para resolver el problema de determinar cuándo es que dos o más objetos físicos en el ambiente se cruzan entre sí.




Bibliografías:

jueves, 16 de agosto de 2012

Herramientas para desarrollo de Video-juegos 2D


Como desarrollar un videojuego?

Lenguajes de programación hay muchos y de muchos tipos, secuenciales “C,BASIC”, orientados a objetos “C++, Java, C#”, basados en objetos, para bases de datos, lógicos, funcionales, etc; cada lenguaje se usa para algo pero es a través de ellos que nos comunicamos con la computadora.

Algunos ejemplos de lenguajes usados en las consolas de videos juegos y pc son:

Para el Ps3 se programa en Cg, una versión de C que le permite a los desarrolladores enfocarse en el área de 3D, junto con una versión modificada de Open Gl llamada Open Gl ES. Sony le provee a los desarrolladores que lo soliciten su kit de desarrollo para Ps3, el cual cuesta alrededor de $10,000 dolares-

En 360 se programa con C# y el XNA (el cual tu puedes descargar gratuitamente desde la página de microsoft y hacer tus propios juegos, claro que es una versión recortada aunque se pueds pagar por la versión completa) y también permite C++. Como IDE se utiliza el visual studio, el cual es una verdadera maravilla y utiliza Directx que es la librería gráfica propietaria de microsoft.

Para portatiles como el DS y el PSP se usa principalmente C y C++ junto con un poco de ensamblador.

Para celulares se utiliza Java el cual es muy popular debido a su alto nivel de portabilidad.

En la computadora se utiliza principalmente C++ o en su defecto C# si son juegos de windows actuales.

Muchos engines estan programados con C++, como el Unreal. 
Así que como ves lo importante para aprender a desarrollar juegos es conocer C, C++ y C# (si son para 360 o para compu), conocer bien las librerías gráficas (ya sea Directx u Open Gl).

Pygame es un conjunto de módulos del lenguaje de programación Python que permiten la creación de videojuegos en dos dimensiones de una manera sencilla. Funciona como interfaz de las bibliotecas SDL, y está orientado al manejo de sprites.
Dada la simplicidad de Python, se pueden crear prototipos y desarrollar rápidamente. Esto se puede comprobar en las competiciones que se disputan en línea, donde es cada vez más usado. Los resultados pueden llegar a ser profesionales.
Pygame también puede utilizarse para crear otros programas multimediainterfaces gráficas de usuario.



Algunos motores graficos:

Ox Game Engine para XNA

Este motor gráfico para XNA, está alojado en codeplex, así que además del instalador podrás obtener incluso el código fuente por si tenéis que adaptarlo.

La lista de características que incluye es enorme, como muestra os dejo alguna de ellas:
  • Editor visual de interfaces gráficas de usuario
  • Editor visual de escenarios 
  • Sistema de scrpiting en C#
  • Físicas de la librería JigLibX integradas
  • Sistema de animación de personajes XNAnimation integrado

Motor grafico Sun Burn

Se puede desarrollar aplicaciones con algo más de ayuda, la lista de funcionalidades que se incluye:
  • Iluminación dinámica y sombras
  • Texturas con mapas difuso, de relieve y especular
  • Soporte sólo para windows 

Cry Engine 3

Motor grafico con una licencia especial para estudiantes, y ahora, lo ofrecen totalmente libre, para poder aprender a usar y dar rienda suelta a nuestra imaginación


Referencias: