Follow By Email

Mostrando entradas con la etiqueta Desarrollo de Juegos. Mostrar todas las entradas
Mostrando entradas con la etiqueta Desarrollo de Juegos. Mostrar todas las entradas

miércoles, 22 de agosto de 2012

La lógica de la programación de video-juegos

   Como programador siempre me ha gustando el tema de desarrollo de vídeo juegos, es claro que se tiene que tener un conocimiento de ciertos años, pero claramente depende del entusiasmo y la dedicación que se requiere. Muchas veces la lógica de programación para el desarrollo de vídeo juegos es lo más complicado, pero una vez entendiéndola, te das cuenta que puedes realizar lo que quieras. Lo principal es entender lo que es un loop. Muchas veces se habla de ello, pues es el motor de nuestro juego.

   Un loop es una función repetitiva que contiene la lógica del juego y que se debe estar llamando cada cierto tiempo indefinidamente, hasta que exista un botón o una acción que la detenga. Antiguamente los loops eran programados para que cumpliera un ciclo con la velocidad del procesador. Esto provocaba que en algunos computadores el juego funcionaba más rápido o en otros más lentos. Actualmente los loops cumplen un tiempo determinado con una función de timer.




var personaje;
var vida = 5;
 do{
 personaje.x = personaje.x + 1;
 vida = vida-1;
 }while(vida = 0)


    Este es un pequeño algoritmo de loop la cual hace que el personaje se mueva en forma horizontal y cuando la vida sea igual a cero este loop termina, La lógica del loop puede ser aplicado para cualquier lenguaje de programación solo se debe investigar ciertas funciones básicas como: timer(loop(),1000) = función que permita manejar un tiempo para un determinado ciclo. colision(), hittest() = función que permita colisionar(tocar) un objeto con otro. funciones de posicionamiento x,y = muchos lenguajes manejan la posición de objetos con coordenadas x,y o z(en 3d). boton event() = función que permita detectar un botón presionado. Pues una vez entendiendo esos conceptos, la programación de videojuegos es más fácil. En distintos tutoriales el Loop se le llama actualizar(), es lo mismo , una función que pueda actualizarse en un determinado tiempo.

sábado, 7 de abril de 2012

Nuestro nuevo juego realizado en ActionScript 3 : 2012 The Game

   Pues como programador apasionado, nunca está demás dedicarse a algún hobbie y nunca es malo dedicarle a uno en el cual puedes aprender aun más sobre programación. Siempre he querido programar video-juegos, es como un sueño que ahora puedo hacer realidad gracias a los conocimientos adquiridos.De hecho el desarrollar videojuegos aumenta la capacidad de analizar problemas y codificarlos en sus respectivas funciones, me ha servido mucho en la Universidad al momento realizar una prueba de Java o . net.  Es por eso que ya hemos lanzado otro juego llamado 2012 : The end of the world. un juego en el cual debes destruir a los invasores antes de que lleguen a nuestro planeta. Está creado en un ambiente de 8 bits un ambiente histórico donde traen muchos recuerdos de niñez. CrogoGames es la organización que he creado con mi hermano (también informático) y aun estamos con la idea de seguir desarrollando juegos, solo que ahora tenemos la agenda un poco apretada, pero ya vendrán tiempo libres donde programaremos y haremos grandes juegos.



   Aquí esta el juego, que lo difrutes !:


martes, 14 de febrero de 2012

PirataSlice Nuestro primer videojuego !



  Un pequeño grupo de desarrolladores que dedica su tiempo a la creación de video juegos, cuyo propósito es crear juegos adictivos en formato Flash. Recién estamos comenzando y queremos crecer en este ámbito ya que nos apasiona enormemente. Tenemos un proyecto terminado "PirataSlice" y para nosotros seria un placer que ustedes puedan jugar !. Cualquier comentario, opinión y/o critica es bien recibida por nosotros. Aun estamos en formato beta y necesitamos saber cual es el camino a tomar.

PirataSlice

  El juego consiste en que el jugador debe tocar con el mouse las bolas de cañon para que el pirata(Personaje Principal) pueda destrozarlos sin que caigan, ya que si caen el nivel del mar aumenta hasta llegar a un tope
donde el jugador pierde. También tiene comodines como el reloj cuya función es provocar lentitud en los disparos de los cañones. Consta de 4 niveles de dificultad donde el puntaje es el principal objetivo.

http://games.mochiads.com/c/g/pirataslice_v675424/PirataSlice.swf





miércoles, 23 de noviembre de 2011

