Main Menu

BENNU3D

Started by l1nk3rn3l, November 12, 2009, 02:20:44 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Windgate

En el directorio de descargas de Bennu 3D he encontrado un zip llamado ShTlTerrainSources070803  Tiles que tiene un ejecutable que muestra un terreno tileado hasta el infinito, ¿Alguien estaba al tanto?, me interesa mucho el tema :P

El caso es que aunque usa las dll de Bennu 3D está empaquetado en un zip y no puedo acceder al código, si alguien puede aclarar qué instrucciones se pueden usar se lo agradeceré muuucho :D
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

Prg

#91
hola, el test 15 me funciona perfectamente en windows xp, pero en mi windows 7 no, me faltará instalar algo? se me hace raro porque es por opengl ese test, será que necesito hacer algo con ello en mi win7?

aprovecho, hay alguna función para ya usar el tipo de dato
type _PhyMaterial //material fisico (propiedades de la superficie de un cuerpo)
 float Elasticity,
       static_friction, kinetic_friction,
      Softness;
end

es que recuerdo que el ejemplo de c era realmente grandioso, además conozco lo que bullet hace en blender (animación de cabello y tela muy realista), entonces buscaba la función que recibiera como parámetro esta estructura y no la veo, hay?

me acabo de encontrar otra cosa:
en windows xp

si uso M8E_SETTEXTFLAG(ETCF_OPTIMIZED_FOR_QUALITY ,1);
muchas de las veces que ejecuto me da un error, a alguien más le pasa? si no uso es instrucción no me pasa, lo más raro es que siempre se me detiene cuando carga la misma textura. tengo la nueva versión
en ese momento estoy cargando texturas de 160*29 con un degradado en transparencias a 32 bits, si no pongo optimizado para calidad gran parte de la textura se pierde y si la pongo cuando corre, se ve bien, pero la mayoría de las veces no corre... al rato reviso si en windows7 me pasa lo mismo, pero hace rato cuando continuaba con este código aya no me pasaba esto...

si uso
EDT_DIRECT3D9 = 4;
ó
EDT_OPENGL = 5;
no pasa, pero si uso 0-3 si me saca algunas veces, aunque más si uso 0.
en humos puedes mover la camara con los cursores. es necesario para los niveles a partir del dos :)

Windgate

Quotesi uso M8E_SETTEXTFLAG(ETCF_OPTIMIZED_FOR_QUALITY ,1);
muchas de las veces que ejecuto me da un error, a alguien más le pasa? si no uso es instrucción no me pasa, lo más raro es que siempre se me detiene cuando carga la misma textura. tengo la nueva versión

A mí me funciona sin problemas, sin ello las texturas fotorrealistas pierden calidad, se ven como en 16 bits :S

Quotesi uso
EDT_DIRECT3D9 = 4;
ó
EDT_OPENGL = 5;
no pasa, pero si uso 0-3 si me saca algunas veces, aunque más si uso 0.

Yo te diría que uses sólo EDT_OPENGL y ojalá salgo algo superior, ¿Has observado la memoria que consume el juego con algo que no sea OPENGL???, además hay algunas varias cosas que sin OPENGL no funcionan bien, como las cámaras de seguimiento automático y algunos emisores de partículas.

Por cierto, con OPENGL he tenido problemas para ejecutar los juegos en algunos PC relativamente antiguos, generalmente Pentium IV pero de hace 3 ò 4 años me refiero, con GPU integrada en la placa.
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

Prg

... está raro... tendré algo dañado?

mmm
revisaré en la otra pc, chance y es algo de la tarjeta o de algo por ahí extraño.
es verdad si uso directx consume más, pero con opengl las luces se comportan de forma rara... quizá mis librerías de opengl estén mal... y por eso tantas cosas... tendré que revisar .. estoy haciendo un editor de mapas para hacer mis mapas para mágico y agregarles luces dinámicas, ojalá no me dentenga esta cosa, tengo muchas ideas.
en humos puedes mover la camara con los cursores. es necesario para los niveles a partir del dos :)

l1nk3rn3l

#94
una version in estable pero con algunas caracteristicas futuras ,

solo usarla para probar ...

http://www.megaupload.com/?d=TN1GVW4W

http://rapidshare.com/files/348250995/prg.rar.html


por cierto el modulo 3dbit que estas haciendo windgate esta de lujo cuando lo termines lo pasare a C nativo.

la razon por la cual bennu3d no es modular o basado en procesos , es por rendimiento, asi podras elegir que corre
en procesos y que no...

si splinter dice que codeblocks es para niñas , de ahora en adelante me colocare una peluca para
seguirlo usando..

;D

Gracias por los aportes..


P.D: El terreno tileado son unos prototipos que se estan estudiando para pasarlo a Bennu.
       y hay mas cosas en irrlicht que estan ahi, pero estan en eso.

      Si bullet es una belleza, recuerdo que bennu3d antes usaba newton dynamics como motor de fisica
      hasta que sino recuerdo si pixel o josebita me dijo que cambiara a otro motor que la licencia fuera ,
     mas libre.

SplinterGU

lo importante de pasarlo a C es usar los callbacks para la actualizacion... tambien ya va siendo hora que se deje de usar la funcion RENDER del bennu3d y usar los callbacks como yo te pase (l1nk3rn3l) hace tiempo, en una version de bennu3d, no se si todavia sigue estando en el codigo...

asi que la idea es que el modulo no use todo el engine grafico de bennu, y que haga la navegacion en la lista de procesos y actualice en consecuencia los datos referentes a 3d si es que cambian.

Evitando todo el analisis que hace bennu y haciendo solo lo necesario del 3d esto deberia rendir muy bien.

