Martes, 13 de Enero de 2015

Creación de juegos multiplataforma con Cocos2d-x

En esta guía mostraremos cómo crear un juego sencillo con el uso del marco de trabajo Cocos2d-x en un entorno de desarrollo Windows y cómo compilarlo para que se ejecute en Windows 8 y Android.

Este articulo forma parte de una serie de notas acerca de desarrollo móvil patrocinadas por Intel. Para más información, ingresar a https://software.intel.com/es-es/android.

¿Qué es Cocos2d-x?

Cocos2d-x es un marco de trabajo multiplataforma para juegos (y otras aplicaciones gráficas, tales como libros interactivos) basado en el cocos2d para iOS*, pero que usa C++, JavaScript* o Lua* en lugar de Objective-C*.

Una de las ventajas de este marco de trabajo es que con él es posible crear juegos que se pueden implementar en diferentes plataformas (Android*, iOS, Win32*, Windows* Phone, Windows* 8, Mac*, Linux*, etc.), manteniendo la misma base de código y con pocas adaptaciones específicas para cada plataforma.

El código fuente se puede usar bajo la licencia MIT y se descarga desde aquí. Para conocer más acerca de Cocos2d-x y su documentación, recomendamos visitar: http://www.cocos2d-x.org/.

El primer juego

Descargue la versión más reciente del marco de trabajo desde el sitio y descomprima el archivo en su entorno de desarrollo. En esta guía, se usó la versión 2.2.2, y el archivo se descomprimió en el escritorio (C:\Users\felipe.pedroso\Desktop\cocos2d-x-2.2).

intel imagen 1

Para crear un nuevo proyecto en cocos2d-x, vamos a usar un script de Python* (create_project.py) que crea toda la estructura del proyecto dentro de la carpeta donde se descomprimió el marco de trabajo. Si no tiene instalado el runtime de Python, descargue la versión 2.7.6 desde este vínculo:http://www.python.org/download/.

intel imagen 2

Abra el símbolo del sistema (cmd.exe) y ejecute las siguientes instrucciones:

  • Vaya a la carpeta del script (es importante ejecutar el script dentro de la carpeta “project-creator”)
    cd C:\Users\felipe.pedroso\Desktop\cocos2d-x-2.2\tools\project-creator
  • Ejecute el script con la siguiente instrucción:
    python create_project.py -project MyFirstGame -package com.example.myfirstgame -language cpp

Los parámetros son los siguientes:
project: nombre del proyecto o juego
package: nombre del paquete de la aplicación (p. ej., com.myCompany.MyFirstGame)
language: lenguaje de programación del proyecto (cpp, lua y JavaScript)

intel imagen 3

Atención: para ejecutar la instrucción de Python desde el símbolo del sistema, agregue la carpeta donde se instaló Python a la ruta de la variable de entorno.

intel imagen 4

El proyecto creado contendrá el código de base del juego (Classes), los recursos (imágenes, audio, etc.) y un proyecto por cada plataforma admitida por el marco de trabajo.

Compilación como aplicación Win32 (Windows* 7 o modo de escritorio de Windows 8)

Requisitos:

Visual Studio* 2012

Abra con Visual Studio el archivo MyFirstGame.sln que está dentro de la carpeta proj.win32 del directorio del proyecto.

intel imagen 5

Presione F6 (o use el menú Build -> Build Solution) para compilar el proyecto y presione F5 (o use el menú Debug -> Start Debugging) para ejecutarlo.

intel imagen 6

Si nada salió mal, verá la siguiente ventana:

intel imagen 7

Compilación como aplicación de la Tienda Windows

Requisitos:

Visual Studio 2012

Para compilar el proyecto como aplicación de la Tienda Windows, abra el archivo MyFirstgame.sln que está dentro de la carpeta proj.winrt y compílelo con el mismo procedimiento que se usó en el proyecto para Win32.

intel imagen 8

Después de la compilación y la ejecución, verá la siguiente pantalla:

intel imagen 9

Atención: el cocos2d-x que se usó en esta guía no funcionó con Windows* 8.1.

Compilación como aplicación de Android

Requisitos:

De la misma manera en que se agregó Python a la ruta de Windows, agregue los directorios, las herramientas y las herramientas de plataforma del SDK de Android, el directorio raíz del NDK y el directorio bin de Apache Ant para compilar su aplicación.

Abra un nuevo símbolo del sistema (cmd.exe) y ejecute las siguientes instrucciones para configurar las variables de entorno necesarias para compilar la aplicación de Android:

intel imagen 10

set COCOS2DX_ROOT=C:\Users\felipe.pedroso\Desktop\cocos2d-x-2.2
 set NDK_TOOLCHAIN_VERSION=4.8
 set NDK_MODULE_PATH=%COCOS2DX_ROOT%;%COCOS2DX_ROOT%\cocos2dx\platform\third_party\android\prebuilt

Las variables que usamos son:

COCOS2DX_ROOT:

directorio en el que se descargó el marco de trabajo

NDK_TOOLCHAIN_VERSION:

versión de la cadena de herramientas del NDK que se usará para compilar el proyecto

NDK_MODULE_PATH:

módulos que es necesario incluir en el NDK build. En este caso, usamos los módulos precompilados de cocos2d-x

 

Con las variables de entorno compiladas, vaya a la carpeta del proyecto para Android:

cd C:\Users\felipe.pedroso\Desktop\cocos2d-x-2.2\projects\MyFirstGame\proj.android

Copie los recursos del juego (imágenes, sonidos, etc.) a la carpeta “assets”:

intel imagen 11

rmdir /S /Q assets
 mkdir assets
 xcopy /E ..\Resources .\assets

Ejecute la siguiente instrucción para compilar los módulos nativos:

ndk-build.cmd -C . APP_ABI="armeabi armeabi-v7a x86"

 intel imagen 12

Con esta instrucción, se generarán las bibliotecas nativas para tres arquitecturas diferentes: ARM, ARM-NEON* y x86. De este modo, el juego se podrá ejecutar en estas arquitecturas y las aprovechará al máximo.

Después de terminar el proceso de compilación, compile la aplicación de Android con la instrucción “ant”:

ant debug

intel imagen 13

Ahora, para instalar la aplicación en un dispositivo o un emulador, use la instrucción:

adb install -r bin\MyFirstGame.apk

intel imagen 14

Después de este paso, solo necesita ejecutar su aplicación:

intel imagen 15

Ahora el juego puede ejecutarse en tres plataformas como mínimo: ¡Android, Windows 7 y Windows 8!

Artículos y recursos relacionados:

Galería de Imágenes

TAGS

Más artículos de esta serie Ver más

Hace 3 años

Descarga de Multi-Media Sample Framework para Android

Multi-Media Sample Framework para Android permite decodificar múltiples secuencias de video simultáneas y luego mostrarlas por medio de la API de gráficos 3D OpenGL* ES 2.0. Les presentamos 5 ejemplos para desarrolladores Android.

Hace 3 años - 3 Comentarios

Intel y Unity se unen y despiertan entusiasmo

Hay solo una palabra que puede describir lo que sentimos acerca de la recién anunciada colaboración entre Intel y Unity*: ¡HURRA!
Bueno, quizá dos: ¡HURRA, HURRA!

Hace 4 años - 7 Comentarios

Por qué los usuarios desinstalan aplicaciones

Los desarrolladores a veces se enfrentan con un problema desmoralizador: los usuarios dejan de usar sus apps. En este post se analizan los factores que influyen en la desinstalación de aplicaciones.

Últimos lanzamientos Ver más

  • P0lT10n

    Lo veo mucho mas facil con Unity3D