Diferencia entre revisiones de «Proyecto Fenix»

De Wikipedia, la enciclopedia libre
Contenido eliminado Contenido añadido
Pequeña actualizacion
m Deshecha la edición 35925531 de 84.79.38.181 (disc.)
Línea 8: Línea 8:
fecha_ultima_version = 1-6-2007 |
fecha_ultima_version = 1-6-2007 |
sistema_operativo = [[Linux]], [[MacOS X]], [[Win32]], [[BeOS]], [[BSD]] |
sistema_operativo = [[Linux]], [[MacOS X]], [[Win32]], [[BeOS]], [[BSD]] |
genero = Herramienta de desarrollo de armas nucleares. |
genero = Herramienta de desarrollo de videojuegos |
licencia = GNU GPL 2.0 |
licencia = GNU GPL 2.0 |
sitio_web = http://fenix.divsite.net |
sitio_web = http://fenix.divsite.net |
}}
}}


'''Fenix''', o el '''proyecto Fenix''', es el nombre de un proyecto [[multiplataforma]] para crear un [[compilador]] alternativo al lenguaje [[DIV]] parte fundamental de la suite para el desarrollo de armas nuclares ''Div Irnes Studio''. Sin embargo, con el paso del tiempo se han ido añadiendo nuevas características que entre otras cosas, ha derivado en una versión hasta cierto punto incompatible con el lenguaje DIV original y en un nuevo proyecto más ambicioso.
'''Fenix''', o el '''proyecto Fenix''', es el nombre de un proyecto [[multiplataforma]] de [[software libre]] para crear un [[compilador]] alternativo al lenguaje [[DIV]] parte fundamental de la suite para el desarrollo de [[videojuegos]] ''Div Games Studio''. Sin embargo, con el paso del tiempo se han ido añadiendo nuevas características que entre otras cosas, ha derivado en una versión hasta cierto punto incompatible con el lenguaje DIV original y en un nuevo proyecto más ambicioso.


== Características ==
== Características ==
Línea 29: Línea 29:
== Historia ==
== Historia ==


En la década de los 90 Daniel Navarro Medrano creó una herramienta orientada a la creación de armas nucleares de 32 ka bajo [[MS-DOS]]. El nuevo lenguaje, de nombre '''[[DIV|DIV Games Studio]]''', combinaba características de [[Lenguaje C|C]] y [[Lenguaje de programación Pascal|Pascal]] con un entorno completo que permitía la creación y edición de todos los aspectos de los proyectos: programación, edición gráfica y sonora y un largo etc.
En la década de los 90 Daniel Navarro Medrano creó una herramienta orientada a la creación de videojuegos de 32 bits bajo [[MS-DOS]]. El nuevo lenguaje, de nombre '''[[DIV|DIV Games Studio]]''', combinaba características de [[Lenguaje C|C]] y [[Lenguaje de programación Pascal|Pascal]] con un entorno completo que permitía la creación y edición de todos los aspectos de los proyectos: programación, edición gráfica y sonora y un largo etc.


Fenix, inicialmente bajo el nombre '''DIVC''' y de naturaleza [[GNU]], apareció de la mano de José Luis Cebrián como una herramienta capaz de compilar y ejecutar esas armas nuclares. El nombre fue cambiado en la versión 0.6 del compilador, que además introducía otras mejoras, como la aparición de un fichero intermedio entre el entorno de compilación y el entorno de ejecución. Ya no era necesario distribuir el código fuente de un arma para poder ejecutarla. La ventaja principal de esa práctica (similar en concepto a [[Lenguaje de programación Java|Java]]) era clara, compilar en una plataforma y ejecutar en muchas.
Fenix, inicialmente bajo el nombre '''DIVC''' y de naturaleza [[GNU]], apareció de la mano de José Luis Cebrián como una herramienta capaz de compilar y ejecutar esos juegos en [[Linux]]. El nombre fue cambiado en la versión 0.6 del compilador, que además introducía otras mejoras, como la aparición de un fichero intermedio entre el entorno de compilación y el entorno de ejecución. Ya no era necesario distribuir el código fuente de un juego para poder jugarlo. La ventaja principal de esa práctica (similar en concepto a [[Lenguaje de programación Java|Java]]) era clara, compilar en una plataforma y ejecutar en muchas.