jejejeje, con respecto al codeblock claro que es un chiste... se que muchos aca lo usan... incluso algunos lo usan como IDE Bennu.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Prg

 :'(  ;D
los shadders están increibles, y las nuevas funciones tenía tiempo esperándolas.

Quote8 feb 2010
* funcion ahora tiene 2 parametros M8E_ADDSHADER(int efecto, _ShaderParams parametro) ver test15.prg
   listo para efectos avanzados, listo agua(sin reflejos), lava y cartoon.
* actualizado al motor irrlicht 1.7 version beta (parece que tiene errores en las colisiones,
   version solo para pruebas)
* nuevas funciones "int M8E_MODELGETJOINTNAME(int modelo, string nombre)", que retorna el joint de un
   modelo teniendo su nombre,
   "int M8E_MODELGETJOINT(int modelo, int indice)" retorna el joint de un modelo teniendo su indice
   "int M8E_MODELJOINTCOUNT(int modelo)" retorna el numero de Joints que tiene el modelo.
   la utilidad de estas funciones podria ser adicionarle un arma a un modelo.
    ej: modelomano= M8E_MODELGETJOINTNAME(modelosoldado, "Bip01_R_Hand"); 
   estas funciones solo funcionan con formatos con esqueletos como .MS3D  y   .X

M8E_MODELGETJOINTNAME
algunas de las ideas que tenía:
colocar emisores al golpear para simular trallectorias de armas.
colocar emisores en casa, mapas, etc mediante las posiciones de los bones
crear raycols entre dos bones para algunas armas, y lacers, objetos, etc...
etc, etc, etc, son solo algunas ideas, pero la verdad esto se presta a muchísimo, ya que ¡se mueven! :)

muchas gracias, karma ++
en humos puedes mover la camara con los cursores. es necesario para los niveles a partir del dos :)

Windgate

Lo de los shader es buenísimo, pero lo de interacción con los bones... No me lo esperaba :O

Además, los joints y los bones son un paso previo al uso de físicas como las de ragdoll physics, ¿Verdad?

Voy a echar un vistazo a lo nuevo, gracias l1nk3rn3l
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

l1nk3rn3l


Windgate

Vamos a degustarla :P

Por cierto l1nk, Splinter y yo estuvimos un rato hablando acerca del uso de la aceleración gráfica que hace ahora mismo Bennu 3D. El caso es que con distintas tarjetas gráficas, una de última generación y otra más normal, obteníamos el mismo rendimiento. Ambos ordenadores tenían la misma frecuencia de CPU, sólo que uno con 2 núcleos y el otro con 4.
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

Prg

descargando :), gracias.
en humos puedes mover la camara con los cursores. es necesario para los niveles a partir del dos :)

l1nk3rn3l

#101
por cierto l1nk, Splinter y yo estuvimos un rato hablando acerca del uso de la aceleración gráfica que hace ahora mismo Bennu 3D. El caso es que con distintas tarjetas gráficas, una de última generación y otra más normal, obteníamos el mismo rendimiento. Ambos ordenadores tenían la misma frecuencia de CPU, sólo que uno con 2 núcleos y el otro con 4.

bueno , si usas directx9 y opengl no creo que el rendimiento sea EL mismo que en
directx8.. que es el mas viejo API..
Una prueba seria cargar un mapa grandote con varios modelos animados.., creo que se
notaria la fuerza de la aceleradora..(opengl )
y para los que no tienen aceleradora usar directx8

y usando cada modelo como estatico el rendimiento sube con aceleradora..


los nucleos por el momento lo usa los ejemplos de fisica de bennu3d.

el motor grafico esta en standby(irrlicht no soporta hilos en su motor de render como ogre3d)

Además, los joints y los bones son un paso previo al uso de físicas como las de ragdoll physics, ¿Verdad?

sip, y también cosas tan simples como adicionarle algo a algo.. (un arma, baston,misil a helicoptero, etc)


SplinterGU

yo lo probe con una placa gforge 8500GT 512mb creo, procesador dualcore (no core2duo) de 1.6, en linux 32bits (wine)...

windgate, lo probo en un procesador de 4 cores, de 1.6, en windows xp o windows 7, de 64 bits, si no me equivoco. y una placa mejor...

ambas placas con opengl, y el rendimiento es el mismo...

la sospecha es que irrlitch no esta usando aceleracion completa por hard... o demasiado procesamiento hay en algo de la irrlitch...

probamos con unos ejemplos que hizo windgate, con terrenos con elevaciones y depresiones, con unos 1000 modelos animados constantemente y la misma prueba con 100 modelos (si no me equivo)...

otra prueba que se hizo fue, hacer 1000 procesos bennu para cada modelo con su 3dit asociado a cada uno y otra prueba con los 1000 directo desde el motor y un solo proceso bennu... el rendimiento fue el mismo, y bastante bajo, o sea, que con eso comprobamos que los 1000 procesos bennu no meten la carga de cpu, sino que la carga esta en el motor 3d, creo que es irrlitch.

y la misma prueba daba los mismos resultados en mi pc y en la de windgate.

quizas esos datos sirvan de algo...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Prg

hola encontre un bug a la hora de remover modelos cargados con m8e_loadmodelex

para observarse vease el test 28 cambiando la linea 38 a modelo=m8e_loadmodelex("media/bird.md2",0); //load model

me salta mensaje de error y sale del programa.

tengo la version del 16 de febrero.
en humos puedes mover la camara con los cursores. es necesario para los niveles a partir del dos :)

Windgate

¿Por qué cargas el pájaro con LOADMODELEX? Eso es para modelos grandes, no tengo por aquí los tests ahora mismo, lo probaré cuando tenga un rato... Creo que no había probado aún el MODELREMOVE...
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es