Ir al contenido

Diferencia entre revisiones de «DIV Games Studio»

De Wikipedia, la enciclopedia libre
Contenido eliminado Contenido añadido
Sucesores: Adding DIV DX (oficial DIV2 sucesor)
Línea 43: Línea 43:
=== DIV DX ===
=== DIV DX ===
{{AP|Div DX}}
{{AP|Div DX}}
DIV DX es el sucesor oficial a DIV2 , basado en el código original y compatible con 100 % DIV1 prg / exe y prg DIV2 (excepto mode8 ) . La nueva versión es en full HD y portado a muchas plataformas, incluyendo Android , Windows , GCW0 , Pandora , Linux , Frambuesa Pi , OSX y Javascript .
DIV DX es el sucesor oficial a DIV2 , basado en el código original y compatible con 100 % DIV1 prg / exe y prg DIV2 (excepto mode8 ) . La nueva versión es en full HD y portado a muchas plataformas, incluyendo Android , Windows , GCW0 , Pandora , Linux , Raspberry Pi , OSX y Javascript. Algunas demostraciones de ejemplo están disponibles en el sitio oficial [http://www.div-arena.co.uk (Div-Arena)]


== Ejemplo ==
== Ejemplo ==

Revisión del 12:20 12 feb 2016

DIV
Desarrollador(es)
Hammer Technologies
http://div-arena.co.uk/, http://www.js.mikedx.co.uk/ y http://div-arena.com/
Información general
Paradigma Imperativo (Procedural), Estructurado
Apareció en 1998
Diseñado por Daniel Navarro Medrano
Implementaciones Múltiples
Influido por C, Pascal, MODULA-2, BASIC
Sistema operativo Multiplataforma
Las versiones iniciales del lenguaje, solo MS-DOS

DIV Games Studio es un lenguaje de programación con sintaxis y estructuras similares al Pascal y al C, nacido en un principio para la creación de juegos en MS-DOS. Fue lanzado en 1998 por la empresa española Hammer Technologies.[1]

Existen dos paquetes distribuidos por Hammer Tecnologies: DIV y DIV 2. DIV 2 supera en algunos aspectos a su antecesor. Dichas distribuciones incluyen un compilador, un programa de diseño de sprites y un programa de edición de archivos de sonido, es decir, todo lo necesario para crear un videojuego. El software está pensado para que los usuarios no requieran ser expertos programadores. Con posterioridad a estas dos distribuciones, han aparecido varias otras implementaciones del lenguaje DIV.

Características

La principal característica del lenguaje es el hecho de tratar a los procedimientos de manera muy similar a los procesos de Linux, pero de forma automática. Cada vez que un programa manda a llamar un procedimiento, se crea una copia de éste a manera de proceso; dicho proceso se ejecuta una vez durante cada fotograma (frame) del juego. Adicionalmente, cada proceso contiene un conjunto básico de variables como son posición X, Y, Z, gráfico actual, archivo de gráficos, Ángulo, Etc. Basta con modificar alguna de esas variables para reflejar los cambios en pantalla en el siguiente Frame (Por ejemplo, modificar la posición X y Y hace que el gráfico aparezca en esas coordenadas). Se pueden crear cientos de copias de un mismo proceso, modificar su posición y con eso ya se tiene, por ejemplo, un conjunto de enemigos, cada uno ejecutando su propia instancia, con sus propias variables y siguiendo un código básico dictado por el proceso.

Sucesores

Tras la desaparición de Hammer Tecnologies en el año 2000 han existido numerosos proyectos que pretendieron ser los sucesores del DIV, sin conseguirlo; una parte importante de los mismos no pasaron de ser vaporware, como en el caso de DIV-DX (WinDIV), DIV-ARENA o wxDIV. Otros, como FreeDIV o eDIV,[2]​ fueron abandonados prematuramente en sus primeras fases de desarrollo. En el caso de CDIV (o CDIV Games Studio), se trata de un conjunto de herramientas para C destinadas a convertir juegos de DIV a C, basado en las funciones del DIV 2 y de ALLEGRO 4.2.[3]​ Una herramienta similar pero orientada al lenguaje Java es el JDIV. A continuación aparecen los proyectos derivados del lenguaje DIV que han ofrecido una mayor continuidad.

Proyecto Fénix

El Proyecto Fenix, inicialmente llamado DIVC, fue el primer intento (iniciado en el año 2000) de recrear DIV Games Studio, con diversas mejoras como soporte para gráficos de 16 bits y mayor portabilidad. Dispone de compilador e intérprete para múltiples plataformas y sistemas operativos, entre ellos Windows, Linux, MacOSX, BeOS y GP32.

Gemix Studio

Implementación escrita de cero y publicado a partir de 2008, Gemix Studio pretende ser una continuación de DIV Games Studio 2 (actualmente no oficial) y ofrecer todo lo posible para desarrollar cualquier tipo de juego 2D y/o 3D, sea por software o hardware. Actualmente está en desarrollo, a diferencia del DIV Games Studio todo está modularizado, soporte de 16 y 32 bits y muchas features nuevas. Actualmente soporta las siguientes plataformas: Windows, Linux, Mac OS X.

Bennu Game Development

Surgido en 2006, BennuGD se basa en el código del Proyecto Fenix, y se diferencia en que ahora todo está modularizado, soporte de 32 bits, muchos menos bugs y con aún mayor portabilidad. Actualmente soporta las siguientes plataformas: Windows, Linux, MacOSX, GP2X, GP2X Wiz, Wii, PSP, Android, iOS, Caanoo, Dingux, Dreamcast, Haiku OS, Pandora y Xbox.

DIV GO

DIV GO es un entorno de desarrollo online diseñado en 2012 por Amakasoft, en el cual se puede programar juegos en HTML5 utilizando el lenguaje DIV. Los juegos desarrollados en este entorno son compatibles con dispositivos táctiles, tales como Android e iOS.

DIV DX

DIV DX es el sucesor oficial a DIV2 , basado en el código original y compatible con 100 % DIV1 prg / exe y prg DIV2 (excepto mode8 ) . La nueva versión es en full HD y portado a muchas plataformas, incluyendo Android , Windows , GCW0 , Pandora , Linux , Raspberry Pi , OSX y Javascript. Algunas demostraciones de ejemplo están disponibles en el sitio oficial (Div-Arena)

Ejemplo

Un sencillo ejemplo de un programa que crea turmites:[4]

Program TURMITE;

Global
orientacion=1;
xa;
ya;
velocidad=10;
a=1;

Begin
  set_mode(m320x240);
  xa=160;
  ya=120;
  write(0,0,0,0,"Pulsa A para aumentar la velocidad");
  write(0,0,10,0,"Pulsa D para disminuir la velocidad");

  Repeat
    If(xa<0)xa=320;End
    If(xa>320)xa=0;End
    If(ya<0)ya=240;End
    If(ya>240)ya=0;End
    If(key(_a))velocidad--; 
    If(velocidad<1)velocidad=1;End;End
    If(key(_d))velocidad++;End
    
    Switch(get_pixel(xa,ya))
      Case 0:put_pixel(xa,ya,22);derecha();End
      Case 22:put_pixel(xa,ya,41);derecha();End
      Case 41:put_pixel(xa,ya,54);izquierda();izquierda();End
      Case 54:put_pixel(xa,ya,0);izquierda();izquierda();End
  End
  
  Frame(velocidad);
  Until(key(_esc))
End 

Function derecha();
  Begin
    orientacion++;
    If(orientacion>4)orientacion=1;End
    Switch(orientacion)
      Case 1:xa-=a;End
      Case 2:ya+=a;End
      Case 3:xa+=a;End
      Case 4:ya-=a;End
  End
End

Function izquierda();
  Begin
    orientacion--;
    If(orientacion<1)orientacion=4;End
    Switch(orientacion)
      Case 1:xa+=a;End
      Case 2:ya-=a;End
      Case 3:xa-=a;End
      Case 4:ya+=a;End
  End
End

Como consecuencia de la introducción de pequeñas modificaciones en algunos elementos del lenguaje, el anterior código se ejecuta sin problemas en DIV, DIV 2 y Gemix Studio, pero son necesarias algunas modificaciones para que se ejecute correctamente en Fenix, BennuGD o DIV GO[5]​.

Referencias

  1. Historia del software de entretenimiento español en macedoniamagazine.frodrig.com
  2. http://sourceforge.net/projects/edivc
  3. http://cdiv.sourceforge.net/
  4. A partir del código publicado en la revista DIVmanía, número 4, 1999.
  5. Código turmite funcionando en Div GO

Enlaces externos