Page 76 of 92

Re: Test de mi gameEngine en processing.

Posted: Thu Jun 06, 2019 11:39 am
by erkosone
La verdad es que esta quedando bastante bien, y funciona muy fino tio.
Ya te digo, sabiendo economizar con la iluminación y las sombras y aprobechando bien el sistema de batch de shapes puedes hacer muchas cosas con buen rendimiento.

Re: Test de mi gameEngine en processing.

Posted: Fri Jun 07, 2019 2:42 am
by erkosone
Avances y performance..
Acabo de añadir una nueva feature que es la bomba, realmente nos permite crear contenido dinamico muy facilmente en los juegos 3d..

Se trata de la distancia de visión.. ajustando la distancia de visión podemos tranquilamente lanzar 50.000 procesos, si! has leido bien.. CINCUENTA MIL PROCESOS EN 3D! sin un apice de ralentización, java, al igual que c o c++ son lenguajes extremadamente optimizados en lo que a recorrer listas de objetos se refiere, estan creados basicamente para esto, y crear una lista de varios cientos de miles de objetos y recorrerla a cada frame practicamente lo deja indiferente..

Así que.. simplemente basta con añadir esto al proceso 3d:

[Codebox=java file=Untitled.java]dist = getDist(idPerso);

if(dist>100){
visible = false;
}else{
visible = true;
}[/Codebox]

Y como bien se puede ver, heredado de gemix como no, da exactamente igual la cantidad de objetos que esten funcionando.. el framework se va a basar en el valor de la variable local predefinida "VISIBLE" para renderizar o no el modelo..
Pero ya no solo renderizarlo.. si no que basicamente no aplica ni transformaciones a la matriz general del motor grafico, así que realmente se vuelve una solución ultra fast.

La verdad es que me esta sirviendo mucho Gemix como inspiración para dejar fino a este motor, he de reconocer que el lenguaje Gemix tiene aspectos muy elaborados como este que supongo que en Gemix hace exactamente lo mismo.


Con esto en 3d lo que pretendo es evitar la carga dinamica de procesos y modelos.. simplemente se genera todo el contenido pues java puede con grandes listas de objetos y procesos sin despeinarse, y el framework hace el trabajo sucio.. obteniendo una gran tasa de FPS ahun teniendo varios miles de procesos con modelos 3d en memoria ejecutandose.

Re: Test de mi gameEngine en processing.

Posted: Fri Jun 07, 2019 9:53 am
by Hokuto7
¿El 3d es solo para la version opengl?.

Re: Test de mi gameEngine en processing.

Posted: Fri Jun 07, 2019 2:59 pm
by erkosone
Hola Hokuto, si tio, solo para openGL acelerado por hardware, tanto para Desktop "Windows linux y macosx" como para Android.

Te dejo un video de como luce el motor de la gameLibZero en 3d, ya con iluminación basica y todo eso..


Re: Test de mi gameEngine en processing.

Posted: Fri Jun 07, 2019 4:26 pm
by Hokuto7
Entonces tendre que esperar a que implementes el 3d en la version de raylib.
Aunque lo que realmente me interesa es que metas la funcion para cargar los mapas hechos con szener y el poder manejar desde el codigo los objetos colocados desde el szener.

Una pregunta que puede que no tenga solucion.
[Codebox=gemix file=Untitled.gemix]
int animacion[] = {1,1,1,2,2,2,3,3,3};
[/Codebox]

Me gustaria saber si hay alguna forma de indicarle al array el numero de repeticiones que quiero que tenga cada numero,es para no tener que estar poniendo muchas veces el mismo numero.

Si no se puede con array,hay alguna otra forma.Es decir,pongo un numero y con alguna funcion que tenga el lenguaje decirle que ese numero tenga ciertas repeticiones.

Re: Test de mi gameEngine en processing.

Posted: Fri Jun 07, 2019 6:01 pm
by erkosone
Hola hokuto. Pues se puede de muchas maneras. Puedes hacerlo haciendo que el array de la animacion se tenga que leer a pares y que el primer numero sea el frame y el segundo el numero de repeticiones. Osea . Int[] animation = { 1,5, 2,5, 3,5, 4,5 };
Entonces oa animacion es 1 2 3 4 repitiendo 5 frames cada uno.

Re: Test de mi gameEngine en processing.

Posted: Fri Jun 07, 2019 8:06 pm
by Hokuto7
Asi de primeras no lo entiendo,porque si recorro ese array me va a leer primero el sprite 1 luego el 5 despues el 2,y no lo va a recorrer seguido para que tenga una animacion seguida.

Re: Test de mi gameEngine en processing.

Posted: Fri Jun 07, 2019 10:47 pm
by Nowy
recorres ese array pero el primer valor que encuentras se lo asignas al grafico, y el segundo a las veces q tienes que repetir esa asignacion(o esperar para leer el siguiente) en bucle.

Re: Test de mi gameEngine en processing.

Posted: Fri Jun 07, 2019 11:53 pm
by erkosone
Aber almas de catarus que podemos leer tantos datos como queramos del array a cada iteracion..

for( int i=0; i<tamanio; i+=2 ){

}

entonces i indica el gráfico, y de igual manera "i+1" indica las veces que hay que repetirlo.

Re: Test de mi gameEngine en processing.

Posted: Sat Jun 08, 2019 10:42 am
by Hokuto7
Depues de realizar algunas pruebas comento.

Nowy!!, esta muy bien lo que comentas,pero si recorres ese array lo hace seguido y no veo la forma de decirle desde un bucle que repita 5 veces el primer numero antes de pasar al segundo,si tu lo sabes dimelo.

Erkozone!!,esta muy bien tu teoria pero en la practica no funciona porque no explicas como recorrer 5 veces un numero antes de pasar al siguiente,tu me estas diciendo que vaya de 2 en 2 con i += 2,pero eso lo que hace es primero el 1 despues el 2,vamos que se salta en cada iteracion el 5.

Pero ese 5 como lo uso o para que sirve,si no le veo ninguna utilidad,tu dices que es para decirle que lo repita 5 veces,pero como lo usas.Pon un ejemplo,si no,es imposible entender esto.He mirado por internet y no hay nada sobre esto que comentas.