Para los interesados en el desarrollo de videojuegos para iOS (iPhone, iPod Touch y iPad) y con poca experiencia en esta área (incluyome) les presento un motor de física 2D sencillo de implementar y de gran ayuda al momento de realizar simulaciones dentro de una aplicación: Chipmunk.

Esto como parte de la Guía de desarrollo de aplicaciones para dispositivos móviles: iPhone, iPod Touch e iPad.

Introducción a Chipmunk

Un motor de física es un componente software desarrollado principalmente para simular la mecánica newtoniana de objetos modelados dentro de un entorno determinado. El motor considera las variables gravedad, fricción, masa, velocidad, entre otras para simular la física de los objetos de manera aproximada a la física que presentaría ese objeto en el mundo real. También permiten implementar los sistemas de partículas y detectar colisiones, que son de gran ayuda al momento de desarrollar videojuegos.

Chipmunk es un motor de física 2D de código abierto desarrollado por Scott Lembcke en “C” bajo licencia MIT. Dentro de sus características están:

  • Ideal para el desarrollo de videojuegos en 2D
  • Rápido y ligero para modelar cuerpos rígidos
  • Flexible sistema de detección de colisiones
  • Te hace más inteligente, más fuerte y más atractivo para el sexo opuesto (eso dice la web principal XD)

Iniciando la implementación con Xcode

A continuación veremos como crear un proyecto en Xcode que incorpore las librerías de Chipmunk.

1. Crear un proyecto nuevo en Xcode para iOS de tipo “Single View Application”

2. Descargar las librerías de Chipmunk disponibles desde aquí

3. Extraer los archivos y agregar el contenido de la carpeta CHIPMUNK al proyecto

4. Agregar estas dos imágenes al proyecto. (guárdalas con botón derecho a tu ordenador)

5. Declarar dos variables UIImageView en el “ViewController.h”

#import <UIKit/UIKit.h>

@interface EquilibrioChipmunkViewController : UIViewController
{
UIImageView *barra;

UIImageView *esfera;

}

@end

6. Definir en la función (void)viewDidLoad de “ViewController.m”

- (void)viewDidLoad
{
[super viewDidLoad];

barra = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"barra.png"]];

barra.center = CGPointMake(160, 350);

esfera = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"esfera.png"]];

esfera.center = CGPointMake(160, 230);

[self.view addSubview:barra];

[self.view addSubview:esfera];

[self.view setBackgroundColor:[UIColor whiteColor]];

}

7. Compilar y ejecutar

Si todo ha ido bien, al final obtendremos una imagen como la anterior. En el siguiente post analizamos los conceptos básicos de este motor de física 2D y como utilizar las librerías dentro de una aplicación.

Repositorio en GitHub : MDW-Guia-iOS10-Chipmunk1