Startup ! : Twisterdev Gamers Developers


 ¿ Qué es Twisterdev?

 Es una es empresa  moderna, innovadora y creativa  especializados en el diseño de soluciones web, programación,  publicidad en Internet y últimamente han dedicado gran parte de sus proyectos a la creación de videojuegos orientados a plataformas vía web y/o móviles.
 ¿Por qué hago referencia a esta empresa? pues bueno esta comenzó gracias a tres pioneros en la área de la informática: Cindy Catalán, Felipe Campos y Frank Kismann; 3 estudiantes de la carrera de Informática con un sueño en común ... escribir líneas de códigos para luego ejecutar un Software entretenido y al alcance de todos. Además nos da el ejemplo de que no porque estamos en latino-américa no podamos realizar este tipo de trabajos. Twister Dev nació en Chile con un presupuesto que alcanzaba solo para un pc y un par de taza de café y sin embargo han logrado salir adelante y emprender en un área desconocida.
  http://www.twisterdev.cl/



jueves, 17 de noviembre de 2011

Funciones, Librerias, Apis, SDKs, motores gráficos ...

Para realizar un video-juego es importante saber el uso de librerias y funciones. partir siempre desde una base como dice el dicho para que inventar denuevo la rueda si ya lo está y nos sirve para soportar algo nuevo. Existen variadas formas de programar un videojuego, existen librerias dedicadas a ello. un ejemplo de esta es la librería Allegro para C++, esta es un poco compleja pero bastante interesante al momento de programar desde lo mas básico.otras libreria bastante interesante es 2dBox , esta simula la naturaleza y la fisica de los cuerpos. pues las librerías son un conjunto de c´digos bastante amigables aunque si quieres algo mas en concreto pues estan las SDK estas son un kit de desarrollo de una cierta aplicación, es generalmente un conjunto de herramientas de desarrollo que le permite a un programador crear aplicaciones para un sistema concreto, por ejemplo ciertos paquetes de software, frameworks, plataformas de hardware, computadoras, videojuegos, sistemas operativos, etc.



Es algo tan sencillo como una interfaz de programación de aplicaciones o API (del inglés application programing interface) creada para permitir el uso de cierto lenguaje de programación, o puede, también, incluir hardware sofisticado para comunicarse con un determinado sistema embebido. Las herramientas más comunes incluyen soporte para la detección de errores de programación como un entorno de desarrollo integrado o IDE (del inglés Integrated Development Environment) y otras utilidades. Los SDK frecuentemente incluyen, también, códigos de ejemplo y notas técnicas de soporte u otra documentación de soporte para ayudar a clarificar ciertos puntos del material de referencia primario.
Otra herramienta aun mas prediseñada es el motor gráfico estan nos provee de una inmensidad de opciones al momento de querer "diseñar" un juego . La funcionalidad básica de un motor es proveer al videojuego de un motor de renderizado para los gráficos 2D y 3D, motor físico o detector de colisiones, sonidos, scripting, animación, inteligencia artificial, redes, streaming, administración de memoria y un escenario gráfico. El proceso de desarrollo de un videojuego puede variar notablemente por reusar o adaptar un mismo motor de videojuego para crear diferentes juego. Unity es un motor gráfico gratuito y bastante amigable para crear un juego 3d .

martes, 15 de noviembre de 2011

Un Ejemplo a seguir ! Angry birds

¿Como un juego tan básico ha llegado a ser el juego mas jugado de los últimos tiempos? 
Será que la simplicidad es lo que esta de moda, pues claramente Angry Birds es un modelo a seguir. La empresa desarolladora Rovio nunca pensó en el éxito que esta traería . Gerentes, Ejecutivos, Estudiantes, niños, Padres, etc. Un juego dedicado para todas las personas (importante hoy en día)









Su jugabilidad se basa en la gravedad y la física, de hecho ni tan novedoso puede ser, Worms tiene una plataforma bastante parecida. Al momento de idear un juego no pienses en crear algo novedoso o nuevo, es bueno basarse en otro ejemplo para tener una idea mas clara. Piensa bien que gráficos usar, que tipo de juego será y su simplicidad ante todo. si piensas en crear un juego tipo Battefield 3 terminarás frustrandote, ya que para la creación de estas se necesita un equipo de trabajo gigantesco, con miles de programadores agregando miles de If y condiciones .




jueves, 10 de noviembre de 2011

Diferentes opciones a la hora de programar juegos

