Xitai Editor

De Xitai-E Wiki
Saltar a: navegación, buscar
Descargas. Versión 0.41
Xitai Editor

Xitai Editor es el destilado de una larga experiencia en desarrollo de software en general y de vídeojuegos en particular.

Es una herramienta que permite la creación de videojuegos y otras aplicaciones interactivas gráficamente intensivas sin necesidad de utilizar ningún lenguaje de programación.

Dispone de un sistema de programación visual que es asequible al principiante pero que permite gran libertad de acción cuando se domina.

Gracias a ello, acorta el tiempo de desarrollo de un videojuego considerablemente, elevando la productividad a niveles nunca vistos.

Una versión primitiva fue utilizada para desarrollar QQ#2 "The Flea" y su derivación para dispositivos móviles The Flea, 30th Anniversary.

Características

Orientado a objetos

El concepto de objeto es fundamental en Xitai Engine. Los objetos son los ladrillos con los que se construye un juego. Todos los elementos constituyentes son objetos: las imágenes, las animaciones, los escenarios, los personajes, las pantallas, los botones del menú, los efectos sonoros, etc, etc.

Se pueden extender muchas clases de objetos con nuevos atributos. Se pueden manipular los atributos de los objetos desde las máquinas de estados

Edición visual de máquinas de estados

Editor de máquina de estados

Es fácil crear y editar máquinas de estado en forma visual e interactiva. Se pueden aplicar máquinas de estados a todos los objetos activos del juego: personajes, escenas, elementos de interface de usuario o flujo global del juego.

Las máquinas de estados pueden ser compuestas (un estado es a su vez una submáquina de estados) y/o paralelas (un estado puede ser un conjunto de subestados o submáquinas de estados que se ejecutan simultáneamente)

Conexión de propiedades

Se pueden conectar los atributos entre objetos del juego de manera que el atributo o propiedad de un objeto sea el valor asignado a un atributo de otro.

Los objetos origen de una conexión pueden estar determinados explícitamente o ser implícitos según el contexto.

La conexión puede ser directa o mediante una expresión matemática que implique uno o más atributos fuente.

Otros editores visuales

Ejemplo de interface de usuario

Completo editor de escenarios por capas. Se pueden seleccionar las capas que intervienen en una escena, por lo que se pueden representar diferentes escenas en el mismo escenario.

Editor de animaciones. Con capas y keyframes. Puede interpolar la posición, escala, rotación, transparencia y coloreado de cada capa entre key frames.

Editor de personajes. Se puede editar visualmente la física de los personajes y componer formaciones de personajes en una jerarquía. Se pueden definir sistemas de partículas visualizando el efecto en tiempo real.

Editor de interface de usuario. Los widgets pueden distribuirse automáticamente, según reglas sencillas, para acomodar diferentes proporciones de pantalla. Se pueden crear automáticamente listas y tablas de widgets.

Persistencia

Hay un conjunto de objetos, y sus derivaciones por parte del usuario, que son persistentes entre ejecuciones del juego. Logros, caracteristicas obtenidas, situación de los personajes clave, puntuaciones, selecciones de objetos (por ejemplo para mantener un inventario), etc.

Mediante acciones ejecutadas desde las máquinas de estado podemos controlar estas variables pesistentes, pudiendo inicializar, deshacer o confirmar los cambios cuando sea necesario.

Open source

The Flea, 30th Anniversary

Se proporciona todo el código fuente necesario para ulteriores desarrollos.

Se usa el SDK para crear la pareja de programas editor y reproductor. El editor es la herramienta de creación del juego. Permite la organización, configuración y definición de todos los elementos de una familia de juegos. El reproductor es el programa encargado de ejecutar el juego.

El reproductor de referencia (xitai_player) y su editor correspondiente (xitai_editor) son los productos básicos sin añadidos. Con ellos se pueden crear y ejecutar una amplia variedad de juegos. Cuando se necesiten funcionalidades especiales no proporcionadas por el SDK, se puede crear la pareja de herramientas adaptadas pertinentes, añadiendo dichas funcionalidades y haciéndolas editables mediante el uso adecuado de la API del SDK.


Licencia

Se permite la modificación y la redistribución del código fuente mientras se haga referencia a su origen. Las aplicaciones creadas no tienen ninguna restricción especial.