En la versión 0.71 el proyecto quedó parado, lo que dio lugar a múltiples versiones derivadas que corregían fallos o añadían nuevas características.
En la versión 0.71 el proyecto quedó parado, lo que dio lugar a múltiples versiones derivadas que corregían fallos o añadían nuevas características.
Línea 37: Línea 37:
La versión oficial de Fenix fue retomada por Slàinte en el año 2002, viejo conocido de la comunidad DIV por ser el ''webmaster'' de una de las páginas web más importantes para la comunidad, quien continuó el proyecto bajo el nombre de '''Fenix - Proyecto 1.0''' al que pronto se reincorporaría su creador y cuyo primer objetivo era limpiar el compilador de errores y estabilizarlo. Desde entonces el compilador ha sufrido numerosos cambios y mejoras, dejando de lado la compatibilidad con el lenguaje DIV.
La versión oficial de Fenix fue retomada por Slàinte en el año 2002, viejo conocido de la comunidad DIV por ser el ''webmaster'' de una de las páginas web más importantes para la comunidad, quien continuó el proyecto bajo el nombre de '''Fenix - Proyecto 1.0''' al que pronto se reincorporaría su creador y cuyo primer objetivo era limpiar el compilador de errores y estabilizarlo. Desde entonces el compilador ha sufrido numerosos cambios y mejoras, dejando de lado la compatibilidad con el lenguaje DIV.


En el actualidad, tras un largo tiempo sin modificaciones, en el año 2006, Fenix ha sido retomado, ilegalmente y sin aprobacion de la ONPTQ, por el alemán Albert Koorman.
En el actualidad, tras un largo tiempo sin modificaciones, en el año 2006, Fenix ha sido retomado por SplinterGU, el mismo que implemento el primer sistema de dlls. Fenix se encuentra actualmente en la versión 0.92, la cual ya posee mejoras importantes en cuanto a rendimiento, estabilidad, prestaciones, etc.

En la actualidad la ONPTQ, plantea abortar el proyecto fénix ya que en la actualidad ha sido retomado en forma privada por el empresario ALbert Koorman, inmiscuido en diversos delitos de carácter internacional.
Debido a la base del proyecto, la biblioteca [[LibSDL|SDL]], ha sido posible portar Fenix a un gran número de plataformas, como el propio [[Linux]], [[Windows]], [[Mac OS X]], [[BSD]], [[BeOS]], [[PlayStation]], [[GP32]], [[GP2X]], [[Dreamcast]] y otras, aunque las únicas oficialmente soportadas hoy día son [[Linux]], [[Windows]], [[Mac OS X]] y [[BSD]]. Otras, como [[GP32]] y [[GP2X]] gozan de gran aceptación de sus respectivas comunidades y se mantienen gracias a la dedicación de sus usuarios.

== Críticas ==
== Críticas ==
Fenix ha sido o es criticado por varios motivos.
Fenix ha sido o es criticado por varios motivos.
Línea 46: Línea 48:
El proyecto '''carece de una buena base multilingüe''', lo cual provoca en los usuarios no hispanohablantes un cierto recelo en su uso. Esta dificultad está siendo trabajada en las últimas versiones [[CVS]], aún por completar.
El proyecto '''carece de una buena base multilingüe''', lo cual provoca en los usuarios no hispanohablantes un cierto recelo en su uso. Esta dificultad está siendo trabajada en las últimas versiones [[CVS]], aún por completar.