Cuando se inicia en este rubro de la programación de juegos, es complicado saber cuál es el camino correcto para desarrollar, que lenguaje usar, que framework que Api manejar ... etc. Sin duda existen muchas opciones pero cada una tiene un fin específico.
   Primero que todo debes ya tener definido tu juego y luego pensar cuantos recursos va a usar y ha que plataformas irá dirigido. Este artículo dará a conocer ciertas pistas para ver cuál es la mejor opción al momento de crear un Game.



   -Iniciadores del mundo de los videojuegos

Existe un programa llamado Game-Marker que permite crear juegos de manera bastante entretenida y didáctica, comienzas a entender ciertos conceptos básicos que tienes que tener en cuenta al momento de crear un juego. Sin embargo este programa esta ya muy estructurado y te delimita a hacer ciertas cosas. Si no tienes conocimientos en programación recomiendo inicializarte en GM pero no que te dediques a él .

   - Juegos 3d o 2d con recursos elevados.

Claramente hacer juegos 3d es el sueño para muchos, sin embargo el esfuerzo que este conyeva nos termina frustrando. Pero hoy en día existen herramientas bastante interactivas para un desarrollador. Unity un motor gráfico que te permite hacer lo que se te antoje sin tener que profuncizar mucho en la programación u Ogre otro motor freeware. Sin embargo si quiere empesar más de 0 recomiendo XNA game developer, es un framework basado en la Api Directx . el unico problema de este metodo de desarrollo es que es poco portable ,ya que solamente puede ser ejecutado en plataformas Windows.

Engines, Librerías para crear Juegos en Android

Android claramente es un medio para poder desarrollar juegos y poder distribuirlos fácilmente a tráves de Web Stores de Google. Ademas existe gran material para fácilitar la programación como tambien información y tutoriales de esta. Este artículo dará a conocer ciertas herramientas para poder comenzar un proyecto para Android. Si yá haz hecho aplicaciones en este Sistema operativo no te costará entender el proceso de creación . pero si no sabes nada pues lo primero que tienes que hacer es bajar el SDK de Android (el Kit de desarollo), luego configurar tu IDE  (entorno de programación) para crear tu aplicaciones. Es recomendable usar como IDE "Eclipse" ya que muchos tutoriales de basan en él pero también tienes otras alternativas como NetBeans.

Como dije anteriormente existe demasiadas herramientas para el desarrollo de juegos en Android. A continuación mostraré algunos links de Engines. Todos estos tienen un enfoque 2D la mayoria trabaja con Java nativamente, pero otros tienen soporte hasta para Phyton.

martes, 8 de noviembre de 2011

Game: No volver a inventar la rueda sino que seguir innovando

  
Cuando se inicia el sueño de crear un juego, surge siempre las ganas de crear uno desde 0. Por lo menos ese fue mi caso... claramente no fue un error tener ese ideal desde un principio ya que me sirvió bastante para enteder la complejidad de tiene el desarrollo de este. Partí con Allegro una librería de c++ pero los dolores de cabeza que me dió lo tuve que dejar. De hecho nunca pude entender la filosofía de Allegro, luego me cambie a SDL esta ya es un poco más interactiva con el programador, se pueden cargar imagenes externas, reacciones por teclado, Sprites etc... Sin embargo requiere un gran esfuerzo realizar un juego en dicha librería como por ejemplo mover un personaje. Desde entonces empezó mi frustación al no poder realizar un juego y ver la complejidad que tiene poder realizar uno desde 0.


1011010101010101
0101010101010101           = 
1010101010101010





 Entonces mi pensamiento empezó a tener un vuelco en mi vida de programador y entender que existen muchas herramientas que te permiten ahorrar tiempo en el desarrollo de videojuegos. Como dice el título de este artículo "No volver a inventar la rueda sino seguir innovando", existen muchos métodos para crear juegos y muchos recursos que te permiten facilitar la vida al momento de programar pero si bien es cierto es importante saber la filosofia del desarrollo de un video-juego.

 Si queremos estar a la par del mercado debemos saber utilizar las herramientas que fueron hechas con la intención de ayudar este arte. Desde ese entonces conocí JAVA y su plataforma J2ME y me interesó bastante el desarrollo de juegos en este lenguaje. ya que me permitía portabilidad y el uso de pocos recursos me obligaba a realizar algo simple pero entretenido. este lenguaje ha crecido bastante y muchos sistemas operativos móviles requieren ese tipo de portabilidad que nos ofrece JAVA, ademas hay un sin fin de material y herramientas para el desarrollo de juegos en esta plataforma como también Engines que te facilitan la vida en gráficos, físicas, etc.. (AndEngine, Corona, Coco2d)