Page 31 of 49

Re: Div Games Online en Html5 y Javascript

Posted: Fri Mar 07, 2014 9:42 am
by AmakaSt
BigHead wrote:Cada vez pinta mejor esto! pronto haré alguna cosilla para mi web :) por cierto el el primer juego de ejm me va hiperlento que se puede deber? imagino que este pc es el culpable, es bastente flojo, pq todo esto tira de procesador y ram no?

Animo con el proyecto que cada día luce mejor!
Hola BigHead,

Es el ejemplo del draw y xdraw es el que te va lento?

Prueba este, quitando las funciones de subtract:

Code: Select all

// Pruebas de compilador online Div Games
// Php + Html5 + Canvas + Javascript
// by J. Manuel Habas

program ejemplo_draw_xdraw;
global
	alto = 120;
	anima = 0;
	id_txt[2]; id1[2]; id2[999]; i;
    ampliar, oculta_contenido;

begin
	/* pruebas con opciones de pantalla */
	set_mode(m320x240);
	screen_color(#135);

	set_fps(30, 0);

	text_size = 50;
	id_txt[0] = write(0, 160, 20, 4, "Pulsa [1] [2] o [3] para borrar distinto dibujo");
	id_txt[1] = write(0, 160, 40, 4, "Pulsa [4] para dibujar xdraw y [5] borrarlos");
    //id_txt[2] = write(0, 160, 220, 4, "Pulsa [6] para ocultar y [7] mostrar contenido");

	/* pruebas con draw */
	draw(1, #fff, 15, 0, 10, 10, 310, 10);
	draw(1, #fff, 15, 0, 10, 230, 310, 230);

	draw(3, #ff0, 3, 0, 30, 30, 50, 50);
	draw(3, #ff0, 6, 0, 35, 35, 50, 50);
	draw(3, #ff0, 9, 0, 40, 40, 50, 50);
	draw(3, #ff0, 12, 0, 45, 45, 50, 50);

	draw(5, #0f0, 3, 0, 240, 30, 50, 50);
	draw(5, #0f0, 6, 0, 235, 35, 50, 50);
	draw(5, #0f0, 9, 0, 230, 40, 50, 50);
	draw(5, #0f0, 8, 0, 225, 45, 50, 50);

	id1[0] = draw(2, #f00, 15, 0, 10, 120, 300, 80);
	id1[1] = draw(5, #00f, 7, 0, 100, 110, 110, alto);
	
	draw(4, #fff, 15, 0, 0, 0, 10, 10);
	draw(4, #fff, 15, 0, 310, 0, 10, 10);
	draw(4, #fff, 15, 0, 0, 230, 10, 10);
	draw(4, #fff, 15, 0, 310, 230, 10, 10);
	
	shadow_text(id_txt[0], #000, -1, 1, 1);
	shadow_text(id_txt[1], #000, -1, 1, 1);
    shadow_text(id_txt[2], #000, -1, 1, 1);
	shadow_draw(id1[1], #068, 0, 2, 3);
	gradient_draw(id1[1], #f0f, 0, 100, 0, 200);
	
    //id1[2] = draw(3, #000, 15, 0, 0, 0, 320, 240);
    
	loop
		move_draw(id1[1], #00f, 7, 100, 110, 110, alto);
		//subtract_draw(id1[2], 2, 160 - ampliar/2, 120 - ampliar/2, ampliar, ampliar);
        //subtract_text(id_txt[1], 2, 160 - ampliar/2, 120 - ampliar/2, ampliar, ampliar);
		
		if (anima == 0) alto ++;
		else alto --; end

		if (alto > 120) anima = 1; end
		if (alto < 10) anima = 0; end
		
		if (key(_1)) delete_draw(id1[0]); end
		if (key(_2)) delete_draw(id1[1]); end
		if (key(_3)) delete_draw(all_drawing); end
        if (key(_4))
            delete_xdraw(all_xdrawing);
            
        	for (i = 0; i < 1000; i++)
				id2[i] = xdraw(0, rand(1, 9), rand(10, 310), rand(10, 230), rand(40, 80), 0, rand(40, 80), 0);
			end
        end
        if (key(_5))
        	for (i = 0; i < 1000; i++)
            	delete_xdraw(id2[i]);
            end
		end
 /*       
        if (key(_6)) oculta_contenido = 1; end
        if (key(_7)) oculta_contenido = 0; end
        
        if (oculta_contenido == 0) 
        	ampliar += 4; if (ampliar > 400) ampliar = 400; end
        else
        	ampliar -= 4; if (ampliar < 0) ampliar = 0; end
        end
*/
		frame;
	end
end
Si que va por procesador y ram, para que vaya con aceleración habría que pasar Div GO a webgl (ya me lo he estado mirando también), pero con esto se perdería compatibilidad con algunos navegadores y dispositivos.
Yo tengo un intel core i5 de hace 3 años, y no noto lentitud. :P

Un saludo.

Re: Div Games Online en Html5 y Javascript

Posted: Fri May 02, 2014 5:31 pm
by AmakaSt
Versión 0.42 ya disponible para testear online, las novedades:

variable:
- max_int, min_int, view_full_amplitude; //nueva variable de ampliación para set_mode()
funciones:
- sort(array, modo); //ordenar array
- btoa(); otoa(); htoa(); //convierte cadena en binario, octal y hexadecimal
bugs y mejoras:
- [ADD] realizado cambios en el sistema de carga grafica, por lo que div go ahora es mas optimo
- [FIX] ahora funciona bien los juegos en google chrome para móvil
- [ADD] colisión con mouse, ej: if (collision(type mouse))
- [FIX] corregido problema con las variables locales
- [FIX] ahora no genera error el compilador el añadir variables locales o privadas después del bloque loading
- [FIX] corregido problema con el valor inicial de la variable size
- [FIX] solucionado problema en la construcción de structs
- [FIX] solucionado varios bugs menores del compilador

Un saludo.

Re: Div Games Online en Html5 y Javascript

Posted: Sun May 04, 2014 10:35 am
by AmakaSt
DivGO 0.42 disponible para descargar.

Re: Div Games Online en Html5 y Javascript

Posted: Sat May 10, 2014 3:54 pm
by AmakaSt
DivGO 0.42r2 disponible para descarga, versión que soluciona errores.

Re: Div Games Online en Html5 y Javascript

Posted: Tue May 13, 2014 10:54 pm
by AmakaSt
Nueva revisión de la 0.42 disponible para descargar. Esta ya es la buena! 8-)

Un saludo.

Re: Div Games Online en Html5 y Javascript

Posted: Mon Jun 09, 2014 10:52 pm
by AmakaSt
En los próximos días subiré la versión 0.44, esta versión de Div GO contara con muchas novedades:

variables:
- cnumber, c_0, c_1, ..., c_9;
- all_process;
- restore_type, no_restore, partial_restore, complete_restore;
- struct joy, struct pad;
- b_joy_connect, b_pad_connect, b_name_joy, b_name_pad; //pad y joy devuelven la misma información

struct joy:
- left, right, up, down, button1, button2, button3, button4

struct pad:
- left, right, up, down, button0, button1, ..., button9, stick1.left, stick1.right, stick1.up,
- stick1.down, stick1.button, stick2.left, ..., stick2.button;

funciones:
- ya se pueden crear bloques function
- unload_image(), unload_fpg(), unload_font(), unload_sound(), unload_video();

bugs y mejoras:
- [ADD] cambios en scroll para controlar la camara en distintas ventanas de scrolls asociadas a procesos
- [ADD] cambios en la funcion signal para que acepte la variable all_process
- [ADD] ahora el compilador crea un archivo asociado a cada fpg, con esto las carga de fpg es mucho mas rápida
- [ADD] get_browser() ahora devuelve el nombre del navegador utilizado y la información del gamepad
- [FIX] solucionado problemas y mejorada la reproducción de audio/video
- [FIX] si un proceso o una función tiene el valor de un grafico no existente no se dibuja el grafico
- [FIX] ahora break dentro del loop finaliza el bucle al instante

Y por el momento esto es lo que habra. 8-)

Un saludo.

Re: Div Games Online en Html5 y Javascript

Posted: Tue Jun 10, 2014 8:51 pm
by AmakaSt
Disponible online Div GO 0.44, he actualizado algunos ejemplos: ejemplo scroll y ejemplo de procesos que incluye las variables del gamepad (esta variable solo funciona en los navegadores Google Chrome, Firefox y Opera).

Aquí un ejemplo para probar las variables de Gamepad (Yo hago pruebas con un mando de Xbox360):

Code: Select all

// Php + Html5 + Canvas + Javascript
// by J. Manuel Habas

program ejemplo_joy_pad;
global
	joystick = 0;
    
begin
	/* pruebas con opciones de pantalla */
	set_mode(m480x200);
	screen_color(#333);

	set_fps(60, 0);
    
	text_size = 80;
	text_color = #fff;
    
	write(0, 240, 20, 4, "Pulsa cualquier boton del Control Pad");
	write(0, 240, 45, 5, "Detectado: ");
    write_int(0, 240, 45, 3, offset joystick);

    write_int(0, 0, 120, 3, offset pad.stick1.up);
    write_int(0, 100, 120, 3, offset pad.stick1.down);
    write_int(0, 200, 120, 3, offset pad.stick1.left);
    write_int(0, 300, 120, 3, offset pad.stick1.right); 

    write_int(0, 0, 140, 3, offset pad.stick2.up);
    write_int(0, 100, 140, 3, offset pad.stick2.down);
    write_int(0, 200, 140, 3, offset pad.stick2.left);
    write_int(0, 300, 140, 3, offset pad.stick2.right);

	//gatillos
    write_int(0, 100, 100, 3, offset pad.button8);
    write_int(0, 200, 100, 3, offset pad.button9);

    write_int(0, 0, 160, 3, offset pad.up);		//joy.up
    write_int(0, 20, 160, 3, offset pad.down);	//joy.down
    write_int(0, 40, 160, 3, offset pad.left);	//joy.left
    write_int(0, 60, 160, 3, offset pad.right); //joy.right
    
    write_int(0, 0, 180, 3, offset pad.button0); 	//joy.button1
    write_int(0, 20, 180, 3, offset pad.button1);	//joy.button2
    write_int(0, 40, 180, 3, offset pad.button2);	//joy.button3
    write_int(0, 60, 180, 3, offset pad.button3);	//joy.button4
    write_int(0, 80, 180, 3, offset pad.button4);
    write_int(0, 100, 180, 3, offset pad.button5);
    write_int(0, 120, 180, 3, offset pad.button6);
    write_int(0, 140, 180, 3, offset pad.button7);
    
    //button stick
write_int(0, 160, 180, 3, offset pad.stick1.button);
    write_int(0, 180, 180, 3, offset pad.stick2.button);
    
	loop
		joystick = get_browser(b_pad_connect);
        
		frame;
	end
end
Este ejemplo estará incluido en la carpeta de ejemplos, de la versión para descargar. :)

Un saludo.

Re: Div Games Online en Html5 y Javascript

Posted: Sat Jun 14, 2014 11:31 am
by AmakaSt
Ya disponible para descargar la versión 0.44.
Al final le he incluido otra función antes de sacar esta versión: set_color(); para colorear el background de la pagina de forma dinámica desde el juego.

Un saludo.

Re: Div Games Online en Html5 y Javascript

Posted: Sun Jul 13, 2014 11:00 am
by AmakaSt
Ya disponible online para testear la versión 0.50 de Div GO, esta versión trae un cambio interno importante que hace de Div GO un autentico lenguaje Div. :)

Y aquí la lista de novedades:

funciones:
- pixelated_in_map(), blur_in_map(), region_pixelated(), region_blur();
- color_in_map(), region_color(); //en sustitución a las graphic_explorer(), graphic_builder(),...
variables:
- _c_minus, _c_plus, _c_asterisk, _c_backslash, _caps_lock, _num_lock, _scroll_lock
- _ins, _home, _pgup, _pgdn, _del, _end, _minus, _plus, _l_brachet, _r_brachet
- _c_home, _c_up, _c_pgup, _c_left, _c_center, _c_right, _c_end, _c_down, _c_pgdn, _c_ins, _c_del
- cc_red, cc_green, cc_blue, cc_yellow, cc_cyan, cc_magenta, cc_orange, cc_lime, cc_violet, cc_brown
- cc_pink, cc_purple, cc_aqua, cc_pistache, cc_turquoise, cc_maroon, cc_silver, cc_gray, cc_white, cc_black
funciones eliminadas:
- graphic_explorer(), screen_explorer(), region_explorer(), graphic_builder();
bugs y mejoras:
- [MEGA ADD] realizado cambio interno para que la forma de usar los procesos en div go ahora sea similar a un div-like
- [ADD] mejorada la lista de procesos en el entorno, ahora muestra información de los procesos: graph, x, y, z...
- [ADD] añadido soporte completo a las teclas del teclado, con las variables de div / div 2
- [FIX] arreglado problema de bloqueo con la función signal al usar señales que afectaban al árbol familiar
- [DEL] eliminadas las funciones de manipulación de gráficos, con el cambio interno de div go su funcionamiento era lento
- [ADD] actualizado ejemplos con el uso de las nuevas funciones

Un saludo.

Re: Div Games Online en Html5 y Javascript

Posted: Sun Jul 13, 2014 8:04 pm
by OskarG
no se como diantres lo haces,pero me encanta este proyecto.Espero que siga evolucionando ,lo que no me ha quedado claro es si puedo con este lenguaje hacer juegos para iphone o android a pelo,sin añadir nada mas y que tipo de rendimiento se obtiene.