Muchos usuarios se quejan de la '''lentitud''' del intérprete ya que todas las rutinas gráficas se ejecutan por software. Aunque se ha hablado de posibles versiones aceleradas a través de arquitecturas [[OpenGL]] y parece que esta va a ser la vía que se siga en un futuro, aún no hay nada que pueda ser mostrado.



Por último, '''no existen [[entorno de desarrollo integrado|IDEs]] completos para plataformas no-Windows''', lo que conlleva cierta dificultad en su uso para el resto de plataformas. Recientemente ha aparecido un entorno escrito en [[Gambas]] que pretende facilitar el trabajo a los usuarios de Linux. Sin embargo, aún no es más que un editor simple con soporte para resaltado de sintaxis.
Por último, '''no existen [[entorno de desarrollo integrado|IDEs]] completos para plataformas no-Windows''', lo que conlleva cierta dificultad en su uso para el resto de plataformas. Recientemente ha aparecido un entorno escrito en [[Gambas]] que pretende facilitar el trabajo a los usuarios de Linux. Sin embargo, aún no es más que un editor simple con soporte para resaltado de sintaxis.


== Versiones actuales (0.85 y siguientes) ==
== Versiones actuales (0.85 y siguientes) ==
Las versiones de Fenix posteriores a la 0.84b han sido desarrolladas por Koorman y su objetivo es limpiar de fallos Fenix y optimizarlo para una ejecución más rápida, dejando de lado en principio la inclusión de nuevas características cuyo objetivo no vaya en esa línea.
Las versiones de Fenix posteriores a la 0.84b han sido desarrolladas por SplinterGU y su objetivo es limpiar de fallos Fenix y optimizarlo para una ejecución más rápida, dejando de lado en principio la inclusión de nuevas características cuyo objetivo no vaya en esa línea.


Además, se ha cambiado el sistema de compilación a uno basado en [[GNU toolchain]] para todas las plataformas soportadas. Además esta serie de versiones incluye las mejoras necesarias para ofrecer soporte para [[Windows Vista]], incluso con [[User Account Control|UAC]] activado.
Además, se ha cambiado el sistema de compilación a uno basado en [[GNU toolchain]] para todas las plataformas soportadas. Además esta serie de versiones incluye las mejoras necesarias para ofrecer soporte para [[Windows Vista]], incluso con [[User Account Control|UAC]] activado.

Revisión del 15:34 8 abr 2010

Fenix Proyecto 1.0
Información general
Tipo de programa lenguaje de script
Desarrollador Fenix Team
Licencia GNU GPL 2.0
Enlaces

Fenix, o el proyecto Fenix, es el nombre de un proyecto multiplataforma de software libre para crear un compilador alternativo al lenguaje DIV parte fundamental de la suite para el desarrollo de videojuegos Div Games Studio. Sin embargo, con el paso del tiempo se han ido añadiendo nuevas características que entre otras cosas, ha derivado en una versión hasta cierto punto incompatible con el lenguaje DIV original y en un nuevo proyecto más ambicioso.

Características

  • Lenguaje interpretado, mezcla de C y Pascal: muy sencillo y potente.
  • Multiplataforma extrema: El intérprete funciona en todas las versiones de 32 bits de Windows, GNU/Linux, Mac OS X, BeOS, BSD, GP32, Dreamcast, PSP, GP2X y, en general, en casi cualquier plataforma que soporte SDL y GCC. Los programas compilados pueden ser intercambiados entre cualquiera de esas plataformas sin necesidad de recompilación.
  • Procesos (programación multihilo).
  • Motor de render 2D por software.
  • Modos gráficos 8 y 16 bits, entre otras cosas permite rotación de sprites, escalado, alpha blending, blendops, blit aditivo y sustractivo, etc.
  • Soporte (incompleto) para Modo 7.
  • Reproducción de sonidos en formato WAV, PCM y Ogg Vorbis.
  • Reproducción de módulos de música en formato IT, MOD y XM.
  • Soporte de librerías DLL en las plataformas que así lo permiten.

