Bueno abri un nuevo post ya que esta libreria esta
dedicada a bennu,(la version de fenix ya no estara disponible)
primero pregunto como crear una libreria, compilar una dll
en bennu en c++
como en fenix alguien creo algo asi con modificaciones claro
para que se pudiera compilar en c++ no c
sobre los avances de la libreria bennu3d
tengo varios comentarios:
+ la mejor libreria de fisica es AGEIA physics, hice varios test y la verdad
no ofrece rendimiento sobre pcs, que no tengan una terjeta de fisica instalada
lo compare con el nuevo newton 2.0,
bennu3d actualmente corre sobre newton 1.5 y ofrece un buen rendimiento
con la version2 de newton mejora bastante el rendimiento, y sera incluido en la proxima
beta de la libreria.(optimizado para procesadores multi nucleo, tarjetas nvidia con
ppu(physics process unit) , y el hardware normal que todos tenemos)
nada de tarjetas de fisica(hardware), y la razon definitiva de no incluir AGEIA, en la
libreria es que AGEIA es pura publicidad , ofrece efectos que solo se logran con hardware
no en cualquier maquina como newton..
+ la inteligencia artificial se creara estilo darkIA , le estoy tomando ideas
interesantes de este proyecto ,
http://darkbasicpro.thegamecreators.com/?f=dark_ai
y en bennu abran tambien 3 equipos (aliados,enemigos,neutrales)
estoy portando la libreria OpenSteer para tal fin.
+ estoy implementando la libreria multiplayer sobre raknet pero aparte
para usarlo en 2d(sdl bennu) o con la bennu3d
Suena muy bien, no se si abras leido uno de los ultimos post que puse de avances... he probado la m8ee (bennu3d), esa que me habias pasado una vez los fuentes y porte a Bennu, usandola como unico motor grafico de Bennu... y funciona perfectamente...
No entiendo tu consulta sobre compilar para crear una dll, ya de hecho estas compilando la bennu3d... podrias explicarlo un poco mejor?
bueno me refiero a meter todo en una dll
actualmente uso 2 dlls
1 en c++
1 en c
hay una intermedia que no se necesita ,
fenix tenia un tutorial de dlls que incluia un ejemplo
de compilar en c++ usando una sola dll
no tengo experiencia en el tema para arreglar las cabeceras
para tal proeza , asi que preguntaba haber si alguien
tiene tiempo para hacer algo asi, seria muy util
y el codigo seria muy rapido, ya que por ejemplo
yo uso mas c++ que c,
c es mas rapido pero c++ permite integrar mas proyectos
inclusive pense en que se podrian adaptar las cabeceras
para compilar con c o c++ indistintamente
con #ifdef _cpp y esa parnaferlaria
voy a investigar a ver como me va
ya se que splinter anda muy ocupado
por eso no lo pedi directamente ademas no es algo urgente
¿Has probado con eclipse-CDT? Yo he usado tanto la versión de linux como la de windows con cygwin-gcc y van de lujo ambas y son iguales.
Cuando creas un nuevo proyecto C++, te da la posibilidad de decirle que es una Shared library y puedes compilar tanto C++ como c, usar tanto headers c como cpp y al final él solito te crea la .dll o .so final.
Para las dependencias de cabeceras, directorios, librerias externas o macros si te vas a las propiedades del proyecto puedes cambiarlas muy intuitivamente.
Además trae dentro una especie de automake o cmake que te crea los makefiles finales del proyecto automáticamente. Así si deseas compilar fuera de eclipse puedes seguir hacíendolo con make. De esta forma solo te tienes que preocupar del código fuente.
yo he probado 3 alternativas más gratuitas pero a todas le he sacado alguna pega, las pongo de orden de mejor a peor: Netbeans C++, codeblocks, y devcpp.
Claro está que todo es cuestión de gustos, lo mejor es siempre probarlas todas y opinar por uno mismo :D
Hola. Donde puedo encontrar una documentación menos cripítica de bennu3d ?
De momento, me medio apaño viendo como funcionan los test que acompañan....
Como puedo saber a que FPS esta funcionando o como puedo controlar los FPS , o la VSync y la frecuencia de refresco ? (Si intento controlar los FPS con setfps, se queda como medio colgado el programa)
Al tratar de compilar usando la función M8E_GETFPS para saber los FPS, me da un error de "Undefined procedure"
Estoy usando el set de bennu starpack, + el bennu 3d que esta en la misma página
Por cierto, he notado un bug en bennu3d al usar M8E_MODELROTATION
rot.x = angulo;
//rot.y =angulo;
//rot.z = angulo;
M8E_MODELROTATION(modelo, &rot);
Trato de girar un modelo simple que he cargado en formato 3ds ( y probé también en el formato .x) y cuando lo giro, he visto que giro solo en el eje X o solo en el eje Z. El giro que me hace realmente, es sobre el mismo eje pero con sentido contrario.
en este momento la estoy depurando y le mirare
gracias zardoz
actualizo el link para descargar la ultima bennu3d,
ya que el anterior link esta roto(esta version es la de abril)
http://www.mediafire.com/?m11nei5uwda
http://3dm8ee.blogspot.com/
preview mas compacta y mas rapida, pronto IA
Gracias...
Pregunta... hay demo de esto http://www.blitzbasic.com/gallery/pics/1186.jpg ?
no, es una imagen que cogi al azar , crear ejemplos es mas
demorado de lo que pense,
Estoy creando un pak de minijuegos para probar el motor
y asi tener imagenes que mostrar,
suena chistoso pero como se puede ver tome la imagen de un juego de
blitzbasic
Si, jeje... cuando lo postee lo vi... pero bueno, con preguntar no se pierde nada, quizas tenias algo similar para mostrar...
A todo esto, que programa usas para crear los modelos? estoy queriendo usar algo para crear unos modelos 3d para hacer unos logos de Bennu... probe con el Blender pero es lo menos intuitivo que vi en mi vida...
lo mejor para logos es xara3d
ahora en su version xara xtreme que es gratis pero solo linux
http://www.xaraxtreme.org/about/screenshots.html
otras opciones sin instalar nada
http://es.cooltext.com/
http://www.logogenerador.com/
Gracias, voy a probar, la idea es hacer un logo animado, para hacer un video de intro, para poder meter en los juegos hechos en Bennu, una idea similar al logo de nVidia.
Splinter, si quieres hacer modelos, blender parece complicado, pero cuando le coges el truco de como funciona el "workflow" es mucho mas eficiente. ¿cual es el problema que te impide hacer modelos simples? si quieres abre un hilo nuevo sobre ese tema y gustoso te contestare (llevo tiempo haciendo cosas con blender).
hola. El ulead cool 3dstudio es muy bueno. mira (lo hice con un poco de apuro, pero bueno).
(http://i247.photobucket.com/albums/gg149/rolix1/bennulogo.gif)
Jejeje, y dices que lo hiciste rapido? bueno, voy a tener que probarlo... gracias... :)
hola, tengo entendido que necesitaban un ejemplo con partículas no?, pues eh creado uno en mi tiempo libre, espero les sirva.
[code language="bennu"]
include "m8ee.h"
import "mod_key"
import "mod_proc"
global
modelo[1],camara,texturamario,
i;
_Pos3D pos;
end;
process humo() //proceso partículas
private
tex; part;
tex2; part2;
begin
tex=M8E_LOADTEXTURE("part.png"); //textura de la primer partícula
part= M8E_ADDPARTICLE(1); //activa la partícula
M8E_LOADTEXMODEL(part, tex ); //le pone textura
m8E_MODELMATTYPE(part, EMT_TRANSPARENT_ALPHA_CHANNEL_REF ); //le quita los bordes
M8E_MODELSETMATERIAL(part, EMF_LIGHTING,0); //hace que la luz no le afecte
m8E_MODELADDCHILD(modelo[0],part); //la pega al primer modelo
M8E_PARTICLESETSIZE(part,20,20); //le da un tamaño mayor M8E_PARTICLESETSIZE(nombre de la partícula,tamaño en x,tamaño en y);
tex2=M8E_LOADTEXTURE("sang.png"); //repetimos lo anterior para la segunda partícula
part2= M8E_ADDPARTICLE(1);
M8E_LOADTEXMODEL(part2, tex2 );
M8E_MODELMATTYPE(part2, EMT_TRANSPARENT_ALPHA_CHANNEL );
M8E_MODELSETMATERIAL(part2, EMF_LIGHTING,0);
M8E_PARTICLEADDGRAVITYAFFECTOR(part2,0,-0.01,0,true); //le agrega gravedad M8E_PARTICLEADDGRAVITYAFFECTOR(nombre de la partícula,gravedad x,gravedad y,gravedad z,si está activa);
M8E_MODELADDCHILD(modelo[1],part2);
M8E_PARTICLESETSIZE(part2,5,5);
while (!key(_esc))
frame;
end;
end;
begin
full_screen=false;
set_mode (640,480,16);
set_fps (25,0); //max. 25 frames
M8E_INIT(); //init engine
//M8E_INIT_DRIVER(EDT_OPENGL); //init engine with any driver
if (M8E_SCREENEXIST() <> 1)//error?
WRITE (0,1,10,0, "Error: M8ee Init-failed." ) ;
while (!key(_esc)) frame; end;
exit();
end;
//load scene with 2 models
//--------------------------------------------
texturamario=M8E_LOADTEXTURE("media\Luigi.pcx");
for (i=1; i<=2 ;i++)
modelo[i-1]=M8E_LOADANIMODEL( "media\mario.md2" ); //load model
M8E_LOADTEXMODEL(modelo[i-1], texturamario );//load texture
M8E_MODELSETMATERIAL(modelo[i-1], EMF_LIGHTING,0);//not light in material
M8E_ANIMODEL(modelo[i-1], 265,450);// animation (model,start,end)
pos.x=-(i*100)+100; pos.y=-20; pos.z=100;
M8E_POSMODEL(modelo[i-1],&pos); //position (model, pos3d)
end;
camara=M8E_ADDCAM(0,50,-60, 0,20,0); //add camera (posx,y,z, targetx,y,z)
//--------------------------------------------
humo(); // proceso de las partículas
while ( (!key(_esc)) )
M8E_RENDER(0, 55,155,55); //(alpha, r,g,b)
pos.x =pos.x+get_distx(z,20); //mueve al modelo[0] cíclicamente
pos.y =get_disty(z,20);
z+=10000;
pos.z=100;
m8E_POSMODEL(modelo[0],&pos);
pos.x =get_distx(z,20); //mueve al modelo[1] cíclicamente
pos.z =get_disty(z,20);
M8E_POSMODEL(modelo[1],&pos);
frame;
end;
//free resources
M8E_FREE();
//--------------------
end
[/code]
sólo necesitarían los gráficos de las partículas, los cuales están en http://s247.photobucket.com/albums/gg149/rolix1/texturas/
No se...
con que version de la bennu3d funciona el ejemplo?
por demas, gracias.
Lo realicé con el Bennu3D R15032008; pero con la versión más actual también funciona(la que tiene cambios hasta el 17 de junio, y que dice que urgen los ejemplos), sólo hay que agregar un 0 al M8E_INIT(); quedando como M8E_INIT(0);, también se puede poner M8E_MODELMATTYPE(part, EMT_TRANSPARENT_ADD_COLOR ); , para hacer el humo transparente, sólo hay que poner en negro el borde del bmp con la imagen del humo, para que no lo lea. Quizá se vea un poco raro el ejemplo, pero funciona muy bien a la hora de hacer que el humo siga objetivos, o cosas por el estilo.
ese fue el error que me dio, ahora pruebo... gracias...
Con la R23032008 no me funciona, crea la ventana y se cierra, sin dejar ningun log. Voy a probar con la R15032008... y te digo... gracias...
Ahi probe con la bennu3d+r21032008.rar, y funciona, pero las particulas las veo cuadrados... y veo a los luigi dando vueltas... creo que me perdi de algo... voy a releer todo el post, quizas me enganche en algo que no era para mi... :P
Ya entiendo era respuesta para Zardoz...
éhmmm... y cómo van con el logo, si en algo pudiera ayudarles, díganlo, aunque no entiendo, lo vas a dejar como avi, como gif o como imágen estática, o lo aimarás en un proceso?
Va muy bien el logo, Kel lo hizo excelente... El formato es lo de menos...
http://3dm8ee.blogspot.com/
nueva version
nueva version, preview del control de caracteres,
http://bennupack.blogspot.com/
http://coldev.net76.net/bennu/examples/
Donde esta el link de descarga de la nueva version? En el blog la ultima entrada data del 13 de agosto de 2008.
http://coldev.net76.net/bennu/examples/
2.408k bennu3d
1590k hiper3d
286k netsandman
sino sirve
netsandman
http://www.filefactory.com/file/01b2dd/n/Netsandman_zip
hiper3d
http://www.gigasize.com/get.php?d=gkq2s96vpxb
bennu3d
http://www.gigasize.com/get.php?d=jhkx54k1wtb
si no baja completo se recomienda usar un gestor de descargas...
http://netants.programas-gratis.net/
http://netants-international-edition.softonic.com/
Vale yo buscaba en el blog M8EE (http://3dm8ee.blogspot.com/), mea culpa!
La descarga de bennu3d de coldev falla. Se baja bien pero al descomprimir da error. Con gigasize se descarga perfectamente. Gracias.
Excelente la nueva función, me encanta la idea de que las animaciones se puedan frenar (AnimationEnabled), era un problema el tener que frenarlas manualmente, el movimiento está muy bien, el salto y el movimiento lateral... te felicito. Observé que la cámara se mete entre las montañas, no colisiona en ellas, ¿se arreglaría agregándoles manualmente las colisiones o se va a modificar ésto?
te la respondo dentro de poco,
sera que me puedes enviar, el codigo fuente del proyecto de magia
es que habia algo sobre la camara que me parecio interesante
el .prg solito
me lo puedes enviar por Privado , sino es mucho pedir.... :)
muchas gracias..
por supuesto. ya está el mensaje. :)
Hola amigos,
después de muchos días buscando y probando antiguas versiones por fin he conseguido una de las últimas versiones de Bennu3D.
El principal problema que le veo es que la documentación sobre las funciones es bastante breve, y casi siempre hay que terminar haciendo pruebas para averiguar para qué sirve cada llamada.
Me gustaría extender un poco la documentación (Si me dais permiso xD). He programado mucho en 2D, y aunque en 3D aún no soy ningún experto llevo días en ello y quiero seguir hasta el final. He abierto una nueva entrada en la sección Documentación del foro, seguramente os preguntaré alguna cosa así que, ¿Sigo escribiendo en esta entrada o vuelvo a la de Documentación/Bennu3D que he abierto yo?
En cualquier caso muchas gracias a todos!
PD: Los enlaces de Gigasize NO funcionan con el navegador Google Chrome, quizá no sea el único que ha tenido el problema.
si por supuesto toda ayuda es bienvenida, los creditos seran incluidos
y las ayudas tambien :)
he estado ocupado en el trabajo, asi que no he podido adelantar gran cosa,
asi que como es un proyecto GNU, es abierto , cualquier ayuda
es bienvenida e incluida.
agradeceria como me pidieron hace poco un tutorial
pues puedes comenzar por ahi,
gracias
Es perfecto, quería preparar un pequeño tutorial para enseñarles el Bennu3D a unos alumnos de programación. Intentaré hacerlo sencillito, no sé si tendré tiempo para hablar a fondo de todas las funciones, pero espero que llegue a ser un buen recurso y ampliarlo poco a poco.
Cada día que me ponga a enredar seguro que os echo un par de post, me ha sorprendido lo rápido que contestáis, me alegra mucho ver que todavía hay personas trabajando en esto.
http://www.filefactory.com/file/da7812/n/bennu05102008_rar
Nueva version es igual que la anterior , pero esta version es compilado 100% por GCC,
asi que no tiene dependencias , agradeceria si alguien tiene en alguna maquina Win98/me/2000 lo probara...
por defecto carga OpenGL pero se puede cambiar a otro driver grafico con la funcion m8einit
M8E_INIT(EDT_DIRECT3D8);
o ...
M8E_INIT(EDT_DIRECT3D9);
para descargar seleccionan "Download with FileFactory Basic"
Gracias
descargado y probando... lo tuve que descargar directamente, porque mi gestor de descargas no pudo. Una preguntota: ¿Vamos a mudarnos a la nueva version de Bennu, o ya nos vamos a quedar en ésta versión? se que el cambio no podría ser ahorita, sino que sería en vacaciones ¿pero lo habrá (el cambio)? :)
Si la idea, y lo ideal seria eso...
dentro de poco estoy preparando el bennupack con nuevos ejemplos
y vendra la actualizacion del bennu3d con verdaderas novedades... en lo que se refiere a 3D
ok, Gracias... sería muy bueno tener gráficos de 32 b en los juegos... Oye, observé que con la nueva librería los gráficos que se ponen con M8E_GUIADDIMAGE( ...); no se pueden hacer invisibles con M8E_MODELVISIBLE(...);, incluso algunos se me distorcionaron, unos círculos cuyo contornos tocaban los extremos del gráfico... bueno, también ya probé la nueva función de colisión con los terrenos en mi juego, y la verdad va muy bien, probé a hacer los saltos con m8e_posmodel(); y si funcionaron. :) ¡¡¡Felicidades!!!
PARA OCULTAR ALGO CREADO CON GUI COMO M8E_GUIADDIMAGE(
USA PARA REMOVER
M8E_GUIREMOVE(ID)
O PARA SACAR DE LA VISTA
M8E_GUIMOVE(ID,-300,-300)
sobre la imagen, debe ser que el color alpha transparente no esta bien definido en la imagen, usa png
o otro formato que permita el alpha bien definido
:D no se me había ocurrido moverlo fuera de pantalla, como decubrí que era suficienta con hacerlo invisible, ya no busqué alternativas. En cuanto a lo de la distorsión, creo que será mejor que veas esto http://rapidshare.com/files/152534906/raro.rar.html (http://rapidshare.com/files/152534906/raro.rar.html) el gráfico que utilizo es un png, y es lo mismo con un bmp, pero el problema sólo aparece con círculos que tocan las orillas del gráfico. Quizá no sea muy importante, pues su solución es muy simple, sin embargo creo que lo mejor es mostrártelo. :)
ese error que te da en los png, es porque el grafico tiene ancho impar... no se si la M8E_LOADTEXTURE usa el codigo de Bennu/Fenix Wip2, pero si es asi, entonces el error se soluciona con las nuevas WIP...
Ya veo, gracias Splinter. Sí, en realidad usa la wip 2, intenté con la 10, pero no pude compilar el proyecto.
No te funcionara con la wip10 ya que a partir de la 8 (cuando salio una wip linux) el sistema de dlls sufrio un ligero cambio, para compatibilizar el modelo con linux... lo cual hace que las dlls anteriores no funcionen con las nuevas versiones...
QuoteNo te funcionara con la wip10 ya que a partir de la 8 (cuando salio una wip linux) el sistema de dlls sufrio un ligero cambio, para compatibilizar el modelo con linux... lo cual hace que las dlls anteriores no funcionen con las nuevas versiones...
ya veo. :) Entonces esperaré más ansiosamente las librerías que soportan la nueva versión del bennu. Quizá ya puedan mostrarse los gráficos de los procesos. Bueno, sería más fácil programar todo lo referente al 2d de los juegos. :)
esperemos que l1nk3rn3l saque una version pronto, los includes estan en el site de betas...
http://www.filefactory.com/file/14ccd9/n/bennu13102008_rar
esta version esta en bennu WIP11, asi que antes de probarlo desearia que lo probaran con la version
que viene en el bennupack que esla wip2 creo (ver anterior post)
y me dicen cuantos fps , comparados con la wip11, si no es mucho pedir
gracias
P.D.: para descargar le dan click en "» Download with FileFactory Basic"
no pude correr la nueva versión con bennu wip 2, sin embargo hice unas pruebas con el test14 y aunque el m8e_getfps() arrojaba muchas variaciones, en el wip 2 versión 07 julio 2008 obtuve un promedio de 282 fps corriendo sin el flamebird abierto y mostrando los resultados en la consola y 140 con el flamebird abierto; en la versión del 04 octubre 2008, 282 fps corriendo sin el flamebird abierto y mostrando los resultados en la consola y 172 con el fb abierto. y con el context abierto y bennu wip 13 me arrojó lo siguiente (borré muchos valores que se repitieron, incluyo las especificaciones del equipo)
> Executing: C:\Archivos de programa\ConTEXT\ConExec.exe "C:\Bennu\Bin\bgdi.exe" TEST14
pentium D
Irrlicht Engine version 1.4.2
Microsoft Windows XP Professional Service Pack 3
Using renderer: Direct3D 8.1
NVIDIA GeForce FX 5500 nv4_disp.dll 6.14.10.9147
Loaded texture: media\Luigi.pcx
Loaded mesh: media\mario.md2
Needed 0ms to create OctTree SceneNode.(9 nodes, 484 polys)
Needed 0ms to create OctTree SceneNode.(9 nodes, 484 polys)
Could not open file of texture: RUSTY1.JPG
Could not open file of texture: media\RUSTY1.JPG
Could not load a texture for entry in 3ds file: RUSTY1.JPG
Found no matching material for Group in 3ds file.
Loaded mesh: media\barco.3ds
Needed 0ms to create OctTree SceneNode.(35 nodes, 1420 polys)
Loaded texture: media\BARCO.JPG
Needed 0ms to create OctTree SceneNode.(85 nodes, 3200 polys)
Loaded texture: media/text/agua2.jpg
Needed 0ms to create OctTree SceneNode.(65 nodes, 3200 polys)
Loaded texture: media/text/fluidos10.jpg
FPS:
60
1
210
221
216
la prueba sin el context abierto no la realicé pues la consola no se muestra si se ejecutan los dcb directamente.
si necesitas que haga una relación de todos los test me escribes un mensaje. Hice el test 14 por que es de los que más recursos consume. :)
no me supe explicar:
http://www.filefactory.com/file/da7812/n/bennu05102008_rar
esta version es para wip2 que viene en el bennupack 1.2
http://bennupack.blogspot.com/
http://www.filefactory.com/file/14ccd9/n/bennu13102008_rar
y esta es para wip11 que esta en
http://betatester.bennugd.org/betas/
en la proxima version colocare una funcion imprimiendo los fps en todos los test
para facilitar las pruebas , bueno pero segun las pruebas que hice con el ejemplo
de sprites (test09 ) en wip2 me da trescientos algo, y con la wip11 me da quinientos algo
era para mirar en otros equipos a ver que tal va.
paquete de librerias dll para bennu wip15:
http://www.mediafire.com/?sharekey=cb913138bcabbda2d2db6fb9a8902bda
genial, gracias l1nk3rn3l, los estoy bajando, en cuanto termine lo del fpg, continuaré con mi juego, que eh estado pensando en varias cosas para implementar.
agradeceria si alguien tiene un control con vibracion lo probara si funciona
gracias
Quoteagradeceria si alguien tiene un control con vibracion lo probara si funciona
el control con vibración sí funciona. mi juego utiliza esas características, así que si no lo hiciera ya te hubiera dicho, creeme ;) . (no había visto el mensaje ;D )
Quote
Si la idea, y lo ideal seria eso...
dentro de poco estoy preparando el bennupack con nuevos ejemplos
y vendra la actualizacion del bennu3d con verdaderas novedades... en lo que se refiere a 3D
a propósito, cómo va la nueva versión.
qué tan provable es que esto aparezca en la nueva versión, para cuándo podría haber una. :) porfa, estoy desesperado desde hace días pensando en esto, así que no importa que me digas meses, los contaré uno por uno. :)
* sprites con angulo 2.5d (modo7) (me las he ingeniado para hacer models que simulen la actuación de magia, pero para luces que no se reflejan sobre un materia, ésto es muy importante)
* Matrices grandes (terrenos tileados)
* Funcion de autoApuntar para juegos de naves (operaciones sobre matrices) (para autoapuntar mis poderes :) )
* ejemplo de shaders de sombras, Cesped y Agua. (sólo el cesped, el agua ya tengo lo necesario sombras no me preocupan).
:)
¡¡¡saludos!!!
¿alguien podría poner un enlace a la libreria que no sea en mediafire? es que cuando no me dice que el directorio está vacío me dice que no hay slots libres para free users. Y además es bastante críptico en cuanto a descarga (vamos, que es un coñazo para quien no lo usa habitualmente)
gracias.
cordial saludo esta es la ultima version , esta en beta, asi que la camara
FPS (primera persona ) no funciona todavia...
y los terrenos tileados tampoco...
http://rapidshare.com/files/204483410/prg.rar.html
http://wikisend.com/download/584568/prg.rar
pero es la que tengo a mano, a ver si te sirve
por cierto prg, las sugerencias las tomare en cuenta para la nueva
version...
la nueva version de la libreria esta demorada porque tendra nuevas caracteristicas
muy padres como dicen los mexicanos,
podria adelantar algunas cosas mas importantes
* tendra navmesh o malla de navegacion para la inteligencia artificial(usado en halo3) asi
para los que no quieran usar puntos para su IA usaran NavMesh
* Multitud de efectos con sombreadores(shaders) usados en los juegos comerciales
* usa el motor irrlicht en su ultima version 1.5, que aprovecha mejor las aceleradoras 3D
y mas cosas que se iran viendo
lol, muchas cosas y la mitad no me entero de lo que son... :o
A ver si pillamos costumbre de poner unas cuantas capturas de lo que hacemos, yo incluido :-\, en cuanto saque un rato lo revisare no lo dudes, hoy he tenido un largo dia de usar Bennu, y no puedo mais... xD
Quote* Multitud de efectos con sombreadores(shaders) usados en los juegos comerciales
increíble, me has alegrado el día, me encanta experimentar con shaders, aplicar en poderes y demás, y con esta noticia me pones de buen humor, gracias.
a propósito, el sopórte bsp es algo genial, mis mapas me están quedando padrísimos, encontré unas texturas y con luces... increíble. Gracias por las librerías :)
oye, aprovecho para decirte que en el mapa ikzdm1.bsp había agua en la parte de abajo, y librerías anteriores la cargaban, pero creo que las actuales no lo hacen, no estoy seguro, pero intenté poner agua en un mapa y no lo cargó, y cargué ese mapa y no pude ver el agua (necsitaré comer más zanahorias... dijo Splinter :D )
Quotela nueva version de la libreria esta demorada porque tendra nuevas caracteristicas
muy padres como dicen los mexicanos,
así es amigo, los mexicanos decimos "padres" para las cosas geniales, pero las librerías son más que padres, más que padrísimas, :) , y con lo que me cuentas que vendrá en la nueva versión, me dejas con la boca abierta, esperando con ansias aunque sea una beta de los shaders o la IA de la que hablas (halo 3 ;D )...
gracias por todo :) .
me alegro que vuelvas a estar más seguido por estos rumbos. Así cualquier duda te la hacemos directamente. (intenté hacer un glosario de las funciones 3d, por ahí están, sólo que intenté que participara la comunidad y aún no está terminado :) sobre todo aquellas funciones que no he usado o casi no uso :) )
Bueno, nos vemos, ¡saludos! , esperando ansiosamente la nueva versión, y trabajando en el magico como nunca (en mis tiempos libre... je je je), ojalá para las vacaciones de marzo (o abril o de sabe cuando... ??? ¿cuándo son las vacaciones?) pueda mostrarles mis mapas, aunque un sólo mapa en pk3 está pesando 5 mb, y eso que no lo he terminado, sin embargo está grande, así que confío serán pocos, pero buenos y llenos de laberintos :) .
bueno comentar los avances:
estoy renovando todo desde cero,
parece que voy a usar ODE como motor de fisicas o bullet o ambos son muy buenos,
aunque ODE esta mas orientado a fisica sobre carros ya que es muy rapido en esta area
bullet es mas profesional, pero el rendimiento no nos convence..
Editor quark
http://quark.planetquake.gamespy.com/download.php3
para crear mapas BSP recomendamos el editor QUark , tiene menos errores que el
gtkradiant , pero ambas opciones son buenas, incluiremos un tutorial con el paquete
completo del editor algo asi como un fenixpack para crear niveles,,
la ventaja de quark es que podemos utilizar los mapas del entidad3d
(http://www.comunidad-e3d.com/) o del genesis3d (http://www.genesis3d.com/) que
es lo mismo, en nuestros juegos, con entidades claro...!!!!
http://quark.planetquake.gamespy.com/infobase/maped.tutorial.html
http://quark.planetquake.gamespy.com/videos.php3?TA=1&MA=1
otra cosa del avance que deseaba comentar , es sobre las entidades de los mapas,
las podremos usar mas convenientemente en los proyectos en bennu,
ya que las podremos consultar como lo hace el quake3, asi por ejemplo
sabremos donde colocar los personajes, luces, y sonidos de acuerdo en donde este
situado el protagonista...
pronto mas noticias...
:o
hay amigo!, amigo!... excelentes noticias... increible...
tardé mucho aprendiendo a hacer los mapas en entidad 3d, y a colocar entidades. luego en gtk radiant... y ahora podrè usar los dos. bueno, otro más (el quark no lo conozco pero comenzarè a investigar ya... :) )... increibles noticias (aunque todos mis mapas de entidad d los he borrado, la nostalgia sigue)...
Quotelas podremos usar mas convenientemente en los proyectos en bennu,
ya que las podremos consultar como lo hace el quake3, asi por ejemplo
sabremos donde colocar los personajes, luces, y sonidos de acuerdo en donde este
situado el protagonista...
increible, lo que en entidad 3d no podìas controlar con código, aquí se podrá.... wow, wow, wow.... suena increible.
oye, y también tendremos posiciones de bones como se suponía en entidad 3d (se podía colocar una entidad de partículas en un bone de un mono para que se moviera con el (eso decía el tutorial, aunque nunca pude provarlo))...
increible amigo, excelentes noticias. te doy dos karmas .... gracias por las librerías (gracias, gracias, gracias...)
Quotepronto mas noticias...
:o
;)
Impresionante. A ver cuándo podemos verlo funcionando. :)
esperamos ansiosos, buenisimo.
;D
Lo prometido es deuda,
http://3dm8ee.blogspot.com/
ahi va el pack de edicion de niveles
version preliminar, ideal para iniciados..
solo instalar y listo..!!!
Mucha gracias!
descargando y revisando... wwwwwwwwooooooooooooooooooooooowwwwwwwww. ;) :)
graciaas link
karma + para ti amigo
wow, el nuevo programa se ve complicado... tendré que investigar...
yo paso los links del entidad d y el otro editor :)
http://entidad-3d.softonic.com/
http://www.taringa.net/posts/juegos/2066533/entidad-3d,(creador-de-juegos-3d).html (no se preocupen, bien legal, todo es gratis, solo que aquí está el editor más resiente, se los recomiendo, se sale menos y puede copiar y pegar sin problemas [world editor pro])
es un sistema completo para hacer juegos, aunque no se usa código (en realidad muy poco.. archivos *.ini) nosotros usaremos su editor de mundos para el bennu3d, pero necesitamos todo para provar los niveles, compilar y agregar entidades :)
http://www.qeradiant.com/cgi-bin/trac.cgi
gtkradiant
__________________editado
en lo que respecta al entidad 3d, creo que podemos usar sus mapas en el quark ¿es verdad?, pero en las librerías no (cargarlo con bennu 3d), esto es que si vamos a crear mapas nuevos, quizá consideremos usar mejor el quark desde el principio :D, en lugar de hacerlos en entidad, y luego abrirloas al quark para usarlos luego en nuestras librerías. de todos modos dejos los links
bien, con lo que tenemos nos quedamos a la espera de las librerìas, y mientras a crear mundos y mapas, y .... je je je :)
Tanto el link de Taringa como el de softonic me salen no disponibles, e incluso la web oficial de Entidad-3D (www.entidad3d.com) me dice que el sitio no está disponible... ¿Ha caído alguna bomba atómica por ahí y no me he enterado? xD
En cuanto a las capturas tienen muy buena pinta, y los posts de http://3dm8ee.blogspot.com/ impresionantes, la búsqueda de caminos para Bennu 3D me ha dejado alucinado :O
A ver si saco tiempo para revisar todo, awesome!
¡Mola! Descargando, a ver si puedo hacer algo, quiero 3d quiero 3d ¡¡¡¡QUIERO 3D!!!! [/niño alemán mode]
Un karma por adelantado :P
si el editor de genesis/entidad permite guardar en formato MAP,
que es compatible con quark y gtkradiant,
estuve mirando pero el editor de entidad o genesis puede guardar
archivos map, pero los guarda incompletos, osease
un mapa 3DT de genesis que pesa 1mb cuando lo
pasa a MAP , pesa solo 2k , debe ser un bug
ya que miro el contenido del MAP y solo hay una
linea exportada del mapa, debe ser un bug que no se
dieron cuenta , en mi opinion personal , retiro lo dicho
y no recomiendo el editor de genesis/entidad
para crear niveles quake3, si alguien soluciono este
problema que lo comente,
Muchas gracias...
p.d. (es solo mi opinion personal no quiero entrar en debates,
el grupo recomienda GTK radiant o QUARK para crear niveles)
je je, ok. :D
el entidad 3d al guardar crea varios archivos además del map (además se vale de archivos que los otros maps ni conocen, como: texturas en un fichero especial), el map nunca lo pude usar con el gtk radiant, pero cuando dijiste que se podría usar pensé que sería con el quark... bueno, entonces los maps de entidad 3d no funcionan. listo, entendido. no es necesario debates ;D .
lo que si no descarto es que el editor de entidad 3d podría ser usado para hacer mapas 3ds (file/export/autodesk 3ds), no se admiten luces en este formato, o alguna entidad, pero algo es algo, y para zonas iluminadas por el ambiente, y colocadas en terrenos no es tan mala idea... (sólo world editor pro [nueva versión])
y windgate... amigo, tu linea (de internet) está muy mala, intenta hacer un escaneo de velocidad en http://www.speedtest.net/ (http://www.speedtest.net/) o en algún lugar así, para que conozcas cómo va tu linea, posiblemente esté cambiando entre alta y baja velocidad, o simplemente muy baja y por eso se te estén corrompiendo las descargas, y no puedes entrar a varias páginas... bueno eso me sucedía antes. suerte, los links están perfectos, a mi si me abren :) ;) . además como dice Splinter: "Si se te corrompen las descargas, no uses gestores" :) ;)
Es ligeramente Off-Topic : Pero que habra pasado con Jordi el Tio que hizo Entidad-3D y otro mas para hacer aventuras con la NDS; Siempre chequeaba cada cierto tiempo sus webs hasta que un dia desaparecio del todo.
QuoteEs ligeramente Off-Topic : Pero que habra pasado con Jordi el Tio que hizo Entidad-3D y otro mas para hacer aventuras con la NDS; Siempre chequeaba cada cierto tiempo sus webs hasta que un dia desaparecio del todo
sinceramente no se nada amigo ???
... :)
Preview de como seria para acceder desde variables al motor
de bennu3d sin afectar el rendimiento, pronto se podra
acceder a la animacion del modelo desde variables
y habra un render automatico usando hooks de bennu
http://3dm8ee.blogspot.com/
aqui un preview para ver que les parece
se parece a la sintaxis de darkbasic
ver test00.prg para ver el avance del nuevo sistema...
se usa menos codigo y es mas facil sin afectar el rendimiento
ya que se usan variables del motor directamente sin usar funciones
:)
EntityY(ent)
suena muy interesante... ¿ahora en lugar de colocar al model medianto m8e_posmodel, sería mediante entityX(nombredelmodel)=coordenada; entityY(nombredelmodel)=coordenada; entityZ(nombredelmodel)=coordenada; ?
así también será con el tamaño, y ... ???
suena bien porque dejamos de tener un contador de posición como _pos3d :)
gracias ;)
nueva revision disponible ahora con render automatico
ver basic00 y basic01.prg
http://www.megaupload.com/?d=IWFTVSPL
corrijo
y bueno la sintaxis se parece a blitz3d , porque
dije darkbasic, y si ven entityX y demas son de blitzbasic
:)
Fantastico!
Pero pregunto, el render automatico, no estaba hace tiempo?
gracias, descargando :)
C:\Bennu3d\prg\prg\m8ee.h:518: error: Unknown identifier ("M8E_RENDER_ENABLE")
:'(
me dice eso, será que se dañó mi descarga?
a alguien más le pasa?
Buenas!
a ver si me podeis ayuda,no se como cargar texturas en el programa gtkradiant,alguna ayuda por favor^? jeje
;)
ya te instalaste el juego de quake 3 arena en la carpeta c:\program files?
si no es así. ese es el problema.
en
C:\Program Files\Quake III Arena\baseq3 tienes que crear una carpeta llamada models, otra llamada scripts, prefabs, maps y otra llamada textures (las tienes que hacer tu).
ahora cuando el programa inicie debes seleccionar quake iii arena, (por lo general esta opcion es la que viene de defaul).
con eso el programa debe cargar las texturas automaticamente (las que se encuentra en el directorio
C:\Program Files\Quake III Arena\baseq3\textures
o en los *.pk3 del directorio
C:\Program Files\Quake III Arena\baseq3
)
cuando inicie el programa presiona la tecla t para ver las texturas que cargó
...
aquí hay un buen tutorial del programa (incluye la intalación, aunque el tutorial es de una versión anterior, sirve mucho)
http://es.geocities.com/gtkradiant/tutoriales.htm (http://es.geocities.com/gtkradiant/tutoriales.htm)
gracias
pero el tema esta en que no me sale ninguna opcion de texturas, y no se dnd encontrarla,utilizo la version 1,5
(http://img26.imageshack.us/img26/9261/editorh.jpg)
Vale,ya consegui cargar las texturas,ejeje gracias
ok :) , eran las directorios del quake III? u otra cosa?
para trabajar màs cómodamente te recomiendo que cambies esta preferencia:
presion p,
interface/layout/
selecciona la segunda opción en window layout
y asegúrate de que están activadas con palomitas las otras dos opciones.
suerte :)
me alegro que ya hayas podido ;)
lo unico que no consigo esq el programa no para de decirme entity leaked, y e probado en poner las entidadses en todos los sitios!
grax
pd :si,eran los archivos del quake3 jejeje
:)
sinceramente no se por qué pasa eso de entity leaked ???
ya mirare ese error,,,
por cierto el paquete que arme no requiere del quake3
solo para mapas nuevos, inclui texturas de ejemplo
pronto incluire un tutorial basico ... asi que revisen bien el
paquete y se dan cuenta que esta listo para usar y compilar..
mirar el readme.txt en el acceso directo que crea..
Amiguitos, lo acabo de preguntar en otro hilo pero...
Resulta que he experimentado mucho con el 3D partiendo de los tests de ejemplo de la librería M8EE. He cargado modelos, texturas y mapas, he aplicado modelos físicos y de iluminación...
Pero jamás he importado Bennu3D.DLL, luego supongo que son 2 cosas disintas la M8EE y la Bennu3D. ¿Alguien tiene algún ejemplo en el que use Bennu3D y NO use M8EE? ¿O son la misma cosa?
No lo tengo claro, y me gustaría aclarar mi duda antes de ponerme con mi segundo ataque de 3D.
Asias ;D
son la misma cosa , cuando incluyes m8ee.h dentro de este
archivo esta el import hacia el bennu3d..
pero es curioso.. :)
Por cierto la fisica ha sido removida de la libreria,
ya que se usara bullet como motor de fisica y mas
facil de usar. que en la version anterior
asi que los ejemplos de fisica los removi
Gracias por la aclaración. Ahora tengo el problema de que si uso put_screen() y fade() antes de usar funciones de Bennu3D tengo errores de ejecución.
¿Para utilizar CUALQUIER cosa en 2D es obligatorio usar las funciones de GUI de Bennu3D o hay alguna forma de combinar 2D y 3D? He expuesto esta singularidad en un nuevo hilo: http://forum.bennugd.org/index.php?topic=570.msg7246#msg7246
si es obligatorio ya que bennu3d usa directx o OpenGl
y bennu usa SDL por software
el uso de directx y opengl es por la sencilla razon que el 3d requiere
aceleracion por hardware , sino seria super lento ,
para usar funciones de bennu deja de usar en el bucle
el m8e_render,,
y luego lo vuelves a usar para renderizar 3d, cuando se requiera
por ejemplo puedes tener los menus del juego con funciones bennu,
y el desarrollo de la trama del juego con funciones m8ee
Por cierto la fisica ha sido removida de la libreria,
ya que se usara bullet como motor de fisica y mas
facil de usar. que en la version anterior
asi que los ejemplos de fisica los removi
l1nk3rn3l, en el bucle inicial (En 2D) no uso M8E_RENDER() y todavía no he invocado el M8E_INIT().
Cuando muere el proceso 2D inicial, después de un clear_screen y esperando a que termine el fade() es cuando invoco al proceso que se encarga del M8E_INIT(), M8E_RENDER(), etc. Es ahí cuando el juego se me cierra.
Vamos, que tengo perfectamente separada la parte de Bennu de la parte de Bennu3D, aquí la descarga del juego con el problema que os comento: http://www.mediafire.com/?mizhemj2mzm (http://www.mediafire.com/?mizhemj2mzm)
(Está listo para Windows con un .BAT que compila y ejecuta)
QuotePor cierto la fisica ha sido removida de la libreria,
ya que se usara bullet como motor de fisica y mas
facil de usar. que en la version anterior
asi que los ejemplos de fisica los removi
Me gustaba la anterior librería de física :'(, aunque en últimas versiones las colisiones con el mapa me daban problemas de "falsas paredes" o "paredes desplazadas".
Solucionado, el problema era que intentaba cargar el mapa 3D antes de haber invocado el M8E_INIT(), ya lo he corregido en el hilo donde lo había expuesto y en breve procedo a abrir el hilo de mi nuevo proyecto 3D.
;D
me alegro que lo hayas solucionado tan rápido :)
Hola l1nk3rn3l,
¿Se puede hacer algo como esto con la librería?
http://www.geocities.com/valcoey/mtextura.html
Gracias de antemano
Hasta donde yo sé, sí que se puede. Pero modificar una única cara en cuestión no sabría hacerlo, sólo he usado una única textura para recubrir totalmente el modelo.
De todas formas l1nk3rn3l sabrá decirte mejor que yo.
ummm,si no me equivoco se utilizan todas estas texturas en una sola imagen en formato bmp
(http://www.geocities.com/valcoey/mtextura/ttexturas.jpg)
irrlicht puede,,
pero la libreria m8ee nop esta implementado
lo mejor es asignar estas texturas desde el editor 3d
que se este usando(3dmax, blender,etc)
Nueva version del editor de niveles , no requiere quake3 como el anterior
incluye un tutorial muy completo , y ya esta terminado,
http://3dm8ee.blogspot.com/
es un fenixpack para modeladores de niveles....
y por supuesto se reciben comentarios y sugerencias ...
Quote from: l1nk3rn3l on May 09, 2009, 02:39:01 PM
Nueva version del editor de niveles , no requiere quake3 como el anterior
incluye un tutorial muy completo , y ya esta terminado,
http://3dm8ee.blogspot.com/
es un fenixpack para modeladores de niveles....
y por supuesto se reciben comentarios y sugerencias ...
descargando :)
oye, las funciones cambiarán mucho en las próximas versiones de la librería?, lo que pasa es que estaba pensando en reescribir muchas partes de mi código de magia, pero si van a cambiar mucho pues reescribo todo
ya lo descargué, las flechitas del tutorial se parecen a las mías del tutorial del editor... je je je ;D (sobre todo la primera de color rojo)
hola, me he bajado la nueva versión sin ejemplos de física y me sigue diciendo
Quote> Executing: C:\Archivos de programa\ConTEXT\ConExec.exe "C:\Bennu\bin\bgdc.exe" "C:\Documents and Settings\Administrador\Mis documentos\bennu\3d\prg\basic02.Prg"
BGDC 0.93 (May 1 2009 18:01:38)
Copyright © 2006-2009 SplinterGU (Fenix/BennuGD)
Copyright © 2002-2006 Fenix Team (Fenix)
Copyright © 1999-2002 José Luis Cebrián Pagüe (Fenix)
Bennu Game Development comes with ABSOLUTELY NO WARRANTY;
see COPYING for details
C:\Documents and Settings\Administrador\Mis documentos\bennu\3d\prg\librender:3: warning: Variable redeclared ("ALPHA_STEPS")
C:\Documents and Settings\Administrador\Mis documentos\bennu\3d\prg\m8ee.h:517: error: Unknown identifier ("M8E_RENDER_ENABLE")
> Execution finished.
y no me compila, ¿qué hago para solucionar el problema?
algunas funciones se estan dejando como estan para no afectar
a usuarios antiguos,
en el editor de niveles viene incluido la libreria bennu3d mas actual buscala
dentro ...
muchas gracias, eso haré, y comenzaré con los cambios en el mágico, sin preocuparme tanto por el cambio de funciones entonces. gracias. saludos amigo.
Voy directo al editor de niveles, simplemente necesito "algo" parecido a un campo de fútbol (Contento si lo consigo hacer...).
Modelando en 3D soy bastante ceporro, espero que el editor de niveles sea más sencillo que el 3D Max o el Blender... Os cuento cuando lo pruebe xD
Modelar en 3D no es lo mío, he probado el editor de niveles y he hecho un poco el mongol, pero nada palpable, en fin, ya buscaré algún tutorial :-[
Tenía una consulta importante, ¿El nuevo bennu3d funcionará en Ubuntu? He hecho varias pruebas con mi último proyecto en bennu3d de ejecutarlo en Ubuntu y no ha habido manera, me pedía el archivo bennu3d.so...
Tampoco usando el videojuego 3D en mi Windows XP virtualizado desde Ubuntu he podido... Se me cierra el bgdi...
dentro del editor hay un tutorial bien completo para crear niveles.. en PDF
y por cierto josebita se ofrecio para crear la version de linux
osease compilarlo para linux ya que la libreria es 100% portable,
en cuanto termine la fisica habra una version para linux,
y claro haber quien se ofrece para traducirlo se incluye el archivo
de openoffice del tutorial, ya que no quedo tiempo.(dentro del paquete esta)
Cuando lo tengas, avisa.
hola amigo, disculpa ¿hay alguna función para saber si un punto está dentro del campo de visión de la cámara? ... gracias.
otra cosa:
los terrenos no se pintan completamente, hay partes donde aunque hay colisiones, el terreno no se ve. (en un extremo), como si no se terminara de crear
¿hay alguna función para saber si un punto está dentro del campo de visión de la cámara?
no, pero la incluire como sugerencia..
los terrenos no se pintan completamente?
bueno, lo revisare, que funcion usas para el terreno
otro preview este es un efecto postproceso llamado "invertido"
(http://img232.imageshack.us/img232/5712/dibujoutq.jpg)
el efecto se ve genial, es el efecto negativa, utilizado al morir, o para algunos poderes especiales... (ya le estoy encontrando usos :D)
así cargo el mapa y se ve el problema.
[code language="bennu"]/*
MODE8 ENHANCED ENGINE
ColDev (C) 2004
----------------------
-M8EE 3D Engine, Fase Beta -
TEST LOAD TERRAIN
PRUEBA DE CARGA MAPA DE ALTURAS
*/
include "m8ee.h"
global
modelo,camara;
terreno;
float posx,posy,posz;
cambio=false;
i,tercolision,animadorcol;
end;
//camera process
process camarappal()
private
_Pos3D pos1,pos2,pos3;
actualizarpos,actualizartarget;
vel=2;
vel_giro=60;
begin
actualizarpos=false; actualizartarget=false;
pos1.x=0; pos1.y=0; pos1.z=0;
pos2.x=0; pos2.y=0; pos2.z=0;
angle+=vel_giro;
M8E_GETPOSMODEL(camara, pos3); //get camera position
pos3.x+=pos1.x; pos3.y+=pos1.y; pos3.z+=pos1.z;
actualizarpos=false; M8E_POSMODEL(CAMARA, pos3);
actualizartarget=false; M8E_CAMTARGET(CAMARA, pos2);
pos1.x=0; pos1.y=0; pos1.z=0;
loop
if(key(_d) or key(_right))
angle+=vel_giro;
M8E_GETPOSMODEL(camara, pos2);
pos2.x+=get_distx(angle,100);
pos2.z+=get_disty(angle,100);
actualizarpos=1;
end
if(key(_a) or key(_left))
angle-=vel_giro;
M8E_GETPOSMODEL(camara, pos2);
pos2.x+=get_distx(angle,100);
pos2.z+=get_disty(angle,100);
actualizarpos=1;
end
if(key(_w) or key(_up))
pos1.x+=get_distx(angle,vel);
pos1.z+=get_disty(angle,vel);
M8E_GETPOSMODEL(camara, pos2);
pos2.x+=get_distx(angle,100);
pos2.z+=get_disty(angle,100);
actualizarpos=true;
end
if(key(_s) or key(_down))
pos1.x-=get_distx(angle,vel);
pos1.z-=get_disty(angle,vel);
M8E_GETPOSMODEL(camara, pos2);
pos2.x+=get_distx(angle,100);
pos2.z+=get_disty(angle,100);
actualizarpos=true;
end
if (actualizarpos or actualizartarget)
M8E_GETPOSMODEL(camara, pos3); //get camera position
pos3.x+=pos1.x; pos3.y+=pos1.y; pos3.z+=pos1.z;
actualizarpos=false; M8E_POSMODEL(CAMARA, pos3);
actualizartarget=false; M8E_CAMTARGET(CAMARA, pos2);
pos1.x=0; pos1.y=0; pos1.z=0;
end;
frame;
End;
end;
begin
full_screen=false;
set_mode (640,480,32);
set_fps (0,0); //max.
M8E_INIT(edt_direct3d8);
if (M8E_SCREENEXIST()==1 )
M8E_SETTEXTFLAG(ETCF_CREATE_MIP_MAPS,1);
M8E_SETTEXTFLAG(ETCF_OPTIMIZED_FOR_SPEED,1);
//CARGA TERRENO
terreno=M8E_LOADTERRAIN("media\text\heightmap.jpg");
M8E_LOADTEXMODEL(terreno,M8E_LOADTEXTURE( "media\text\Fluidos10.jpg"));
M8E_MODELSCALE(terreno, 150, 4.4, 150);
M8E_MODELSETMATERIAL(terreno, EMF_LIGHTING,0);
M8E_MODELMATTYPE(terreno, EMT_SOLID);//"solid" is fast render with terrain
posx=255*150-1000; posy=255*2; posz=255*150-1000;
camara=M8E_ADDCAM(posx,posy,posz, 2397*2,343*2,2700*2);;//camara en primera persona
M8E_CAMSETFAR(CAMARA,12000);
//--------------------------------------------
//adiciona colision
//tercolision=M8E_ADDCOLTERRAIN(terreno);//collision terrain
//adiciona un animador de colisiones para q responda automaticamente
//create collision animator(auto response)
//--->M8E_ADDANIMCOL(colision,model, ellipsoidRadiusx,y,z, gravityPerSecondx,y,z, ellipsoidTranslationx,y,z)
//M8E_ADDANIMCOL(tercolision,camara, 10,10,10, 0,-3,0, 0,0,0);
//-->M8E_ADDCOLTERRAINFAST(model,terrain,navHeight,MaxHeight,GlueEnable,Gravity x,y,z)
M8E_ADDCOLTERRAINFAST(camara,terreno,20,1150,true,0,0,0); //coldev fast terrain collision
camarappal();
Show_Fps(450,50, 255,255,255,255);
loop
if (key(_esc) ) break; end;
M8E_RENDER(0,0,0,0); //(alpha, r,g,b)
frame;
end;
end;
let_me_alone();
//libera recursos
M8E_FREE();
end[/code]
hay una opcion de la camara creo que set_far
debes incrementarlo para que se vea mas lejos
creo que debe ser eso..
bueno el editor bsp tiene ya un manual en español
http://3dm8ee.blogspot.com/
..
mmm setfar lo que tiene es que incrementa el campo de visión de la cámara, mi problema es que el mapa no se pinta, aunque esté pisándolo. provaste el código de arriba? verás que apareces en una zona en que el mapa no está pintado, pero hay gravedad, y es una zona que de acuerdo a la medida del jpg multiplicada por el escalado el mapa debería pintarse.
te paso un heightmap para que veas lo que pasa:
en este, deberían haber 4 paredes de montañas en los lados del mapa, pero en el terreno de bennu sólo se pintan 2, las otras dos no alcanzan a ser pintadas.
oye, exactamente qué hace cada una de estas ....., algunas ya las he utilizado, pero hay muchas que no se qué hagan exactamente
EMF_WIREFRAME=1h; //hace que el model se presente en trama de alambre
EMF_POINTCLOUD = 2h;
EMF_GOURAUD_SHADING =4h;
EMF_LIGHTING=8h; //activa que se calcule la luz en la superficie
EMF_ZBUFFER =10h;
EMF_ZWRITE_ENABLE =20h;
EMF_BACK_FACE_CULLING=40h;
EMF_FRONT_FACE_CULLING= 80h; //parece que cambia las caras que se pintan de atrás hacia adelante (yo para eso las uso)
EMF_BILINEAR_FILTER =100h;
EMF_TRILINEAR_FILTER =200h;
EMF_ANISOTROPIC_FILTER =400h;
EMF_FOG_ENABLE=800h; //activa la niebla en el cuerpo
EMF_NORMALIZE_NORMALS= 1000h;
EMF_TEXTURE_WRAP = 2000h;
EMF_ANTI_ALIASING= 4000h;
EMF_COLOR_MASK= 8000h;
EMF_COLOR_MATERIAL= 10000h;
//se pueden tener varios a la vez en un solo modelo
y todas las otras?
y de estas
EMT_SOLID =0; //render más rápido
EMT_SOLID_2_LAYER =1;
EMT_LIGHTMAP =2;
EMT_LIGHTMAP_ADD =3;
EMT_LIGHTMAP_M2 =4;
EMT_LIGHTMAP_M4 =5;
EMT_LIGHTMAP_LIGHTING =6;
EMT_LIGHTMAP_LIGHTING_M2 =7;
EMT_LIGHTMAP_LIGHTING_M4 =8;
EMT_DETAIL_MAP=9;
EMT_SPHERE_MAP = 10;
EMT_REFLECTION_2_LAYER =11; //como material reflejante
EMT_TRANSPARENT_ADD_COLOR = 12; //transparencia como flags 4
EMT_TRANSPARENT_ALPHA_CHANNEL =13; //activa transparencia alpha
EMT_TRANSPARENT_ALPHA_CHANNEL_REF =14;
EMT_TRANSPARENT_VERTEX_ALPHA =15;
EMT_TRANSPARENT_REFLECTION_2_LAYER =16; //pensé que sería reflejo con transparencia, a´si que la puse a mi agua, pero no hizo nada
EMT_NORMAL_MAP_SOLID =17;
EMT_NORMAL_MAP_TRANSPARENT_ADD_COLOR =18;
EMT_NORMAL_MAP_TRANSPARENT_VERTEX_ALPHA =19;
EMT_PARALLAX_MAP_SOLID =20;
EMT_PARALLAX_MAP_TRANSPARENT_ADD_COLOR =21;
EMT_PARALLAX_MAP_TRANSPARENT_VERTEX_ALPHA =22;
EMT_ONETEXTURE_BLEND = 23;
EMT_FORCE_32BIT =24;
por cierto, las librerías son muy rápidas, en el test 1 alcanzo hasta 2364 fps :)
gracias por las librerías :)
te paso un heightmap para que veas lo que pasa...
lo revisare..
//se pueden tener varios a la vez en un solo modelo
y todas las otras?
SI TOdas a lavez excepto el wireframe porque por
ejemplo puedes tener wireframe y transparente, seria raro?
por eso usan falso y verdadero para activarse, puedes probar
combinaciones, pero por lo general no las he usado..
Someone needs your help: http://www.bennugd.co.uk/viewtopic.php?id=20 .
1: Adding light sources doesn't seem to work.
2: How to draw dynamic text.
Una duda existencial... Aunque la Bennu3D va a cambiar, ¿Las funciones van a seguir siendo las mismas y/o con los mismos parámetros o va a haber cambios significativos?
Lo pregunto porque veo vuestros ejemplos de código y los veo calcados a la Bennu3D "anterior".
Ahora ando con Ubuntu a ver si puedo ejecutar mis juegos en Bennu3D con el Wine... No entiendo muy bien cómo funciona el Wine así que si alguien ha tenido algún contacto previo para usar Bennu3D que me diga algo please ???
QuoteUna duda existencial... Aunque la Bennu3D va a cambiar, ¿Las funciones van a seguir siendo las mismas y/o con los mismos parámetros o va a haber cambios significativos?
link dijo que intentaría dejarlas lo más parecido posible para no afectarnos en nuestros anteriores proyectos.
disculpa link, en la física cómo vas, qué tan mejor será la nueva, sería bueno que nos presumieras algunos detalles frescos sobre esto... ;)
http://3dm8ee.blogspot.com/
nueva version con las sugerencias incluidas ver basic03.prg
voy despasito pero a buen paso..
la fisica todavia no esta incluida, pronto pronto,, sed pacientes
Espero la física y la iluminación ansioso cual sabueso en época de celo :o
Lo primero que haré será probar directamente mis programas en el "antiguo" Bennu 3D a ver qué sucede y qué no xD
Quote from: l1nk3rn3l on May 26, 2009, 03:57:15 PM
http://3dm8ee.blogspot.com/
nueva version con las sugerencias incluidas ver basic03.prg
voy despasito pero a buen paso..
la fisica todavia no esta incluida, pronto pronto,, sed pacientes
ahhh, somos pasientes, pero cuando!!! ja ja ja,
la verdad me emociona mucho saber cómoo será la nueva física, estoy en periodo de examenes, pero aún así me doy mis escapaditas para deambular sobre terrenos 3d, ambientación e imaginar formas de usar la física de bennu 3d.
Tiempo de exámenes, exacto... En lugar de preparar programas y estudiar estoy programando en Bennu todo el tiempo...
¿Les dije que voy a por el tercer aprobado en asignaturas de Ingeniería Informática realizando los proyectos en Bennu? 2 de ellas con el "antiguo" Bennu 3D :o :o :o
Esperemos el nuevo Bennu 3D pero por dios, a ver si logramos centrarnos un poquito en los estudios :-[
Ánimo a todos!!!
he probado la nueva bennu3d, 40 monitos en el mapa, se ven geniales, uff (¿cuántos enemigos colocaré?) :) el terreno sigue sin pintarse completamente, es sólo en mi pc, o por qué será? (las paredes aparecen sólo en dos lados)esa función (para ver si el proceso es visible) me será muy útil para los tileos, gracias (ahora mismo estaba haciendo un programita que me perimita editar los terrenos, al menos colocar models y sacar un txt con las coordenadas, rotación y size de cada model para usar en el tileo)
muchas gracias :D
karmas + para ti amigo.
QuoteTiempo de exámenes, exacto... En lugar de preparar programas y estudiar estoy programando en Bennu todo el tiempo...
ja ja jaj ja ja
acabo de ver los juegos que vienen, están padrísimos, los bsp están geniales, las lámparas palpitan, el agua se carga y se ve genial, uff, increilble.
oye, veo que en un o de los juegos hay cámara fps, está funcionando en las actuales librerías?
increible amigo, están geniales.
hola, los mensajes se van acumulando :D
en la nueva versión get_rot_model no devuelve la rotación de los modelos... bueno la función la aplico a la cámara y no me regresa su rotación como antes lo hacía, además hago model_add_child de un modelo a la cámara y la cámara se mueve y el también, pero la camara rota yel no , y antes si lo hacía...
creo que con modelos distintos a la cámara si funciona pero con él no... je je
también si cargo un bsp con M8E_LOADQ3MAP("aepyra.bsp",0);
se ve genial, pero al escalarlo los objetos no se colocan correctamente (entidades) y tampoco se escalan.
ok mirare, creo que lo del mapa no se puede
ya que cada mapa carga un model aparte
ejemplo: lamparas, alfombras, arroyo, etc..
pero los otros bugs los mirare
ya veo, y no hay una forma de acceder a una lista de los models que cargan? digo, quizá de esta forma se pueda modificar su distancia con respecto al punto central del bsp y su tamaño a la hora de escalar el bsp.
ok, gracias.
hola amigo, creo que a la hora de crear los terrenos se invierten, como si al terreno le aplicaras un flags horizontal y vertical, ya que antes pintaba árboles en la posición de un archivo, y ahora tengo que tomar la longitud del terreno y restarle la posición del objeto para que se coloque en la posición correcta...
estaba revisando y me di cuenta que sólo la coordenada x se invierte, como si el terreno fuera pintando invirtiendo esta coordenada.
:)
la nueva función
M8E_TERRAINGETHEIGHT(mapa,posl.x,posl.z); está genial amigo, me ha permitido hacer una gravedad tan flexible como si trabajara con map_get_pixel, ahora puedo hacer que los personajes salten, vuelen, colocar objetos en puntos sin necesidad de llamar a la gravedad, conocer la altura a la que debo hacer explotar los objetos que caen, etc, en verdad, como dice Splinter, una nueva función te abre todo un mundo :)
hola amigo, encontré que al hacer m8e_modelremove() a una partícula, si está está siendo visualizada, al programa me saca, :)
LE mirare,
pero verificaste que el codigo de la particula no se usa despues de removida?ç
he tenido problemas con bullet, da errores en tiempo de ejecucion
asi que estoy optando por ODE,, en ultimas...
estoy en eso..
Todo suena muy bien xD
Prg, ¿Has tenido problemas para pasar tu juego de magia al nuevo Bennu 3D? ¿O todavía sigues con el "antiguo" Bennu 3D y simplemente has hecho pruebas distintas con el nuevo?
lo único que podría estar utilizándo las particulas es un affector que les agrego, pero se me hace raro que antes no me daba el error, y más raro que solo me suceda si están dentro del campo de visión al morir...
intentaré eliminar los affectors antes de matarlas, pero es raro porque anteriormente no recuerdo que me sucediera eso, y desde código bennu ya no uso las partículas (una vez que las mato), pues tengo bien claro que eso es como modificar datos de una id cuyo proceso no existe (bum.. pantalla de error de windows de mal acceso a memoria ;) )
Quote¿Has tenido problemas para pasar tu juego de magia al nuevo Bennu 3D?
sólo este amigo, je je je, la verdad me encanta la nueva librería y si, es con la que corro mi proyecto :)
no hay necesidad de borrar los afectores, solo que un modelo
no se puede usar despues de borrado me puedes pasar el codigo por MP
lo subes a megaupload o rapidshare y me lo compartes..
por cierto ya pude hacer funcionar el bullet , con fenix ,
es un simple ejemplo basic4.prg, que visualiza cajas callendo
al vacio presionando c.... no hay mas, ya que estos dias
estuve portando bullet hacia fenix, y aqui esta,
asi que seguire avanzando para adicionar las caracteristicas
que se requieren:
http://rapidshare.com/files/243800118/prg.rar.html
::)
:)
en el prg lanzad, linea 511, está el M8E_MODELREMOVE(p1);
actualmente hago
posl.x=posi[select].pos_m.x+get_distx(movedi+180000,10000);
posl.z=posi[select].pos_m.z+get_disty(movedi+180000,10000);
M8E_POSMODEL(arm, &posl);
M8E_POSMODEL(p1, &posl);
para dejar la partícula fuera de la vista y eliminarla sin problemas. si quitas las lineas de arriba debes ver el problema
(presiona r y selecciona la bruja, presiona click izq para disparar y mueve la mira para ver las partículas, si quieres que no se vea el problema cuando dispares volea a otro lado)
http://www.mediafire.com/?i0xoyidjyom
saludos :)
le mire y lo probe con la nueva dll y no veo errores
mira a ver..
okis, entiendo... veo que la función raycol cambió... je je je, tendreé que adaptar primero esto para que funcione antes de ver cualquier otra cosa... gracias amigo, nos vemos :)
saludos
hola, he adaptado el código a la nueva versión de las librerias y tienes razón, el error ya no se presenta.
ahora con raycol retornando el modelo con el que colisiona, cuál es la mejor forma de identificar el proceso al que pertenece el modelo?, se me ocurre un while y comparar los models de cada proceso existente hasta termiar, existeste alguna otra forma?
gracias, las librerías van geniales amigo, a ver si puedo avanzar más en el jueguito :) un saludo
me alegra,
bueno para la comparacion que mejor que usar varibales local,
asi como cada enemigo tiene su proceso ya lo puedes comparar
mas facil ,
process enemigo()
local
modelo, , ,,,,,;
begin
end;
¿No sería mejor usar PUBLIC?
No tengo del todo clara la diferencia, pero LOCAL modifica todos los ID de todos los procesos añadiendo ese campo, cosa que no interesa para procesos que no son gráficos por ejemplo.
Con PUBLIC tengo una experiencia bastante mínima, lo usé en el Animalicos por sugerencia de Splinter, pero me gustó, me parece uno de los aspectos más gloriosos del lenguajito xD
Yo estoy de acuerdo con windgate, no es por incordiar. A mi tampoco me convence lo de local, ¿¿¿hay alguna ventaja???
las publics son propias de los procesos no de las dlls.
(creo que me enganche mal... pero por las dudas dejo por constancia del comentario)
un avance de la integracion del motor de fisica
...
http://www.megaupload.com/?d=1XPZE1E0
incluye ahora colisiones con el terreno..
no disponible aun en bennu
ya que estoy haciendo el prototipo con gcc primero
pronto abra un demo en bennu con estos ejemplos...
...
Maldita, sea tengo los dientes jodidamente largos con Bennu3D pero mi maldito Ubuntu no me deja hacer nada, he probado con Wine por recomendación de Splinter y tampoco, os explico:
Con Wine accedo a su C:/ y llego al .bat que se encarga de ejecutar el comando: bgdi TEST31.dcb sobre uno de los Bennu3D packs de 3dm8ee.blogspot.com
Pero Wine ni tan siquiera me ofrece la opción de "ejecutar" ese .bat, sólo me deja "ejecutar" .exe.
¿Cómo demonios puedo ejecutar cualquier cosa de Bennu3D con Wine? Que alguien me ayude por favor, estoy a punto de perder el juicio muhahahaha :o
En serio, cualquier ayuda mínima me servirá de muchísimo.
wine cmd
y luego ahi ejecutas el bat
Gracias Splinter, no conocía "wine cmd"
Bien, he logrado ejecutar un comando "bgdi TEST01.dcb" entre otros para ejecutar los .dcb ya compilados, pero la terminal me saca este mensaje y las aplicaciones se me cierran al instante:
H:\Videojuegos\Bennu Foro\Bennu3D 02.05.09\DLL>bgdi ../TEST01.dcb //ESTE COMANDO LO INTRODUZCO YO EN LA TERMINAL
fixme:keyboard:X11DRV_LoadKeyboardLayout L"00000409", 0080: stub! //A PARTIR DE AQUÍ SON LOS MENSAJES QUE ME SALEN POR TERMINAL
fixme:keyboard:X11DRV_LoadKeyboardLayout L"040a040a", 0001: stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x60f3c8,0x00000000), stub!
Irrlicht Engine version 1.6 SVN
Microsoft Windows XP Professional Service Pack 2 (Build 2600)
Using renderer: Direct3D 8.1
Direct3D HAL Display 7.15.10.16921
fixme:d3d:WineD3D_ChoosePixelFormat Add OpenGL context recreation support to SetDepthStencilSurface
fixme:d3d8:ValidateVertexShader (0x8f0080 (nil) (nil) 1 0x60eda0): stub
fixme:d3d8:ValidatePixelShader (0x8f0130 (nil) 1 0x60edf0): stub
fixme:d3d8:ValidateVertexShader (0x8f1d40 (nil) (nil) 1 0x60eda0): stub
fixme:d3d8:ValidatePixelShader (0x8f0180 (nil) 1 0x60edf0): stub
Loaded texture: H:\Videojuegos\Bennu Foro\Bennu3D 02.05.09\media\Luigi.pcx
Loaded mesh: media\mario.md2
Supongo que todos esos fixme son errores...
Ciertamente anduve instalando diversas modificaciones de Wine como Wine-Doors sin éxito alguno, ¿Puede ser que sea que tengo el Wine semi-destruido y debería desinstalarlo completamente y reinstalarlo desde 0 o puede ser otra cosa?
En cualquier caso gracias Splinter, ya ha sido un avance, sigo investigando y probando.
FUNCIONAAAAA, FUNCIONAAAAAAAAAAAAAAAAAAAAAAAAAA!!!!!!!!!!!!!
Bien, describo el proceso que he seguido, un método sencillo y eficaz (Que no eficiente) para gilipollas (Como yo xD):
1. Con Wine instalado en Ubuntu, abres una terminal y pones el comando "wine cmd"
2. Accedes a la unidad C: virtual que genera Wine, esto se hace poniendo el comando "C:" como en MSDOS, vamos...
3. En C:/ debes tener el instalador del Bennupack 1.6, ejecutas ese .exe con el comando "C:/bennupack.1.6" en mi caso y lo instalas con total normalidad y sin ningún tipo de vergüenza.
4. Una vez instalado el Bennupack 1.6, pones el comando "C:/devBennu/ide/notepad" para ejecutar el entorno Notepad++ que viene con el Bennupack
5. Desde el Notepad++ abres el fuente.prg que quieres ejecutar, ya sea de Bennu3D o de Bennu2D y pulsas la tecla F6 para que se compile y ejecute la cosa.
Siguiendo esos pasos la cosa debería funcionar perfectamente y deberías verlo funcionar con cara de imbécil y la boca abierta. ¿Tienes algún problema? Yo también lo tuve. La solución: El fuente.prg debe de encontrarse en una ruta que NO tenga ningún espacio.
Por ejemplo, si el fuente.prg se encuentra en la carpeta "Bennu 3D" no te funcionará, renombra esa carpeta a "Bennu3D" SIN ESPACIOS y listos, ahora ya puedes repetir el mismo proceso y disfrutar. Si tuvieses algún problema adicional postéalo, como yo xD
Me se cae la baba... Gracias Splinter, te voy a dar un Karma que ya toca.
Por fin vuelvo a sentirme una criatura tridimensional, con mi altura, anchura y gordura!!!
EDIT: ¿Y si instalo Ages of Empires II: Conquerors o Warcraft III siguiendo el mismo método... Funcionaría? Lo pregunto mientras me estoy descargando/copiando ambos para hacer la prueba... Si alguien sabe algo que lo diga, demasiadas emociones fuertes para este fin de semana, me voy a dormir...
EDIT 2: Aquí una captura de mi último trabajo de iluminación + física 3D funcionando en Ubuntu
(http://www.fileden.com/files/2008/9/22/2109820/Bennu3D%20en%20Ubuntu.png)
yo te voy a alegrar mas el dia...
1) esos mensajes son normales, no te preocupes por ellos.
2) para nombres con espacio (desde linea de comando) tenes que encerrar el path completo entre comillas dobles, por ejemplo.
"c:\Bennu 3D\bgdi.exe" "mi juego.dcb"
o
"c:\Bennu 3D\bgdi.exe" juego.dcb
si estas desde la linea de comandos de linux (terminal)
es
wine c:/Bennu\ 3D/bgdi.exe juego.dcb
la "\" en linux es escapeo de caracteres, en windows es delimitado de paths...
¿Escapeo de caracteres te refieres a referirte explícitamente a un espacio cuando pones "\ " ? Recuerdo que en C con algunos caracteres especiales también se ponía ese caracter delante, si no no aparecían o el compilador lloriqueaba...
Si es así mil gracias, la verdad es que hasta ahora, cada vez que veía un comando Linux que combinaba / y \ me sonaba a chino mandarín :o
en unix la barra invertida + espacio significa espacio y no separador de parametro.
Aaaah, fíjate tú que curioso...
hola.
me bajé el editor de irrlicht (irrlicht-1.5), hice algunas pruebas y todo está genial, pero aquí también se presenta el hecho de que el terreno invierte la coordenada x. el ejemplo que viene en el editor contiene unas casas y árboles, y al correrlo en bennu 3d los árboles y casas aparecen mal colocados, esto por lo que te comento, ya que en el editor todo está bien.... je je je, me doy cuenta que en las librerías nuevas esto ya se solucionó, sólo que los visualizaba con el visualizador del editor y este no tiene las librerías nuevas, pero ya lo cambié y parece que ya va bien.
...
Está genial que cargue las escenas (irr) con animadores, partículas, modelos, terrenos, sólo faltan los sonidos... je je je, pero desde bennu es fácil.
gracias por las librerías, seguiré con esto, que quiero ver si puedo hacer mis mapas con este editor para posicionar fácilmente objetos y crear escenas rápidamente...
no he podido probar la física (no soy muy diestro compilando c), pero esperaré a que nos tengas otra versión de las librerías...
saludos!
wow wow wow!!!
se ve genial, sin lugar a dudas usaré el editor... wow!!!
;D os tengo una sorpresa, estoy testeando la libreria y mi intencion es usarla para las mazmorras o instancias del juego con lo cual mezcla 2D/3D y fuera de ellas entorno ciudades y demas 2D
Hice en su día una prueba de pasar de 2D a 3D con el "antiguo" Bennu3D. Iba bien pero no podía evitar un parpadeo siempre que cambiaba el modo de vídeo.
Ahora mismo tengo un cacao monumental con las versiones, ¿Dónde puedo descargar las últimas DLL y documentación del Bennu 3D junto con algún ejemplo? Así me actualizo de una vez y empiezo a migrar alguno de mis juegos...
Algún enlace de descarga directa con todo lo necesario please...
QuoteSonreir os tengo una sorpresa, estoy testeando la libreria y mi intencion es usarla para las mazmorras o instancias del juego con lo cual mezcla 2D/3D y fuera de ellas entorno ciudades y demas 2D
genial amigo, a ver cuándo podemos ver un poco del avance :)
QuoteAlgún enlace de descarga directa con todo lo necesario please...
mmm,creo que la nueva versión es esta:
http://rapidshare.com/files/243800118/prg.rar.html (http://rapidshare.com/files/243800118/prg.rar.html)
a propósito, link, si estás por aquí, el test 15 creo que no funciona, y el EMF_BACK_FACE_CULLING creo que tampoco funciona (lo aplico a modelos y sus caras internas no se ven).
También, cuando escalo algunos modelos, y los veo desde cierto ángulo: desaparecen, no se qué está pasando, pero dejo de escalarlos y el efecto se deja de ver
Quote from: Prg on July 13, 2009, 03:43:10 PM
QuoteSonreir os tengo una sorpresa, estoy testeando la libreria y mi intencion es usarla para las mazmorras o instancias del juego con lo cual mezcla 2D/3D y fuera de ellas entorno ciudades y demas 2D
genial amigo, a ver cuándo podemos ver un poco del avance :)
puede que enseñe de esto una demo tecnica
Descargando esa última versión! Veamos cómo ha cambiado la cosa!
EDIT: Veo que data de Junio de 2009 así que es lo que buscaba, también veo que mantiene Irrlicht.DLL y Bennu3D.DLL ¿No se iba a cambiar Irrlicht por Bullet?
>:(
bullet ya corre super bien...
regresa la nueva version con fisica ya medio integrada.. basic05 y 04.prg
http://3dm8ee.blogspot.com/
ver cambios.txt , la velocidad es aceptable ..
pronto estara disponible para linux nativamente , cuando termine el port de bullet..
Disponible para Linux???
Eso es Karma++ y un :-* en el diodeno sesuarl... :o
EDIT: Me he descargado el pack de Modelos 3D de Quake de tu repositorio, y tengo este error al descomprimir:
Extracting quake2/q2mdl-chastity.zip
Extracting quake2/q2mdl-chastitymarks.zip CRC Failed
Extracting quake2/q2mdl-cheetor2.zip
Lógicamente puedo extraer la mayoría de los demás .zip, pero te lo aviso porque algunos usuarios pensarán que está totalmente corrupto y se quedarán sin apreciar semejante aporte de modelos amigo...
genial, karma más. y probando la nueva versión.
por cierto, amigo. cómo le hago, quiero lanzar unas flechas pero tengo muchos problemas para darle los ángulos que son.
avanzan correctamente pero a la hora de girarlas para que tomen el aspecto de inclinación correcto no puedo, les doy el giro del eje y, pero para darles la inclinación en los ejes x y z no puedo, y ¡es que al girar en y la inclinación de x y z cambian, cóm le hago... alguien sabe? link, qué me recomiendas?
pd, el problema no es el avance, sino el giro del model. gracias
pd. en el basic 4 hago c y no aparecen más cubitos :'( (entonces ya puedo usar la física en mis terrenos para árboles y eso??)... el basic 5 está genial,
en el test 15 sigo sin ver nada, excepto un fondo gris y las letras de las imágenes por segundo
El giro es en términos absolutos, así que modificar en cualquier eje debería quedar relativo al escenario (Que tiene posición fija)... Siempre y cuando no estés rotando el escenario... ???
A no ser que haya algún pequeño bug, las ROTATE son funciones básicas.
....
ya entiendo... ahora lo que no entiendo es porqué me está fallando tanto...
quizá sea a la hora de obtener el ángulo mediante el coseno director... bueno, revisaré eso... gracias. :)
Mmmmhhhh, si necesitas hacer uso de alguna función trigonométrica para cálculo de ángulos en 3D te recomendaría que la encapsules en algún .prg separado, ya que sin duda volverás a utilizarla más adelante xD
En cualquier caso, ¿Esa función no está ya en la function list de Bennu 3D? Generalmente hay llamadas para evitar hacer operaciones de ese tipo...
:) ok,
quizá sea la opción de autoapuntar pero no se si ya esté, la última vez que vi los cambios estaba pensado hacerse pero todabvía no estaba implementada. de todos modos lo de apuntar ya está, y lo de los ángulos lo hare ahora a ver si lo puedo hacer... quizá el model no esté orientado adecuadamente... tend´re que ver eso. gracias y te doy un karma amigo :) saludos
Gracias por el Karma y viva Mexico Prg!!!
Para el temario Bennu que estoy preparando tendré que preparar una definición concienzuda de funciones, incluidas las trigonométricas. Estás avanzando muchísimo así que tendré que contar contigo para que supervises alguna cosa.
Tantas cosas por hacer...
¿Tú manejabas editores de mapas? Hace un tiempo que necesito un mapa con forma de campo de fútbol, sin más misterio que el campo y "algo que sirva de portería" para el proyecto 3D que ahora mismo tengo paralizado en espera de un nuevo Bennu3D estable. Pero creo que es momento de empezar porque veo que ya funcionan la mayoría de las cosas, y puede servir para ayudar a testear lo que hay.
¿Alguna sugerencia al respecto?
Alguno de los programas de los que habéis hablado los he descargado y probado... Pero me parecen un infierno :-\
si, manejo algunos, si gustas te puedo ayudar a hacerlo...
dame un dibujo de cómo lo quieres, y las texturas y yo lo hago.
para hacerlo se puede usar blender, milkshape, algún editor de maps o incluso el irredit (editor de irrilch que las librerías trabjan de forma nativa y que puede usar incluso emisores de partículas y luces [ya lo probé está genial, pronto lo soportará el editor fpg para visualizarlo... actualmente no lo hace por un pequeño bug en su carga]), ya solo es cuestión al final de escalarlo lo necesario y tilear texturas...
si quieres que lo haga mándame las texturas y un dibujo de él y listo, yo lo hago... saludos :)
Tengo unas texturas para el césped que dan verdadera lástima, voy a probar el Irredit con ellas en primer lugar a ver qué me sale, si me doy por vencido te informo.
Maldita maldición, Irredit sólo disponible para XP y yo sólo tengo Ubuntu... Estoy en vías de poner Ubuntu en una partición y XP en otra, aunque tengo verdadero pánico a ese imán de virus de Microsoft.
Aquí te dejo un zip con una textura para el cesped y otra textura para las paredes y las porterías, me he ocupado de que las texturas sean "cíclicas", esto es, que puedan repetirse horizontal y verticalmente encajando de forma correcta.
También un dibujo/boceto de cómo me gustaría el campo de fútbol, es una simple caja de zapatos cerrada, con 2 porterías. El juego no va a ser realista en absoluto:
http://www.mediafire.com/?wwzom1dndmh
Gracias Prg, me harías un gran favor y quizá a partir del mapa que me devuelvas me sienta más capaz de manejar el Irredit cuando me ponga un XP.
No te preocupes de la iluminación, con el modelo de escenario es más que suficiente por ahora :o
recibido.
cuando lo tenga te lo mando :)
disculpa
le podría hacer algunas modificaciones, para que se va más bonita?
guapa, guapa, la imagen B/N 3d esa de la caja con los dos palitroques a mano alzada como portería ;D
emmm, bien, este es un boceto, si te gusta modifico lo que no te gusta...
saludos
Pd. usa transparent alpha channel ref para que se vea correctamente ya que usa una textura con alpha :) (de lo contrario se verá sólo blanco en lugar de la textura con pasto. cambién las texturas porque no eran muy adecuadas, pero si no te gustan cambia el nombre de las nuevas por las que aparecen ahí y se debe ver bien)
PD: ya acomodé las flechas... gracias a tu consejo amigo :)
Veamos esa cancha. Por supuesto, podías cambiar lo que quieras xD
Me alegro de que te hayan funcionado bien las flechas ;D
EDIT: Tengo la cancha ya metida en mi juego, pero al arrancar lo veo todo blanco y negro, es muy extraño... Te dejo la descarga del juego completo aquí: http://www.mediafire.com/?jhynmjgq3yy
En escenarios.prg es donde me dedico a cargar el mapa, uso simplemente:
ID_mapa=M8E_LOADMODELEX("maps/cancha.ms3d",255);
m8e_modelscale(ID_mapa,ESCALA_ESCENARIO,ESCALA_ESCENARIO,ESCALA_ESCENARIO);
RETURN ID_mapa;
Así es como cargaba antes con mapas .bsp y no tenía problema. ¿Alguna sugerencia Prg?
hola. el problema era que no ponias luz al ambiente, y como est un ms3d la luz si lo afecta, también agregué los efectos necesarios y algunas cosas más... lo único que me lamenta es no poder aumentar el espacio del mejor render ya que a cierta distancia las lineas blancas de la cancha de borran... pero eso no se verá una vez la cámara deje de flotar... o quizá si no escalamos el mapa... no estoy seguro...
bueno, pues el resultado fue satisfactorio, agregué un cielo, una luz y pues se ve genial... me gusta... un saludo...
cancelé la presentación, pero sólo comente la linea que la llama. je ej
http://www.mediafire.com/download.php?2tuj42nktze
Karma :-*
Está perfecto, mejor de lo que esperaba xD
En cualquier caso probablemente cambie las texturas, no sé si te comenté que no se trata de un juego de fútbol normal, va a haber muchísimas partículas a iluminación en tiempo real, prácticamente un juego de combate en el que al final se cuentan los "goles". Por eso no me interesa un campo de fútbol realista xD
se me olvido decir que inclui un manual para usar el scketup con
bennu3d esta en la misma pagina, ideal para hacer mapas..
el ejemplo de basic05 el mapa esta en ese programa
:) si lo vi amigo, aunque todavía no lo leo... je je je
la nueva versión de las librerías se ve genial... ya quiero probarlo con mi juego... aunque ahorita estoy dando los úlitmos toques en cuanto al manejo de los personajes principales...
Quote
Karma Beso
Está perfecto, mejor de lo que esperaba xD
En cualquier caso probablemente cambie las texturas, no sé si te comenté que no se trata de un juego de fútbol normal, va a haber muchísimas partículas a iluminación en tiempo real, prácticamente un juego de combate en el que al final se cuentan los "goles". Por eso no me interesa un campo de fútbol realista xD
je je, para hacer el cambio sólo sustituye la nueva textura por la antigua, esto es ponlas en el mismo lugar y con los mismos nombres... y listo.
este fin de semana incluire las funciones de autoapuntado y otras
lo prometi hace meses m pero como he estado metido en otras
cosas..
bueno como buen politico , les prometo funciones de apuntado
para la semana que viene ;D
ja ja ja...
ok
gracias amigo.
Quoteeste fin de semana incluire las funciones de autoapuntado y otras
mm y cuales serán las otras?
ya estoy emosionado... a ver si pronto (un mes quizá) puedo mostrarles un poco más de mi juego para ver qué les parece...
una pregunta:
en soporte de animacion con huesos que es algo que falta por hacer, en esto tendremos alguna funcion que nos permita conocoer la posición de un joint de determinado model?
gracias y saludos
Juas, los bones apenas los he tratado, casi todo a nivel teórico, pero son la bomba!
Quotebueno como buen politico , les prometo funciones de apuntado
para la semana que viene :)
je je... (ya quería decir esto)... ya estamos en la semana... ¡funciones de autoapuntado esta semana!... o link es muy buen político... ;D
he estado mirando lo del autoapuntado y ya casi esta listo solo
falta las funciones de direccion , como mover cosas hacia un punto(proyectiles)
(http://img67.imageshack.us/img67/1674/scr1.jpg)
:)
genial, yo estaba usando esto, y para los ángulos un poquitín más a la hora de rotar :)
[code language="bennu"]function get_angle3d(_pos3d an1, _pos3d an2, _pos3d * res); // rellena un pos3d con los cosenos directores
private
float m;
begin
res.x=an1.x-an2.x; res.y=an1.y-an2.y; res.z=an1.z-an2.z;
m=sqrt(res.x*res.x+res.y*res.y+res.z*res.z);
res.x/=m;
res.y/=m;
res.z/=m;
end[/code]
ahora me estoy centrando en las colisiones, el único método (sin contar las distancias), es usando raycol y boundingbox vd? ¿no hay colisiones boundig-bounding, o algo así? je je
saludos
No se si ya lo han hecho y yo soy un despistado, pero creo que va siendo hora de que armen algun tutorial sobre bennu3d... y el mundo 3d...
Yo estoy en ello Splinter, pero todavía no he terminado la parte de 2D...
EDIT:
Ya contacté con Prg ya que necesitaré contar con su ayuda y supervisión, pienso concentrarlo en 10 temas en un principio, la parte básica: Carga de modelos y mapas, posicionamiento, física e iluminación.
La parte más avanzada como tileo, agua, interfaz... Tendrán que venir en algún temario posterior, por supuesto que no lo descarto, pero personalmente no tengo todavía experiencia con esa parte.
Para que os hagáis una idea, acabo de empezar con el tema 15 (Todavía de 2D), y la idea es empezar con 3D en el tema 40... Tengo que meter el turbo o bien ponerme en paralelo con la parte de 3D, aunque ahora ando bastante busy la verdad...
Quote from: Windgate on July 31, 2009, 10:57:32 AM
Yo estoy en ello Splinter, pero todavía no he terminado la parte de 2D...
EDIT:
Ya contacté con Prg ya que necesitaré contar con su ayuda y supervisión, pienso concentrarlo en 10 temas en un principio, la parte básica: Carga de modelos y mapas, posicionamiento, física e iluminación.
La parte más avanzada como tileo, agua, interfaz... Tendrán que venir en algún temario posterior, por supuesto que no lo descarto, pero personalmente no tengo todavía experiencia con esa parte.
Para que os hagáis una idea, acabo de empezar con el tema 15 (Todavía de 2D), y la idea es empezar con 3D en el tema 40... Tengo que meter el turbo o bien ponerme en paralelo con la parte de 3D, aunque ahora ando bastante busy la verdad...
tu puedes ;D ;D ;D
QuoteYo estoy en ello Splinter, pero todavía no he terminado la parte de 2D...
EDIT:
Ya contacté con Prg ya que necesitaré contar con su ayuda y supervisión, pienso concentrarlo en 10 temas en un principio, la parte básica: Carga de modelos y mapas, posicionamiento, física e iluminación.
La parte más avanzada como tileo, agua, interfaz... Tendrán que venir en algún temario posterior, por supuesto que no lo descarto, pero personalmente no tengo todavía experiencia con esa parte.
Para que os hagáis una idea, acabo de empezar con el tema 15 (Todavía de 2D), y la idea es empezar con 3D en el tema 40... Tengo que meter el turbo o bien ponerme en paralelo con la parte de 3D, aunque ahora ando bastante busy la verdad...
para lo que pueda hacer amigo, encantado... tu solo dilo :)
Prg, cuento contigo como el 50% de lo necesario para el temario de 3D, aunque recuerda, será 100% básico, nada que ver con tu juego de magia, esas cosas si acaso para la "expansión" del temario, pero tiempo al tiempo.
hola
cómo descargo una textura cargada con M8E_LOADTEXTURE de memoria?
gracias :)
Vaya, pues ahora que lo dices no recuerdo que hubiese instrucciones de descarga, imagino que ya habrás probado con M8E_UNLOADTEXTURE a ver si sonaba la flauta :P
¿Por qué la quieres descargar? Yo soy de los que tienen la manía (En 2D) de cargar las cosas y luego forzar el exit() sin molestarme en hacer unload sobre fpgs, fuentes, etc.
¿Qué problemas significativos puede traer el hecho de NO descargar los ficheros cargados?
es que algunos procesos cargan su textura, y al morir esta queda en memoria (supongo) así que me queda un monton de memoria ocupada, y deseo en el onexit descargarlas tal como hago con sus modelos
también:
un modelo como el ms3d que carga sus propias texturas... las descarga al hacerle modelremove.
lo que pasa es que al eliminar la escena todos los elementos cargados se descargan, pero en el caso de estas texturas se necesita eliminarlas conforme ya no se necesite para que no consuman memoria.
bueno aqui un avance , de disparar objetos , mover personajes
todo con el motor de fisica...
http://www.megaupload.com/?d=Q4J7TG3S
nada funcional , solo EXE
(http://img220.imageshack.us/img220/3171/dibujojzh.jpg)
descargando :)
disculpa, el test 15 de la versión actual no me funciona
por qué sera?
Hermosas demostraciones, lo veo estupendo y en principio no tiene nada que envidiar al anterior Bennu 3D.
No sé si viste mi ejemplo de física e iluminación, en él cargaba una matriz tridimensional de 10x10x10 columnas que caían y se colapsaban unas con otras. El rendimiento me dejó abrumado y me gustaría saber si el nuevo motor de física es capaz de obtener un rendimiento similar, mayor, menor... Simplemente comprobar las diferencias en ese sentido.
Danos ese motor para poder usarlo, necesitamos tu cerebro, tu jugoso cerebro, aaahhh :-X
;D
bueno el anterior motor era newton ahora es Bullet, tocaria hacer el mismo ejemplo en el nuevo motor..
prg:
* cuaNDO descargas la escena las texturas se descargan.
* si el test15 es shaders o sombreadores , como lo comente antes los efectos por shaders,
estaran ya predefinidos , me refiero a que si quieres efecto de lava, habra una funcion como
shader(effect_lava)
no como antes que lo podias crear desde cero, pienso que esto dificulta al programador nuevo
asi que vendran dentro del motor, no se podran adicionar efectos desde afuera.. como antes
Quote* cuaNDO descargas la escena las texturas se descargan.
esto lo se, pero no hay forma de descargarlas antes?... individualmente? lo que pasa es que algunos procesos como los disparos llaman cada uno su textura y al final tengo un montón de texturas que son la misma cargadas y sin uso. Si no se puede pues cargo globales, pero necesito estar seguro para no trabajar de más cambiando el sistema :)
Quote* si el test15 es shaders o sombreadores , como lo comente antes los efectos por shaders,
estaran ya predefinidos , me refiero a que si quieres efecto de lava, habra una funcion como
shader(effect_lava)
ahhh :) bueno, lo que pasa es que quería hacer un shadder de hielo, pero si ya van a venir hecho pues mejor
saludos y gracias.
Maldita sea, no veo el momento de ponerme a tope con el 3D y mira que lo he dicho veces... :-[
Para el tema que dices de que cada proceso carga la misma textura una y otra vez lo veo bastante ineficiente, ¿Y si las pasas como parámetro? ¿O las haces parte PUBLIC de cada proceso o algo similar?
Con lo de PUBLIC bastaría con que el "proceso generador de los disparos" cargase la textura 1 sola vez en una variable PRIVATE y luego la pasase a la variable PUBLIC de cada disparo.
Claro, que te lo digo de palabra y verbalmente todo es muy bonito de decir, pero debería funcionar :o
Mmmhhh... Shaders ya hechos... Algún día alguien echará en falta alguno, pero bueno, cuestión de incluirlos en el motor supongo... ¿Cuáles hay? Cuéntanos más l1kn3rn3l ;)
QuotePara el tema que dices de que cada proceso carga la misma textura una y otra vez lo veo bastante ineficiente
es verdad... por comodidad lo tenía así,... bueno, quizá tome la idea de publics, teniendo en cuenta que no todo el tiempo las usaré, sólo cuando el protagonista las necesite y esto es si está en la historia en ese momento...
bueno, saludos y gracias por el consejo.
para el que no este enterado aqui van los avances del motor ,
especificamente el de fisica:
http://irrlicht.sourceforge.net/phpBB2/viewtopic.php?t=34700
Quote from: l1nk3rn3l on August 24, 2009, 09:09:05 PM
para el que no este enterado aqui van los avances del motor ,
especificamente el de fisica:
http://irrlicht.sourceforge.net/phpBB2/viewtopic.php?t=34700
karma up +1 ;D
¡Felicidades!
Es muy interesante ver cómo avanza, ánimo.
proyecto survive
hecho en bennu desde francia me parecio curioso enseñarlo
http://div.france.online.fr/index.php?mod=forum&ac=voir&ref=0&cat=10&id=299
se ve barbaro!
¿Bennu? al leer M8EE y verlo en divsite pensé que estaba hecho en Fenix.
Pruebo tan pocas cosas últimamente.
http://bennupack.bennugd.org/
disponible los fuentes de la libreria para el que desee pasarlo a linux
bueno, por el momento estoy terminando la fisica de carros, de caracteres y colisiones
de grupos, la IA y demas los progresos pueden verse en el foro de irrlicht,
la libreria actualmente solo tiene fisica sobre cuerpos rigidos, la otra fisica
se esta terminando y puede verse aqui:
http://irrlicht.sourceforge.net/phpBB2/viewtopic.php?t=34700
..
Física de caracteres... Suena curioso, ¿Te refieres a que el motor soportará la generación de un modelo 3D con forma de caracter de alguna fuente de texto cargada y así podrás ahorrarte tener que crear el modelo de cada caracter para poder aplicarle física? ::)
Que bien suena todo... signifique lo que signifique ;D
No, en serio, hay ganas de meterle mano a las 3D, la cosa pinta genial, y parece que nos vas a quitar mucho trabajo al programar (gracias).
Si encima se puede portar y ciertas consolas lo pueden mover hay que haceros un monumento.
(Deberíamos diseñar una plaza virtual y poner dichas estatuas en la web de Bennu :D)
Supongo que se refiere a "ragdoll physics".
No tengo mucha idea, pero aquí lo explican con algo de detalle:
http://blog.wolfire.com/2009/05/ragdoll-physics-part-one/
¿Bennu3D es/será portable a consolas? Por lo poco que sé sobre la portabilidad a Wii, por ejemplo, el soporte es limitado.
QuoteSupongo que se refiere a "ragdoll physics".
No tengo mucha idea, pero aquí lo explican con algo de detalle:
http://blog.wolfire.com/2009/05/ragdoll-physics-part-one/
Interesante... He jugado a Dark Messiah multijugador, y al matar a los muñequitos es gracioso ver como caen rodando por las escaleras articulando sus bones de forma muy muy muy realista, fue uno de los detalles que más me impactó y no esperaba poder encontrarme semejante exquisitez en Bennu xD
Intentar compilar la librería desde Linux me resulta en:
[code language="bash"]
joseba@rescubuntu:3DM8E$ make
g++ -c 3DM8E.cpp -o obj/3DM8E.o `pkg-config --cflags sdl bennugd-core` -I`pwd` -I ../irrlicht-1.5.1/include -Ibullet/bullet/ -Ibullet/wrapper/ -DBUILDING_DLL=1 -D MY3DM8E_EXPORTS -D_IRR_STATIC_LIB_ -march=pentiumpro -mmmx
In file included from 3DM8E.cpp:124:
q3shaders.h: In function 'int LOAD_Q3SHADERS(char*, int)':
q3shaders.h:47: error: expected initializer before '*' token
q3shaders.h:48: error: 'shader' was not declared in this scope
q3shaders.h:60: error: 'shader' was not declared in this scope
q3shaders.h: In function 'int FindQ3Item(irr::scene::IQ3LevelMesh*, char*, char*, char*, int)':
q3shaders.h:122: error: invalid initialization of reference of type 'irr::scene::quake3::tQ3EntityList&' from expression of type 'const irr::core::array<irr::scene::quake3::SShader, irr::core::irrAllocator<irr::scene::quake3::SShader> >'
q3shaders.h:123: error: 'IEntity' is not a member of 'irr::scene::quake3'
q3shaders.h:123: error: expected `;' before 'search1'
q3shaders.h:124: error: 'search1' was not declared in this scope
3DM8E.cpp: At global scope:
3DM8E.cpp:146: warning: deprecated conversion from string constant to 'char*'
3DM8E.cpp:160: warning: deprecated conversion from string constant to 'char*'
3DM8E.cpp:160: warning: deprecated conversion from string constant to 'char*'
3DM8E.cpp:160: warning: deprecated conversion from string constant to 'char*'
3DM8E.cpp:160: warning: deprecated conversion from string constant to 'char*'
3DM8E.cpp:160: warning: deprecated conversion from string constant to 'char*'
3DM8E.cpp:160: warning: deprecated conversion from string constant to 'char*'
../irrlicht-1.5.1/include/ISceneNode.h: In function 'int fx_CargarVariables(INSTANCE*, int*)':
../irrlicht-1.5.1/include/ISceneNode.h:762: error: 'irr::core::vector3df irr::scene::ISceneNode::RelativeTranslation' is protected
3DM8E.cpp:173: error: within this context
../irrlicht-1.5.1/include/ISceneNode.h:762: error: 'irr::core::vector3df irr::scene::ISceneNode::RelativeTranslation' is protected
3DM8E.cpp:174: error: within this context
../irrlicht-1.5.1/include/ISceneNode.h:762: error: 'irr::core::vector3df irr::scene::ISceneNode::RelativeTranslation' is protected
3DM8E.cpp:175: error: within this context
../irrlicht-1.5.1/include/ISceneNode.h:765: error: 'irr::core::vector3df irr::scene::ISceneNode::RelativeRotation' is protected
3DM8E.cpp:176: error: within this context
../irrlicht-1.5.1/include/ISceneNode.h:765: error: 'irr::core::vector3df irr::scene::ISceneNode::RelativeRotation' is protected
3DM8E.cpp:177: error: within this context
../irrlicht-1.5.1/include/ISceneNode.h:765: error: 'irr::core::vector3df irr::scene::ISceneNode::RelativeRotation' is protected
3DM8E.cpp:178: error: within this context
../irrlicht-1.5.1/include/ISceneNode.h:768: error: 'irr::core::vector3df irr::scene::ISceneNode::RelativeScale' is protected
3DM8E.cpp:179: error: within this context
../irrlicht-1.5.1/include/ISceneNode.h:768: error: 'irr::core::vector3df irr::scene::ISceneNode::RelativeScale' is protected
3DM8E.cpp:180: error: within this context
../irrlicht-1.5.1/include/ISceneNode.h:768: error: 'irr::core::vector3df irr::scene::ISceneNode::RelativeScale' is protected
3DM8E.cpp:181: error: within this context
3DM8E.cpp: In function 'int fx_Iniciar_A(INSTANCE*, int*)':
3DM8E.cpp:282: error: 'struct SDL_SysWMinfo' has no member named 'window'
3DM8E.cpp: In function 'int fx_CambiarNiebla(INSTANCE*, int*)':
3DM8E.cpp:504: error: 'EFT_FOG_LINEAR' was not declared in this scope
3DM8E.cpp: In function 'int fx_ColisionRayo(INSTANCE*, int*)':
3DM8E.cpp:861: error: 'class irr::scene::ISceneCollisionManager' has no member named 'getSceneNodeAndCollisionPointFromRay'
3DM8E.cpp: In function 'int fx_ObtenerModelodesdeCamara(INSTANCE*, int*)':
3DM8E.cpp:914: error: 'class irr::scene::ISceneCollisionManager' has no member named 'getSceneNodeAndCollisionPointFromRay'
3DM8E.cpp: In function 'int fx_ObtenerModelodesdePosPantalla(INSTANCE*, int*)':
3DM8E.cpp:937: error: 'class irr::scene::ISceneCollisionManager' has no member named 'getSceneNodeAndCollisionPointFromRay'
3DM8E.cpp: At global scope:
3DM8E.cpp:2713: warning: deprecated conversion from string constant to 'char*'
3DM8E.cpp:2713: warning: deprecated conversion from string constant to 'char*'
<<Un monton de esas lineas mas>>
3DM8E.cpp:2726: warning: deprecated conversion from string constant to 'char*'
3DM8E.cpp:2726: warning: deprecated conversion from string constant to 'char*'
make: *** [obj/3DM8E.o] Error 1
[/code]
¿Ideas? Me he basado en el Makefile.win que venía con el código, no sé si es lo mejor.
pregunta la irrlicht.o se genera correctamente?
o el problema es la compilacion de
bennu3d
Perdón, que no he sido muy explícito.
La librería irrlicht la compilo más o menos sin problemas. Me genera un fichero ".a" que meto en el directorio en cuestión.
Esa línea me la da al intentar compilar el primer fichero. Pero realmente desconozco el orden en que se deben compilar... No tengo el visual studio a mano y me el basado en el Makefile.win que venía junto con el código.
YA ENTENDI , deberias usar el codeblocks para linux , es un excelente editor ,
y usar el proyecto de codeblocks que ya existe..
http://www.codeblocks.org/downloads/5
¡Ah! vale.
Lo intentaré. Muchas gracias :) Pensaba que el proyecto era de Visual Studio y me liaba. Cuando saque un ratillo, perobaré a ver qué tal.
Hola amiguitos, buenas y malas noticias, las buenas son que recién he empezado con el tutorial para Bennu 3D y que seguramente empezaré a traducir a lengua cristiana el resumen de funciones M8EE añadiendo algún detalle más sobre sus parámetros y funcionamiento.
La mala es que estoy empezando a portar mi antigua prueba de "iluminación y física con Bennu3D" al nuevo motor, y al compilar me encuentro 3 errores:
1) Tengo una variable de tipo _PhyModel llamada "fisica" en la que quiero cargar un modelo para que se atenga a las misteriosas leyes de la física. Anteriormente usaba:
fisica.typemodel=EBT_PRIMITIVE_CAPSULE;
Supongo que el nuevo nombre de la constante es TPHYS_CAPSULE según lo que leo en el fichero M8EE.h, ¿A qué se debe el cambio en los nombres de las constantes?
¿Seguirán así los nombres? A mí me parece correcto, sólo es por tenerlo en cuenta a la hora de redactar la guía.
2) Para lograr que los modelos respondieran a la física del escenario me basé en los ejemplos y usaba la función:
M8E_PHYSADDCHARCONTROL ( );
A la que le pasaba como parámetro una referencia a una variable _PhyCharacterModel donde almacenaba al personaje que manejamos y al mapa en el que se encuentra.
El problema es que no encuentro cuál función sustituye a ésta... ¿Alguien sabe si la hay?
3) De la misma forma usaba la función:
M8E_PHYSCHARCONTROLUPDATE ( );
Y le pasaba una referencia a los controles del personaje.
¿Qué función lo sustituye y dónde está el listado de estas funciones amigüitos?
A ver si alguien me sabe responder, sigo investigando por mi cuenta caballeros.
EDIT: He descargado la última versión de Bennu3D y veo que los test que usan física son del 21 al 25 pero no vienen. Estoy buscando en los links de referencia que ha puesto l1nk3rn3l y no encuentro nada, estoy sediento de física! ¿No se ha liberado todavía el motor de bullet?
El problema es que lo que más he trabajado con Bennu 3D es la física y es lo primero que quiero probar en el nuevo motor, pero bueno, mientras tanto me pongo con otras cositas que anda que no hay por probar :P
Creo que ya he mirado en todas partes y definitivamente espero a que llegue la física.
Se me ha ocurrido hacer un módulo de utilidad general para todos los que programamos en 3D, es una sencillez mínima y absoluta, por ahora sólo tiene una función, pero no me compila :S
A ver si alguien sabe decirme por qué:
FUNCTION _pos3d pos3d ( float _x , float _y , float _z )
PRIVATE
_pos3d aux;
BEGIN
aux.x = _x;
aux.y = _y;
aux.z = _z;
RETURN aux;
END
Con la función así, usando una variable de tipo _pos3d hago:
variable = pos3d ( 3 , 3 , 3 );
Y me da un error de struct required...
1) no podes devolver un dato struct
2) de hacerlo, se retorna como puntero
3) no podes devolver un puntero a un dato interno de un proceso que muere (retorna, etc)
4) variable debe ser de tipo "_pos3d *"
5) si podes declarar en la funcion un "_pos3d *" hacer un "aux = malloc(sizeof(_pos3d))" y luego ahi si retornar ese aux
6) por favor, cuando pongas ejemplos de codigo que tienen variables, por favor mostra la definicion de las variables... (en este caso, cuando declaras "variable")
Saludos.
se podría hacer esto???
.......
_pos3d point3d;
........
begin
...................
pos3d(&point3d, 3, 3, 3);
...................
end
function pos3d (*p3d, float _x, float _y, float _z)
begin
*p3d.x = _x;
*p3d.y = _y;
*p3d.z = _z;
end
Gracias Splinter, nunca se deja de aprender algo nuevo con Bennu :P
Tendré en cuenta lo del retorno únicamente de punteros a struct, el uso de mem_alloc.
Y sorry por no poner la declaración de variable, había dicho:
Con la función así, usando una variable de tipo _pos3d hago:
Pero te entiendo, siempre repugna leer código de terceros y más si falta cualquier tipo de especificación xD
Laghengar, sí que se podría hacer lo que dices (Al menos en teoría xD), quizás sea la opción que tome finalmente.
Gracias a todos!
Veamos Laghengar, he probado lo que dices siguiendo también las indicaciones de Splinter, pero tampoco me funciona:
Tengo declarada:
_pos3d escala_mapa;
Y una función así:
FUNCTION pos3d ( _pos3d POINTER aux , float _x , float _y , float _z )
BEGIN
(*aux).x = _x;
(*aux).y = _y;
(*aux).z = _z;
END
Invoco la función de esta forma tan sexy:
pos3d ( &escala_mapa , 4 , 4 , 4 );
Y como resultado escala_mapa toma en sus componentes x,y,z valores astronómicos, no toman el 4...
Creo que es probleme de Bennu3D, el tipo de dato _pos3d también me ha dado otros problemas, por ejemplo si intento poner varios parámetros seguidos del tipo _pos3d pasa a interpretar _pos3d como una variable int y los parámetros como int también.
Quote from: laghengar on September 17, 2009, 02:27:07 PM
se podría hacer esto???
.......
_pos3d point3d;
........
begin
...................
pos3d(&point3d, 3, 3, 3);
...................
end
function pos3d (*p3d, float _x, float _y, float _z)
begin
*p3d.x = _x;
*p3d.y = _y;
*p3d.z = _z;
end
si, eso si...
windgate:
pero te falto algo, como esta definida _pos3d?
y donde y como definis la funcion pos3d... si la definis despues de usarla, no va a funcionar...
o le pusiste declare arriba de todo?
Esa función pos3d() la tengo declarada en un .prg que cargo justo al inicio de mi código con INCLUDE, de esta manera:
INCLUDE "modulos/pos3d.prg"; // Carga el módulo con funciones para trabajar fácilmente con coordenadas 3D
Estoy seguro de que es visible cuando la uso.
En cuanto a _pos3d, es un tipo de dato que viene definido en Bennu3D y tiene 3 campos float que son x,y,z. Casi todas las funciones de Bennu3D usan parámetros de tipo _pos3D, por ejemplo, con las variables:
_Pos3D pos;
int identificador;
Uso las siguientes funciones de Bennu3D para cargar y posicionar un modelo sin problemas:
identificador = M8E_LOADANIMODEL ( "models/sucubo.md2" );
pos.x = x; pos.y = y; pos.z = z;
M8E_POSMODEL ( identificador , pos );
Hay muchos ejemplos como el anterior en los TESTs de la nueva Bennu3D y funcionan correctamente.
También he seguido una recomendación de Prg que me ha mandado por privado, pero sigue sin funcionar... Tengo la última versión de Bennu3D, y de Bennu tengo la RC6 (Creo recordar, en Windows)
Voy a probar a descargar la última RC de Bennu e intentarlo de nuevo, pero estoy empezando a pensar que pueda haber algún bug con el tipo de dato _pos3D al ser tan reciente el nuevo motor de Bullet. Sigo investigando y os informo. Gracias a todos.
PD: Estoy editando in english la descripción de funciones de la Bennu3D, aumentando un poco la descripción de algunas funciones que no dejaban claro su comportamiento exacto, cuando tenga algo más completo lo subo aquí.
parece que hay un bug cuando se pasan floats por parametro... maldicion, y ahora no tengo tiempo de ponerme con eso...
ya detecte el problema...
process set_3d (_s3d * aux, float _d1, float _y1, float _z1 )
begin
(*aux).x = _d1;
(*aux).y = _y1;
(*aux).z = _z1;
say(_d1);
say(_x);
say(_y1);
say(_z1);
end
private
_s3d s;
begin
set_3d(&s, 4.5, 4.4, 4.2);
say(s.x);
say(s.y);
say(s.z);
end
como veras hay un _x que no deberia compilar, deberia dar problemas...
parece que si empieza con _ y tiene un caracter, entonces lo compila vaya a saber como...
ahhhh, pero que pelotudo que soy!!!! son las constantes de teclado!!!!!!!
ese es el problema!!!!
TODO: si hay una constante definida, no debe permitirse usarla como nombre de un parametro... el chequeo existe para variables de globales, estaticas y publicas.
ya esta corregido, voy a generar parches...
SANTA MADONNA!!!
Fallo mío y de principiante :S
¿Pero el compilador debería avisar, no? (Ahora leo que sí en el Avance diario)
Lo cierto es que quería poner como nombres de los parámetros la_x , la_y , la_z pero por hacerlo más internacional lo dejé como _x , _y , _z.
Si estás ocupado no te preocupes Splinter, aquí nos podemos ayudar entre nosotros, supongo que alguien se hubiese dado cuenta de mi error :S
Gracias y Karma up por tu intervención, eres como un X Men.
Curioso, si es que muchas veces nos saltamos lo de nombres reservados :P, vamos que lo que puse yo tampoco vale jejejeje.
Lo de antes lo pregunté porque me parecía curioso que recurriendo a punteros, se pueda acceder a una estructura de la forma *p3d.y, ya que hasta ahora para hacer eso yo hacía *p3d+8 (*p3d primer byte de la estructura y 8 para añadir 8 bytes y así llegar donde estaría supuestamente "y").
lo que pusiste vos si vale, pero hay que encerrar entre parentesis (*p3d) y cuando lo declaras es de tipo _p3d... fijate el ejemplo que puse, ese funciona bien...
Funciona! Simplemente he renombrado los parámetros a ix, iy, iz.
En cuanto al problema para poner floats como parámetros Splinter, ¿Existe ese problema finalmente?
EDIT: He descargado los modelos del repositorio y tengo problemas con los modelos .x, ya que ninguno de ellos me lo reconoce con M8E_LOADANIMODEL ( ), con los modelos .mdl también tengo problemas para aplicar la textura, el modelo se carga bien pero el M8E_LOADTEXMODEL ( ) no le aplica su textura correspondiente :(
Como ya dije, estoy ampliando la información de la documentación 3D, y estoy añadiendo junto a las extensiones su compatibilidad (Best, Good, Poor) en función de los problemas que estoy teniendo o no con las distintas extensiones que estoy probando.
Si alguien quiere aportar algo por su experiencia personal bienvenido sea.
no, no hay error con los floats... por eso tache el texto ese...
no entiendo que no te funciona... la cosa es que si usas la ultima version, tenes que aplicar parche y tenes que recompilar tus dcb.
gracias por el reporte del bug... me olvide dartelas... asi que un karma...
QuoteFunciona! Simplemente he renombrado los parámetros a ix, iy, iz.
ehm, y el que te pasé con los parámetros de _bx, _by, _bz no te funcionó?
en cuanto a los formatos que me dices yo solía usar el ms3d, y algunas veces 3ds porqe el ms3d algunas veces da problemas, también el x, pero no se qué versión uses, ya que actualmente no me he actualizado de nada, no he escrito nada de código :'( ... a ver si luego ...
Oye, ya que estamos con lo de los modelos, ¿que formato creeis que es mejor para bennu3d?
Assias.
muchas gracias splinter por contestar las preguntas,
es que estaba fuera de la ciudad en el trabajo,
la fisica para mover caracteres (personajes controlados por las teclas up,down,left,etcccc)
ya esta terminada y se puede ver en el foro de irrlicht, pero
no he tenido tiempo de pasarlo a bennu.. estos dias le dedicare
para por lo menos tener eso, la otra fisica como la de carros
todavia no la he implementado , pero estara disponible despues(en breve),
bullet es tan bueno con colisiones que lo recomiendo con modelos estaticos de tan bajos
poligonos como los de scketup. cosa que irrlicht no es tan bueno(colisiones )
para modelos con animaciones recomiendo milkshape/md2/md3/b3d
si alguien desea modelos en la misma pagina del bennu3d hay para descargas cientos...
estoy implementando un sistema de colisiones con bullet, que hacer algo
sera tan simple como comparar 2 variables..(para saber la colision)
bueno espero volver con buenas noticias.
Bueno ahora me pasa otra cosa, cargo el modelo y se muestra muy bien, luego cargo la textura, y no hay problemas (compila bien, la textura la carga pero el modelo se ve saturado de blanco)
El problema es al hacer M8E_LOADTEXMODEL(modelo_robot,textura_verde);
ahí me peta. No se que ocurre, salta un mensaje de error en bgdi.exe tiene que cerrar la aplicación y se va.
Hay un problema con esa función o no lo estoy haciendo bien???
Perdonad, se me ha olvidado poner que el modelo es un 3ds y la textura un bmp.
Gracias por vuestra atención.
podrías poner el código (completo)...
no debería haber problemas,
Por supuesto ;D
[code language="bennu"]
program cargar_mapa_bsp;
include "import1.prg" //aquí inserto los mod necesarios
global
mapa;
entity3d camara,robot;
modelo_robot;
textura_verde;
begin
set_mode (800,600,32);
set_fps (60,0); //max.
M8E_INIT(EDT_OPENGL);
if(M8E_SCREENEXIST()==false)
let_me_alone(); //kill fenix process
M8E_FREE(); //free resources
exit("Fallo en la creación de la escena",0);
end
M8E_ADDZIPFILE( "bsp\ogretestmap.zip") ; //add a zip file
mapa=M8E_LOADMODELEX("ogretestmap.bsp",128);
camara=Entity3dcamera(0,0,0,100,0,0);
proceso_camara();
Show_Fps(400,10,255,0,0,0);
modelo_robot=Entity3DAnimated(".\media\3ds\robot.3ds");
textura_verde=M8E_LOADTEXTURE(".\media\tex\textura01.bmp");
M8E_LOADTEXMODEL(modelo_robot,textura_verde); //PETA POR ESTA LÍNEA
repeat
M8E_RENDER(0,0,0,255);
frame;
until(key(_esc))
let_me_alone(); //kill fenix process
M8E_FREE(); //free resources
end
//////////////////////////////
proceso_camara()
private
_pos3d objetivo;
begin
entityy(camara)=100;
loop
if(key(_left))
entityroty(camara)+=5000;
end
if(key(_right))
entityroty(camara)-=5000;
end
if(key(_up))
entityx(camara)+=cos(entityroty(camara))*5;
entityz(camara)+=sin(entityroty(camara))*5;
end
if(key(_down))
entityx(camara)-=cos(entityroty(camara))*5;
entityz(camara)-=sin(entityroty(camara))*5;
end
if(key(_w))
entityy(camara)+=1;
end
if(key(_s))
entityy(camara)-=1;
end
objetivo.x=entityx(camara)+cos(entityroty(camara));
objetivo.y=entityy(camara);
objetivo.z=entityz(camara)+sin(entityroty(camara));
m8e_camtarget(m8e_getactivecam(),objetivo);
frame;
end
end[/code]
creo que ya encontré el error, el error es que intentas ponerle la textura a algo que no es el modelo.
yo no uso Entity3DAnimated para cargar modelos, yo uso m8e_loadanimodel lo cual devuelve un código que puedo usar con loadtexmodel.
si quieres obtener el código del model tienes que usar la función EntityModel(modelo_robot) donde modelo robot es loque te retorna Entity3DAnimated.
así tu código quedaría:
modelo_robot=Entity3DAnimated(".\media\3ds\robot.3ds");
textura_verde=M8E_LOADTEXTURE(".\media\tex\textura01.bmp");
M8E_LOADTEXMODEL(EntityModel(modelo_robot),textura_verde);
hay más info en el basic 01. yo no he usado entidades, ni el sistema actual, prefiero el antiguo... je je je... :) pero estoy casi seguro que ese es el error. saludos :)
Bueno, después de trastear un poco, solo he conseguido que ahora el modelo en vez de verse blanco, se ve negro saturado ;D. No enlaza la textura, no se, tendré que explorar un poco el m8ee.h a ver.
textura_verde=M8E_LOADTEXTURE(".\media\tex\textura01.bmp");
modelo_robot=M8E_LOADANIMODEL(".\media\3ds\robot.3ds");
M8E_LOADTEXMODEL(modelo_robot , textura_verde );
Gracias por todo.
Por cierto prg. he visto que en el basic 01 , el modelo se carga con ent=entity3danimated(); cuando ent es una estructura tipo entity3d. he intentado hacer eso mismo pero me salta un error de estructura. Lo curioso es que compilando el basic01 que tiene la misma operación, termina perfectamente. entonces no entiendo. Lo dicho, tengo que estudiarme el m8ee.h
Un saludo.
La única vez que probé con un .3ds me cargó la cabeza del muñeco en los pies, y creo recordar que la textura ya la tenía incorporada... En cualquier caso, si se te ve todo negro podrías probar a aplicarle un material por defecto y una luz, no vaya a ser que los .3ds requieran un foco de luz para poder verlos... No lo sé a ciencia cierta, es lo primero que se me ocurre :P
na. gracias tio de todas formas. Se me ha ocurrido que puede ser por ser un 3ds, aunque no lo veo lógico. Bueno voy a buscar las otras extensiones a ver que tal.
Prueba a exportar a .obj o similar... Hace tiempo que no uso 3D Studio y no probé a exportar y volver a cargar.
Tio, ya está solucionado. Vale todo lo que tenía hecho, pero faltaba esto:
M8E_SETAMBIENTLIGHT(255,255,255,0);
.........
textura_verde=M8E_LOADTEXTURE(".\media\tex\textura01.bmp");
modelo_robot=M8E_LOADANIMODEL(".\media\3ds\robot.3ds");
M8E_LOADTEXMODEL(modelo_robot , textura_verde );
.................
Ahora si muestra la textura. Manda huevos. :-[. Bueno por lo menos ahora se por donde tirar un poco.
esto lo que hace es pone una luz ambiental. lo que pasa es que tenías la luz por defecto 0,0,0,0, lo cual es todo negro, pero al poner esta linea hay luz y las texturas se ven :)
M8E_SETAMBIENTLIGHT(255,255,255,0);
ok, no lo sabía, es que no vi que se empleara esa función en el basic01. Después del comentario de windgate miré los modelos y vi que el basic01 era un md2, entonces fué cuando probé poniendo luz ambiente y woila, ya tengo textura. :P
¿Entonces el modelo .3ds y su textura funcionan correctamente? ¿De dónde has sacado modelos .3ds?
Como dije, estoy testeando los distintos formatos y ampliando un poco la info en la "documentación" de Bennu3D. Sobre el formato .x tras cansarme de probar estoy a punto de poner NO SOPORTADO, porque siempre me da error. Sobre el formato .3ds sólo hice una prueba con Link, del videojuego Zelda, y me salía su cabeza abajo...
¿Has probado suficientes .3ds como para asegurar que es al menos semi-compatible con Bennu3D? ¿Podrías pasarme los .3ds para hacer una pruebecitas y guardarlos en mi... colección privada? :-*
¿Los .3ds incluyen o al menos pueden incluir una animación como ocurre con los .md2 que a veces los cargas y ya salen animándose?
No se tio, tendré que probar todo eso. El 3ds que llevé es de un ejemplo que viene con el curso de 3ds max que ahora estoy repasando. No tengo más modelos, sorry. Es posible que los vaya haciendo yo. Por cierto, lo de tener que poner luz ambiente para verse la textura me ha hecho pensar si sería posible luz dinámica, también tengo que hacer una prueba sobre eso.
Claro que se puede poner luz dinámica, añade al identificador de una luz una animación, por ejemplo lineal, y tendrás la luz moviéndose por el escenario de la misma forma que puedes mover un modelo.
Quoteok, no lo sabía, es que no vi que se empleara esa función en el basic01. Después del comentario de windgate miré los modelos y vi que el basic01 era un md2, entonces fué cuando probé poniendo luz ambiente y woila, ya tengo textura.
lo que pasa es que existe una propiedad que dice que la luz no los afecte, eso hace que no necesites hacer m8e_setambientligth para que se vean bien. la propiedad es:
M8E_MODELSETMATERIAL(modelo, EMF_LIGHTING,0);//not light in material
si pones 1 entonces la luz si lo afecta.
Quote¿Entonces el modelo .3ds y su textura funcionan correctamente? ¿De dónde has sacado modelos .3ds?
si, si funcionan, incluso algunas veces mejor que los ms3d :) yo los uso para árboles
QuoteComo dije, estoy testeando los distintos formatos y ampliando un poco la info en la "documentación" de Bennu3D. Sobre el formato .x tras cansarme de probar estoy a punto de poner NO SOPORTADO, porque siempre me da error. Sobre el formato .3ds sólo hice una prueba con Link, del videojuego Zelda, y me salía su cabeza abajo...
bueno, depende del model, tenía árboles que los ms3d no funcionaron, pero el x y 3ds si, así que no le pongas no soportado, mejor ponle que prueben con varios formatos.
Quote¿Has probado suficientes .3ds como para asegurar que es al menos semi-compatible con Bennu3D? ¿Podrías pasarme los .3ds para hacer una pruebecitas y guardarlos en mi... colección privada? Beso
je je, yo tengo algunos :) si quieres luego te los paso,y también una página llena de ellos
Quote¿Los .3ds incluyen o al menos pueden incluir una animación como ocurre con los .md2 que a veces los cargas y ya salen animándose?
no
con mi visor 3d que viene en el editorfpg pueden ver qué modelos cargan las librerias... bueno, es más fácil hacer un código vd? je jeje
QuoteClaro que se puede poner luz dinámica, añade al identificador de una luz una animación, por ejemplo lineal, y tendrás la luz moviéndose por el escenario de la misma forma que puedes mover un modelo.
puedes agregarle el identificador a un animador o puedes moverlo directamente con m8e_posmodel :)
y modificar sus propiedades para cmabiar su color y radio y demás propiedades :)
Je je je, eres una Biblia Prg.
¿Tienes algún .x y .3ds que puedas pasarme para probar que ese formato sí que está soportado y añadirlo en mi "edit" del "manual" de Bennu 3D?
Desde el blog del m8ee accedí a la sección de modelos y el pack de Star Wars son todo .x y probé unos 10 sin que ninguno me funcionase.
Y hablando de otra cosa, estoy preparando una sencilla función cargar_modelo que le pasas una string con la ruta del modelo y automáticamente le aplica tanto el material como la textura en la misma ruta, con el mismo nombre pero extensión .png (El formato de imagen que siempre uso).
¿Alguien sabe alguna función SENCILLA para obtener la subcadena quitando el ".loquesea"?
Se me ocurre hacer substr 1 a 1 hasta llegar al punto, pero si hay alguna función como las de C que te "corta" la cadena al llegar a un determinado char... Odio las funciones de cadena, si nadie sabe la solución mágica me pongo a probarlas una a una y ya está :P
Si: substr(cadena,0,-4)
Con eso eliminas los 4 últimos caracteres... ahora, si la extensión es de menos o de más entonces si que tendrás que ir examinando la cadena de atrás a adelante.
Por cierto ¿se soporta el .max? lo digo porque el 3DSMax sólo guarda en ese formato. Tiene la función "exportar" a 3DS pero no se si funcionaría ni lo que exportaría.
EDIT: espera, había una función que separaba la cadena en subcadenas dándole el caracter que quieres que las divida, a ver....... no me acuerdo.
Sí Drumpi, lo había pensado, pero el formato .x se salta la regla xD
En cualquier caso creo que podría prescindir de ese formato, lo odio, lo he probado mucho y no consigo que me cargue bien ningún modelo >:(
Prueba a exportar, no he exportado con 3D Max, pero con Wings 3D me dejó bastante satisfecho la experiencia, simplemente funciona.
el max no funciona. creo.
usa find(".") en la cadena invertida con strrev() o algo así y mételo en el substr de esta forma busca el primer punto del nombre.
aquí hay un modelo extención x y uno 3ds de árboles, verás que se cargan muy bien, eso si, no se cargan con el alpha activado, pero se hace mediante código en el bennu3d, sin embargo si se cargan correctamente :)
http://www.mediafire.com/download.php?zimntiv3zmj (http://www.mediafire.com/download.php?zimntiv3zmj)
He encontrado el nombre de la función, la tenía en una copia de seguridad.
En Fenix se llamaba "split", tendrás que echar mano de wikis y demás para buscar info:
DWORD SPLIT(STRING expresión, STRING cadena, POINTER array, INT tamaño)
Descripción
A partir de una expresión regular, esta función divide la cadena original en partes. Para ello debe recibir un puntero a un array de STRINGs, y un número máximo de elementos, que será la longitud del array en sí. Por ejemplo, si la cadena original es "12/04/1980" y la expresión regular es "/", la función guarda las cadenas "12", "04" y "1980" en las tres primeras posiciones del array y devuelve 3.
Es importante notar que la cadena con los separadores es una expresión regular. Es posible por ejemplo poner clases de caracteres, por ejemplo, así que la cadena "[/- ]" dividiría la cadena allí donde hubiera un caracter "/", un caracter "-", o bien un espacio. El uso de expresiones regulares es un concepto avanzado en sí mismo, se recomienda consultar la función REGEX para obtener más información.
Arg, estuve utilizando split en su día para algo... En Fenix, y no me convenció su funcionamiento, luego pasé a Bennu y tuve tanto por hacer que abandoné ese proyecto...
La idea de Prg me parece válida, me haré una FUNCTION string quitar_extension ( string cadena ) y aunque sea "fea por dentro" mientras funcione bien me sirve.
Grasias a los 2!
PD: Probando esos modelos Prg, si tengo algún problema te humillaré!
Modelos probados y funcionan, tanto el .x como el .3ds
Pero tengo una pregunta, me has pasado 2 modelos y 3 archivos de textura, ¿Hay alguna forma de aplicar 2 texturas al mismo modelo o algo así? ???
Luego he probado a "mejorar" la apariencia de los modelos así:
M8E_MODELSETMATERIAL ( identificador , EMF_ANISOTROPIC_FILTER + EMF_GOURAUD_SHADING + EMF_ANTI_ALIASING , 1 );
En teoría lo anterior aplica Gouraud y suavizado de bordes, entre otras cosas. Gouraud consigue una sensación de iluminación que hace que las aristas no se distingan y que se disimulen los polígonos, pero he hecho la prueba y veo que en algunos modelos no se aplica bien, especialmente los árboles que me has pasado, al iluminar el tronco algunos polígonos se quedan totalmente amarillos (Color de la luz) y no debería ser así.
No sé si será problema de Bullet... El algoritmo de Gouraud lo tengo en Bennu para mi visor 3D y funcionaba perfectamente, aunque seguramente el código no sea el más eficiente del mundo :P
los .X solo se pueden cargar los que tengan formato assci (texto)
no se soportan comprimidos ni encriptados... creo que no aguanta animaciones
no he probado..
modelos animados solo soporta(.MD2,MILKSHAPE MS3D, MD3, B3D, )
ver
http://irrlicht.sourceforge.net/features.html
modelos estaticos creo que el resto de formatos...
.
Lo de los modelos animados que soporta estaba probándolo y me temía eso, gracias, me lo anoto xD
En cuanto a los .x he probado varios del pack de modelos de star wars y logro visualizarlos como documento de texto correctamente, pero dan error al cargarse... Seguramente sea por el tipo de codificación, lo tendré en cuenta cuando vuelva a probar.
hola, existe alguna versión actual de las librerías 3d que funcione con la nueva estructura de bennu (Me refiero a que no de el error de "bgdrtm.dll nof found")?
quedo en espera de la respuesta, saludos :)
¿Cuál nueva estructura de Bennu? ¿En cuál RC?
Por cierto en Linux tengo un cacao de versiones de las .so que da miedo... Yo como siempre cagándola al instalar Bennu en Linux xD
jajaja, hace un uninstall y luego hace el install
Quote¿Cuál nueva estructura de Bennu? ¿En cuál RC?
no recuerdo desde cual, pero en windows, no se si en linux tamibén supongo que también, no podemos usar librerías antiguas ya que la librería bgdrtm.dll cambió su nombre a libgdrtm.dll y por lo tanto antiguas librerías compiladas con el otro nombre ya no permiten compilar... entonces necesitamos que las librerías como bennu3d se recompilen con esta nueva versión para que corran con la más nueva versión de bennu. tenía el mismo problema con la libimage, pero como la acaban de compilar recientemente ya no me da ningún problema :) .
Prg, si no recuerdo mal, la última versión está aqui
http://3dm8ee.blogspot.com/
QuotePrg, si no recuerdo mal, la última versión está aqui
http://3dm8ee.blogspot.com/
gracias :) entonces tendré que usar una versión de bennu que si me acepte las librerías :)
gracias dcelso karma ++ :)
La librería 3D la bajé recientemente, no tiene la ansiada física aún, qué penita, estoy perro esperando xD
En cuanto a hacer el uninstall en Ubuntu tengo el peligro de no saber cuál versión instalé en su día, tengo memoria de pez, ya he dicho varias veces que un léemelo para retardados en las .sh de Linux no vendría mal, indicando cómo desinstalar, cómo saber la última versión que tienes instalada y patatín y patatán :P
Probé a hacer un install de una de las últimas RC sobre la instalación anterior y me salieron unos cuantos errores y no me deja compilar nada que tenga IMPORT "mod_sound" en su código.
En cuanto a Bennu 3D (Por seguir con el hilo :P), ¿Para añadir un monigote andando de lado a lado de la pantalla (A partir de un FPG por ejemplo) habría que usar exclusivamente funciones de la GUI o hay alguna forma de tener "procesos 2D" sobre el render? Ya se me dijo en su día que el render y el 2D no se llevan naaada bien xD
Esto último lo pregunto especialmente a mi amado ( :-* ) Prg porque he visto que sacó barritas en su juego de Magia.
QuoteEn cuanto a Bennu 3D (Por seguir con el hilo Lengua), ¿Para añadir un monigote andando de lado a lado de la pantalla (A partir de un FPG por ejemplo) habría que usar exclusivamente funciones de la GUI o hay alguna forma de tener "procesos 2D" sobre el render? Ya se me dijo en su día que el render y el 2D no se llevan naaada bien xD
hola amigo :)
para añadir un monigote andando no puedes usar un fpg, debes cargar cada sprite como si de texturas se trataran, y sí, sólamente usaremos funciones de la gui, cualquier otra cosa no pintará sobre el render :)
ejemplo:
[code language="bennu"]/*******************************************************************/
/* prueba de sprites 2d y models 3d por PRG */
/* */
/* 07/10/2009 05:53:54 p.m. */
/*******************************************************************/
import "mod_say";
import "mod_key";
import "mod_mem";
import "mod_proc";
import "mod_dir";
import "mod_math";
import "mod_grproc";
import "mod_video";
import "mod_map";
import "mod_string";
import "mod_rand";
import "mod_file";
import "mod_regex";
import "mod_text";
import "mod_draw";
import "mod_sound";
include "m8ee.h"
global
cam;
int text[4];
local
mono;
_pos3d pos;
begin
set_mode (800,600,32);
M8E_INIT(0);
cam=M8E_ADDCAM(0,50,-60, 0,5,0);
from z=0 to 3;
text[z]= M8E_LOADTEXTURE("sp"+atoi(z+1)+".png");
end
modl();
m8e_camtarget(cam,son.pos);
M8E_SETAMBIENTLIGHT(0, 250,250,250);
mono=M8E_GUIADDIMAGE(text[z], 320,90, true);
mono1();
while ( (!key(_esc)) )
if (M8E_GUICOL(mono,son.mono))
M8E_GUISETIMAGE(mono,text[3]);
else
if (++z>2) z=0; end
M8E_GUISETIMAGE(mono,text[z]);
end
M8E_GUImove(mono, mouse.x,mouse.y);
M8E_RENDER(0, 55,0,155); //(ALPHA, R,G,B)
frame;
end;
exit(0);
M8E_FREE();
end
process mono1();
begin
x=400; y=300;
mono=M8E_GUIADDIMAGE(text[z], 320,90, true);
loop
angle+=rand(-5000,5000);
x+=get_distx(angle,5);
y+=get_disty(angle,5);
if (salio())
x=400; y=300;
end
M8E_GUImove(mono, x,y);
if (++z>2)
z=0;
end
M8E_GUISETIMAGE(mono,text[z]);
frame;
end
end
process modl();
begin
mono=M8E_LOADMODELEX("bookbow.ms3d",128);
pos.x=0; pos.y=0; pos.z=0;
m8e_posmodel(mono,pos);
loop
pos.y++;
m8e_modelrotation(mono,pos);
frame;
end
end
function salio();
begin
if (father.x<0 or father.x>800 or father.y<0 or father.y>600)
return(1);
end
return(0);
end
[/code]
ah como disfruté hacer el ejemplo, ya me hacía falta moverle a bennu...
link de descarga con graficos y el model:
http://www.mediafire.com/download.php?jyylml3zzna
Descargando Prg, lo probaré mañana en un ratito... Hoy he estado probando los sockets y ha sido erótico... Habrá que mezclar todo a la vez y hacer un juego monstruoso un día de estos xD
Muchísimas gracias por el ejemplo, es muy ilustrativo, ¿No se podría hacer con usando un FPG en lugar de con gráficos sueltos?
No te doy el karma por el local ese que te has cascado, la palabra reservada LOCAL me parece insultante xD
PD: Me he arrepentido... La verdad es que te lo mereces amigo, karma++
ja jaja
lo siento, en mi juego así tengo todo, necesito las locales para acceder a las estructuras de los procesos mediante su id y manejar el 3d como si de 2d se tratara, es más cómodo y no me gustan los publics, sobre todo pensando que todos los procesos tendrans su model y una posición en el espacio :) es como en 2d, todos tienen sus gráficos y su x,y :)
gracias por el karma, me alegro que te gustara :)
Quote¿No se podría hacer con usando un FPG en lugar de con gráficos sueltos?
hasta que no exista una función que nos permita comunicar el bennu con las librerías bennu3d en el aspecto gráfico... no :'( , no se puede, y es una lástima
Vaya... No he trabajado a fondo con la mod_map pero pensaba que era posible hacer referencia a un gráfico del fpg de la misma manera que se puede hacer referencia a un png cargado... ¿Estás seguro? Si me lo aseguras no me pongo a probar :P
En cuanto al karma, te lo acabo de dar ahora, antes se me ha olvidado :S
Tenía una duda, he visto que tu juego de magia se basa en escenarios generados a partir de una textura, ¿Eso lo haces con el Colombian Lands? ¿Genera un .bsp? ¿Hay que posicionar los árboles calculando las coordenadas o hay alguna forma menos inhumana de que aparezcan "con los pies en el suelo"?
Hoy estoy preguntón amigo, te voy a tirar de la lengua un poquito xD
QuoteVaya... No he trabajado a fondo con la mod_map pero pensaba que era posible hacer referencia a un gráfico del fpg de la misma manera que se puede hacer referencia a un png cargado... ¿Estás seguro? Si me lo aseguras no me pongo a probar Lengua
del uno al cien 89% asi que existen posibilidades :)
Quote
¿Eso lo haces con el Colombian Lands? ¿Genera un .bsp? ¿Hay que posicionar los árboles calculando las coordenadas o hay alguna forma menos inhumana de que aparezcan "con los pies en el suelo"?
uso heightmaps son bmp generados mediante algún programa especial como el hemahema y algunos otros,
no genera bsp, es el bmp que lo cargo como terreno el color blanco es el punto más alto de la montaña, el negro el más bajo, y los valores intermedios alturas intermedias
me hice un programita en el que coloco los objetos en el terreno y al salir del programa me guarda las coordenadas, las rotaciones y la escala de cada model, entonces en el juego cargo los archivos y los modelos y los posiciono de acuerdo a estas características :)
Ok, probaré lo de los height maps.
En cuanto al programa para posicionar los modelos es muy buena idea, yo siempre ando calculando "a ojo" las coordenadas para posicionar, es infernal, ¿Me pasas ese programita posicionador Prg?
Quote¿Me pasas ese programita posicionador Prg?
si :)
está aca, no está muy fácil de usar, ya que lo hice para mí, sin embargo es de mucha ayuda.
este es un pequeño tuto.
el programa ya viene con una escena de ejemplo, como leeras, si quieres borrarla es suficiente con borrar los ptc y modifcar el archivos.txt que es el encargado de cargar todo el entorno (nunca lo borres, si lo haces el programa no iniciará :) ).
Quotepreparar el programa:
encuentra el txt "archivos.txt" en esta carpeta (se refiere a la carpeta donde instalaste el editor fpg (el programa de edición fpg que hice) carpeta archivos internos, ejemplo: "C:\editorfpgmultisist\archivos_internos" ), este archivo se modificará de la siguiente manera para usar el programa:
C:\Copia de Copia de Copia de caosfps2\media\terreno\hmp/ot3.png ruta del heightmap
0 0 0 //coordenadas en las que se colocara
150 7 150 //escalado que tendrá el terreno
C:\Copia de Copia de Copia de caosfps2\media\terreno\texturas/ot32.png //textura que se aplicará
4 //numero de objetos que se cargarán
C:\Copia de Copia de Copia de caosfps2\media\terreno\arboles/palmtree.3ds //ruta del primer objeto
4 4 4 ///escalado en x, y, z de el objeto cuando se cargará
C:\Copia de Copia de Copia de caosfps2\media\terreno\arboles/pinetree.3ds //ruta del segundo objeto
4 4 4 //escalado de este
C:\Copia de Copia de Copia de caosfps2\media\terreno\arboles/bigtree1.3ds //ruta del tercer objeto
4 4 4
C:\Copia de Copia de Copia de caosfps2\media\terreno/roca.ms3d //ruta del cuarto
40 40 40
Una vez que tenemos el txt listo podemos abrir el programa... una cosa:
Si quieres iniciar un proyecto nuevo, borra todo *.ptc que veas en la carpeta ejemplo: archivo1.ptc, archivo2.ptc
Si quieres continuar con lo que ya llevabas no los borres, ya que se cargarán y podrás continuar como lo dejaste antes de hacer escape la última vez (si existen se cargan ? )
Manipulación del programa
te mueves a través del programa con el ratón y las teclas w,a,s,d
insertar un objeto en la escena
de acuerdo al contenido del txt "archivo" el primer objeto es el primero que pusistes, el segundo elsegunndo y así,
así que cuando presionas click izq insertas un nuevo objeto del tipo seleccionado (ver flecha de la parte izq inferior de la pantalla)
y si presionas botón derecho del ratón cambias el tipo de objeto que se insertará
si presionas g insertarás un objeto con gravedad, cuidado, la gravedad de terrenos no permite saltos.
seleccionar un objeto:
acercate a él y cuando se ponga transparente entonces los estás seleccionando
trasladar un objeto en la escena:
presiona t cuando lo tengas seleccionado y mover el ratón o presionar las flechas arriba y abajo
rotar un objeto
seleccionalo y presiona r, luego presiona las flechas, j o k, cada flecha mueve en una direccion la rotación y se ve en tiempo real
escalar objeto
presionar g y:
u para aumentar la escala general (x,y,z)
i para disminuir la...
las flechas, j o k para aumentar o disminuir la escala en distintas direcciones.
guardar el trabajo:
presiona esc y se crearán unos archivos que contienen la posición, rotación y escalado de cada objeto con la siguiente sintaxis:
x y z x y z x y z
donde las primeras x, y y z son las coordenadas del objetos
las siguientes x,y y z son las rotaciones
y las siguientes x,y,z son las escalas.
perdona el desorden del código.
el link es:
http://www.mediafire.com/download.php?t25iozyqnmz (http://www.mediafire.com/download.php?t25iozyqnmz)
debes desempaquetarlo en tu carpeta...
editorfpgmultisist\archivos_internos
y remplazar los archivos existentes (es un parche), luego debes compilar y ejecutar el editor_de_posiciones_3d.prg y listo
Parece complejo xD
Ok, lo pruebo cuando saque un rato y te cuento, asias asias
Hola de nuevo Prg, he probado el posicionador que me pasaste, para compilar he añadido en su directorio el m8ee.h y las DLL bennu3d y D3DX8d, que es como compilo cualquier cosa echa con Bennu 3D.
He tenido el siguiente error al compilar, me lo ha dado en el m8ee.h:
Unknnown identifier: M8E_RENDER_ENABLE
Me hubiese puesto a hacer más pruebas, pero es que tengo serias sospechas de que mi versión de las DLL de Bennu tiene algún problema. Desde que las actualicé con la última RC todos mis juegos en 3D han dejado de compilar :'( aunque el error que me daban ellos era otro diferente.
Seguiré probando cosas tanto con tu programa como con mis juegos, pero si puedes decirme algo que me haga ver la luz te estaré infinitamente agradecido (Y seré tu esclavo durante 1 semana :-\).
Bueno reduzco esto porque ni merece mención, gracias prg, era eso. Un saludo.
Claro que no sale, al pulsar la tecla _ESC lo único que haces es finalizar el programa principal, pero el proceso_camara() sigue activo.
Si añades un exit(0) no tendrás problemas ;)
Por supuesto hay salidas "menos bruscas" pero para un programa tan corto es más que válido.
Quote from: Windgate on October 14, 2009, 05:48:22 AM
Hola de nuevo Prg, he probado el posicionador que me pasaste, para compilar he añadido en su directorio el m8ee.h y las DLL bennu3d y D3DX8d, que es como compilo cualquier cosa echa con Bennu 3D.
He tenido el siguiente error al compilar, me lo ha dado en el m8ee.h:
Unknnown identifier: M8E_RENDER_ENABLE
Me hubiese puesto a hacer más pruebas, pero es que tengo serias sospechas de que mi versión de las DLL de Bennu tiene algún problema. Desde que las actualicé con la última RC todos mis juegos en 3D han dejado de compilar :'( aunque el error que me daban ellos era otro diferente.
Seguiré probando cosas tanto con tu programa como con mis juegos, pero si puedes decirme algo que me haga ver la luz te estaré infinitamente agradecido (Y seré tu esclavo durante 1 semana :-\).
eso me pasaba a mi porque la m8ee y las librerías que se usaban al compilar eran de distintas versiones, lo que pasa es que el m8ee tiene unas funciones internas (al final, puedes verlas) que usan esa variable, y como no están en tus librerías pues no te compila, en la carpeta del editor fpg vienen las librerías y m8ee que yo uso, para que el programa que te pasé funcione tienes que colocarlo en la carpeta del editor fpg, dentro de "archivos internos", de lo contrario no funcionará, ya que carga recursos de las carpetas del editor, si lo tienes en esta carpeta, ahí deben estar mis librerías, y para compilar será suficioente con el bgdc archivo.prg y bgdi archivo.dcb
[code language="bennu"]function M8E_INIT_DEFAULT()
BEGIN
M8E_INIT(0); //init engine with any driver
if (not M8E_SCREENEXIST())//error?
WRITE (0,1,10,0, "Error: M8ee Init-failed." ) ;
while (!key(_esc)) frame; end;
exit();
end;
M8E_RENDER_ENABLE=1; //enable render hooks
END;[/code]
¡¡¡Aaaaaaaaaaaaaaaaaarrrrrrrrrrrrrrrrrgggggggggghhhhhhhhhhhhhh!!! >:(
Ahora me compila, gracias. Pero sigo con el error de ejecución de Bennu 3D, ese de la string_allocated. A ver si lo arreglo ya de una vez manteniendo 2 versiones de las DLL de Bennu.
Si conoces la última versión de Bennu para Windows que soluciona ese error dímelo, para no andar probando, y así la dejamos aquí disponible para todos hasta que se solucione.
Quote from: DCelso on October 07, 2009, 02:42:30 PM
Prg, si no recuerdo mal, la última versión está aqui
http://3dm8ee.blogspot.com/
esta es la última versión, a mi no me da problemas con ella, creo que esta es la que tengo...
ese error que me cuentas no lo recuerdo, cúando sucede?
Me sucede al iniciar la ejecución de cualquier juego que use Bennu3D, he descargado de 3dm8ee.blogspot.com todos los tests y en todos ellos me ocurre lo mismo. Me compilan bien, pero al iniciar la ejecución ZAS:
(http://trinit.es/images/Error%20Bennu.png)
Yo creo que tiene que ser por las DLL, ya que me pasó cuando actualicé a una versión nueva para poder usar la nueva mod_ttf. He descargado la última revisión 110 y me sigue pasando, estoy confuso...
mmm, yo uso una versión antigua de bennu para compilar el 3d y mi salida de consola es esta:
Quote
C:\Copia de Copia de Copia de caosfps2>"bennugd/bgdc.exe" "ejemplo sprites mov/p
reb.prg"
BGDC 1.0.0 (Jul 6 2009 00:14:03)
Copyright © 2006-2009 SplinterGU (Fenix/BennuGD)
Copyright © 2002-2006 Fenix Team (Fenix)
Copyright © 1999-2002 José Luis Cebrián Pagüe (Fenix)
Bennu Game Development comes with ABSOLUTELY NO WARRANTY;
see COPYING for details
ejemplo sprites mov/librender:0: warning: Variable redeclared ("ALPHA_STEPS")
File ejemplo sprites mov/preb.dcb compiled (99180 bytes):
Processes 9
Global data 776 bytes
Local data 236 bytes
Private data 80 bytes
Public data 0 bytes
Code 2592 bytes
System processes 421
Globals vars 38
Locals vars 30
Private vars 20
Publics vars 0
Identifiers 1157
Structs 13
Strings 61 (587 bytes)
C:\Copia de Copia de Copia de caosfps2>pause
Presione una tecla para continuar . . .
C:\Copia de Copia de Copia de caosfps2>"bennugd/bgdi.exe" "ejemplo sprites mov/p
reb.dcb"
(Irrlicht) Initialize Bennu Graphics Engine.
Irrlicht Engine version 1.6 SVN
Microsoft Windows XP Professional Service Pack 3 (Build 2600)
Using renderer: Direct3D 8.1
NVIDIA GeForce 9500 GT nv4_disp.dll 6.14.11.7516
Loaded texture: C:\Copia de Copia de Copia de caosfps2\ejemplo sprites mov\sp1.p
ng
Loaded texture: C:\Copia de Copia de Copia de caosfps2\ejemplo sprites mov\sp2.p
ng
Loaded texture: C:\Copia de Copia de Copia de caosfps2\ejemplo sprites mov\sp3.p
ng
Loaded texture: C:\Copia de Copia de Copia de caosfps2\ejemplo sprites mov\sp4.p
ng
Loaded texture: C:\Copia de Copia de Copia de caosfps2\ejemplo sprites mov\bookb
ow.bmp
Loaded mesh: bookbow.ms3d
Needed 0ms to create OctTree SceneNode.(1 nodes, 76 polys)
la parte resaltada es mi versión, para windows. y con ella no tengo ningún problema.
Comprendo... Veo que la mía se traba al cargar las texturas, parece ser un problema con las strings así que puede ser un problema con la ruta o con la DLL que usa para trabajar con cadenas.
Voy a probar con tu misma versión, todo empezó cuando actualicé a las DLL necesarias para usar mod_ttf, creo recordar que me las pasó DCelso y las mezclé con las mías formando un cacao curioso quizás... :o
es por la versión de las dll, eso es casi seguro
hoy cuando presumía un proyecto (editor fpg) a una maestra me sacó al cargar una imagen (upss!!!) y era porque lo compilé con la versión de juliode bennu cuando la librería image era la actual (compilada con la versión actual de bennu) entonces me sacó dandome un error de string (o algo así), creo que lo mismo te pasa :) saludos.
He desinstalado el Bennupack 1.7, con lo que me he quitado todas las DLL oficiales y se me han mantenido las no oficiales como sockets, ttf, Bennu3D, etc.
A continuación he reinstalado Bennupack 1.7 y ya funciona Bennu3D (SOLUCIONADO!!!)
Luego he sobreescrito la instalación con TODAS las DLL de la revisión 110, y entonces el error se repite... Voy a reportarlo en el hilo de la 1.0.0 RC.
Gracias!
hay que compilar bennu3d nuevamente... es la unica solucion... podrian probar copiar libbgdrtm.dll como bgdrtm.dll, pero dudo que funcione
Quotepodrian probar copiar libbgdrtm.dll como bgdrtm.dll, pero dudo que funcione
así es... no funciona... ya lo había probado desde hace mucho y no funcionaba.
Quotehay que compilar bennu3d nuevamente...
estoy de acuerdo :)
¿Y alguien sabe cómo volver a compilarlo con las nuevas DLL?
Quería dejarlo aquí como curiosidad: He probado con el Bennupack 1.2 y su versión de las DLL sí que sirve para la física de Irrlicht, me he llevado una gran alegría :D
Ya termine lo mas importante que eran filtrar las colisiones
con el motor de fisica, ahora este fin de semana compilare
las nuevas caracteristicas... para Bennu , y aprovechare para compilarlo
con la ultima version...
aqui las nuevas mejoras (demo disponible) no bennu aun..
disponible ejecutables para ver el progreso_:
http://irrlicht.sourceforge.net/phpBB2/viewtopic.php?t=34700&start=0&postdays=0&postorder=asc&highlight=
l1nk3rn3l, llevaba semanas pensando en ello cada dia, muchas gracias, procedo a descargar y probar y estoy dispuesto a colaborar en cualquier cosa que necesites. Por favor, mantennos al corriente de cualquier novedad.
Karma++;