La mayoría de los fuentes contienen la siguiente cabecera.

/*
* Copyright (c) 2014 Paco Suárez http://xitai.mandanga.com
*
* This software is provided 'as-is', without any express or implied
* warranty.  In no event will the authors be held liable for any damages
* arising from the use of this software.
* Permission is granted to anyone to use this software for any purpose,
* including commercial applications, and to alter it and redistribute it
* freely, subject to the following restrictions:
* 1. The origin of this software must not be misrepresented; you must not
* claim that you wrote the original software. If you use this software
* in a product, an acknowledgment in the product documentation would be
* appreciated but is not required.
* 2. Altered source versions must be plainly marked as such, and must not be
* misrepresented as being the original software.
* 3. This notice may not be removed or altered from any source distribution.
*/

El editor y el player contienen otros componentes open source con licencias compatibles con la anterior. Son los siguientes:

Plataformas soportadas

En todas las plataformas soportadas, el editor, requiere una máquina con buenas prestaciones, (2 Gigas de RAM y dual core, al menos). Con buen soporte para OpenGL.

El juego es menos exigente, a menos que sea extraordinariamente complejo.

Los archivos del proyecto son totalmente compatibles entre los editores de cualquier plataforma. La exportación del contenido para su ejecución como juego o aplicación es específica de cada una.

Windows

El editor se distribuye en versión Windows 32 bits, compatible con sistemas Windows de 64 bits. Se ha testeado en Windows Vista, Windows 7, Windows 8 y Windows 10.

El editor puede producir el juego completo como una carpeta autosuficiente para su ejecución en un sistema Windows.

La forma de distribución corre a cuenta del usuario. Puede distribuirse en formato comprimido (zip, rar, 7z,...) o, si se quiere, crear un intalador. Para ello es una buena opción la herramienta NSIS.

OSX

El editor es compatible, al menos, con las versiones del sistema desde Snow Leopard hasta Yosemite. Solamente con procesadores Intel.

Es capaz de producir el juego para estos sistemas en formato aplicación de OSX (.app). Para su distribución se puede empaquetar como imagen de disco comprimido (.dmg), que es una forma habitual de distribución en OSX.

Linux

El editor se distribuye para sistemas Linux en arquitectura i86 de 64 bits. Puede producir el juego en versión 64 bits de dicha arquitectura.

Compilado en Ubuntu 16.04 LTS. Para otras distribuciones se requiere una nueva compilación.

No se incluyen los componentes del sistema de los que dependan. Dichas dependencias deben de ser satisfechas por el usuario.

Corre a cuenta del usuario crear un paquete o instalador para su publicación.

Android

Los editores de todas las plataformas pueden generar la aplicación para Android. Se requiere que tengamos instalado el SDK de Android y la aplicación Ant de Apache, para la producción final del paquete instalable en un dispositivo Android.

Si se desea distribuir el juego en la AppStore de Google hay que disponer de una clave de producción y cumplir con la burocracia necesaria como para cualquier otra aplicación.

iOS

La creación de la aplicación para iOS no está soportada por el editor, pero es posible exportar el contenido en un formato usable por una aplicación de iOS que se podrá construir manualmente. Los profesionales interesados pueden consultar con Mandanga Games para el asesoramiento.

Otros

Se puede portar el engine fácilmente a cualquier plataforma que disponga de capacidad gráfica suficiente y un compilador de C++ adecuado.

El porcentaje de código que hay que reescribir es poco, y está aislado del resto mediante interfaces abstractos bien definidos.

Para asesoramiento profesional consulta con Mandanga Games.

Limitaciones

Cosas que aún no soporta pero están previstas para próximas versiones

  • Integración en redes sociales con mensajes y regalos entre jugadores.
  • Publicidad.
  • Compras en la aplicación.
  • 3D.
  • Otras plataformas.

Documentación

Manual

Referencia: Jerarquía de las clases

Información para programadores

Bug Tracker

Tutoriales

La plaga galáctica

Construcción de un juego sencillo, paso a paso

Ejemplos

Juego. La Plaga Galática


The Last Mission

Juego. The Last Mission


La Oca 84

Juego. El juego de La Oca 84


Tutangamon
Tutangamon

Juego. Tutangamon


Archivos

Archivos