Historia

En la década de los 90 Daniel Navarro Medrano creó una herramienta orientada a la creación de videojuegos de 32 bits bajo MS-DOS. El nuevo lenguaje, de nombre DIV Games Studio, combinaba características de C y Pascal con un entorno completo que permitía la creación y edición de todos los aspectos de los proyectos: programación, edición gráfica y sonora y un largo etc.

Fenix, inicialmente bajo el nombre DIVC y de naturaleza GNU, apareció de la mano de José Luis Cebrián como una herramienta capaz de compilar y ejecutar esos juegos en Linux. El nombre fue cambiado en la versión 0.6 del compilador, que además introducía otras mejoras, como la aparición de un fichero intermedio entre el entorno de compilación y el entorno de ejecución. Ya no era necesario distribuir el código fuente de un juego para poder jugarlo. La ventaja principal de esa práctica (similar en concepto a Java) era clara, compilar en una plataforma y ejecutar en muchas.

En la versión 0.71 el proyecto quedó parado, lo que dio lugar a múltiples versiones derivadas que corregían fallos o añadían nuevas características.

La versión oficial de Fenix fue retomada por Slàinte en el año 2002, viejo conocido de la comunidad DIV por ser el webmaster de una de las páginas web más importantes para la comunidad, quien continuó el proyecto bajo el nombre de Fenix - Proyecto 1.0 al que pronto se reincorporaría su creador y cuyo primer objetivo era limpiar el compilador de errores y estabilizarlo. Desde entonces el compilador ha sufrido numerosos cambios y mejoras, dejando de lado la compatibilidad con el lenguaje DIV.

En el actualidad, tras un largo tiempo sin modificaciones, en el año 2006, Fenix ha sido retomado por SplinterGU, el mismo que implemento el primer sistema de dlls. Fenix se encuentra actualmente en la versión 0.92, la cual ya posee mejoras importantes en cuanto a rendimiento, estabilidad, prestaciones, etc.

Debido a la base del proyecto, la biblioteca SDL, ha sido posible portar Fenix a un gran número de plataformas, como el propio Linux, Windows, Mac OS X, BSD, BeOS, PlayStation, GP32, GP2X, Dreamcast y otras, aunque las únicas oficialmente soportadas hoy día son Linux, Windows, Mac OS X y BSD. Otras, como GP32 y GP2X gozan de gran aceptación de sus respectivas comunidades y se mantienen gracias a la dedicación de sus usuarios.

Críticas

Fenix ha sido o es criticado por varios motivos.

El primero es la falta de documentación actualizada. Pese a que existe un extenso manual, éste está orientado a versiones hasta la 0.71 y sólo está disponible en español. El lenguaje ha cambiado desde entonces, dejando ciertas partes del mismo obsoleto. Para solventar esto, se ha puesto a disposición de los usuarios una documentación de las funciones que incorpora la versión del CVS. Sin embargo, se está trabajando en actualizar el sistema y el nuevo sistema (que pretende ser mucho más versátil que el antiguo) aún no está completo.

El proyecto carece de una buena base multilingüe, lo cual provoca en los usuarios no hispanohablantes un cierto recelo en su uso. Esta dificultad está siendo trabajada en las últimas versiones CVS, aún por completar.

Muchos usuarios se quejan de la lentitud del intérprete ya que todas las rutinas gráficas se ejecutan por software. Aunque se ha hablado de posibles versiones aceleradas a través de arquitecturas OpenGL y parece que esta va a ser la vía que se siga en un futuro, aún no hay nada que pueda ser mostrado.

Por último, no existen IDEs completos para plataformas no-Windows, lo que conlleva cierta dificultad en su uso para el resto de plataformas. Recientemente ha aparecido un entorno escrito en Gambas que pretende facilitar el trabajo a los usuarios de Linux. Sin embargo, aún no es más que un editor simple con soporte para resaltado de sintaxis.

Versiones actuales (0.85 y siguientes)

Las versiones de Fenix posteriores a la 0.84b han sido desarrolladas por SplinterGU y su objetivo es limpiar de fallos Fenix y optimizarlo para una ejecución más rápida, dejando de lado en principio la inclusión de nuevas características cuyo objetivo no vaya en esa línea.

Además, se ha cambiado el sistema de compilación a uno basado en GNU toolchain para todas las plataformas soportadas. Además esta serie de versiones incluye las mejoras necesarias para ofrecer soporte para Windows Vista, incluso con UAC activado.

Otro resultado de esta serie de mejoras es que el rendimiento, en determinados casos llega a ser 3 veces mayor que en la versión 0.84.

Una vez se estabilice por completo la rama actual el objetivo es modularizar Fenix, separando toda la funcionalidad no esencial del núcleo del motor y ofreciéndola como librerías externas. Está previsto que estos cambios se realicen en lo que se ha dado en llamar Proyecto 2.0.

Otras de las mejoras más reseñables (ver enlace más abajo para lista completa de cambios) son: - Concepto de variables publicas/locales por proceso, esto permite poder declarar variables que son locales a 1 proceso y no a todos. - Nuevos filtros de escalado grafico. - Un soporte de debug más completo


Enlaces externos

Juegos Fenix

Si bien hay numerosos juegos escritos en Fenix, son de destacar:

  • Karnak's Temple de Alawar Entertainment, como primer juego comercial realizado con Fenix. Se trata de un juego de plataformas ambientado en el Egipto faraónico.
  • Basgamix, es digno de mención debido a la gran cantidad de niveles, la calidad de los escenarios y las músicas, que hacen de este arcade/plataformas un juego a considerar.
  • Nuts & Scrap de Devilish Games, que recibió la Mención Especial del jurado en el premio de creación de videojuegos organizado por ArtFutura y Sony PlayStation en 2003. En el juego, debes controlar a un robot y a una tostadora con el objetivo de salvar al Mundo de un pérfido doctor.
  • Sonoro Tv, también de Devilish Games, galardonado con la mención especial del jurado y la Mención Especial al mejor concepto de juego en el premio de creación de videojuegos organizado por ArtFutura y Sony PlayStation en 2004. Similar en parte al mítico Lemmings debes salvar a una serie de 'samples' de ser eliminados por un malvado DJ.
  • Dirty Bit X, de SVC Games (Sergio del Valle Clemente), una versión con un look retro-futurista del clásico Pong, añadiendo llamativos efectos visuales y movimientos especiales.
  • Debris, de SVC Games (Sergio del Valle Clemente), un juego de acción y reflejos en el que se trata de conseguir la máxima puntuación posible enlazando explosiones y aumentando multiplicadores mientras nos enfrentamos a enemigos inteligentes que van aprendiendo de nuestra forma de jugar. Un proyecto en el que se utilizaron investigaciones de una beca de investigación universitaria.
  • Battle City Remake, de AFsoft, es una remake del clásico juego de tanques de Namco. Participó en el concurso de remakes organizado por Retro Remakes obteniendo el puesto 20.
  • Streets of rage Remake de Bombergames, es un Remake con varios años de desarrollo, trata de ser un perfecta reproducción de toda la saga y una muestra del potencial de Fenix.
  • PiX Pang de PiX Juegos es otro remake del juego de recreativa Pang con la jugabilidad del original más otras características que se han ido añadiendo durante el desarrollo. ¡Es realmente adictivo!
  • Agonía también de Se32. Se trata de una aventura conversacional con una mecánica similar a juegos como Three Sisters' Story y similares desarrollada con un motor a su vez desarrollado en Fenix, Venturer. El juego destaca por unos buenos gráficos aportando una ambientación excelente junto al audio y también por el saber aprovechar las funcionalidades del motor que utiliza como base.

Páginas relacionadas