Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Toy jodido. (¿Cómo cargar 3ds?) (BSP?) (Portales?) Un poco d

Iniciado por Doom Carmak, 01 de Enero de 1970, 01:00:00 AM

« anterior - próximo »

Doom Carmak

                                Pos eso, la primera pregunta radica en como puedo programar un cargador de archivos 3ds de max, xq los ase ocupan un eye del face.
Es para VC++ 6.0 en openGL, y a poder ser tmb en DX. Por cierto, ¿cómo puedo programar mi motro gráfico para openGL y DX simultáneamente sin joder el código k tengo hecho ahora. Ahora es solo para GL, el código está basado en clases. joder! tengo ideas sobre esto pero no estoy seguro de hacerlo bien.
La otra cuestion era sobre lo del BSP y el portal redering, ya k por ahora mi engine no tiene ni pizca de optimización :triste:
Sé en k consisten los dos procedimientos, incluso tengo un tutorial muy completo sobre BSP (pero es en ingles!!). Alguien sabe si lo hay en castellano?
Sobre lo del portal keria referir algo:
recuerdo un post del admirado señor berserker
(o tal vez fuese drácula) en el k decia como aplicar ésta tecnica de construcción y rederizado de niveles. Yo habia pensado en una técnica basada en triggers (cubos invisibles k al atravesarlos accionamos algo)tipo quake. Osea, imaginad dos habitaciones separadas por un pasillo. La interseccion obviamente no puede ser recta (directa), debe de ser en L, es decir, k el pasillo k las separa deber ser en dos partes. Bien, entonces tenemos un pasillo k es como si fuesen 2 rectas. Pues entre medio de cada recta ponemos un trigger, para cargar sus respectivas habitaciones y objetos, luces, etc...
No se, decid argo...
Es mi primer post y estoy encantado de estar con vosotros. Intentaré ayudar en todo lo posible a partir de ahora.
GRACIAS

                               
oding is fun!

NeLo

                                Hi.

Pues en el cargador de 3ds lo único que tienes que hacer es leer el archivo 3ds, ayudadndote de algun spec de la estructura de datos que tiene, e ir rellenando los datos de tu geometria con los del archivo.
En GameDev creo recordar que hay un tutorial de carga de 3ds con DirectX, aunque tambien puedes buscar las especificaciones del formato.

El portal rendering no funciona con triggers. Para saber si tienes que renderizar un sector, tienes que mirar si hay algun portal dentro del frustum actual, y si los hay, hay que hacer un nuevo fustrum por cada portal, de manera que las dimensiones del nuevo frustum sean las del portal, para despues mirar si desde ese nuevo frustum se ven nuevos portales, y si es asi, repetir el proceso. De esta manera, sabiendo los portales que se ven desde la posicion de la camara, sabras que sectores son visibles.

Espero haberme expresado con claridad, si algun termino no lo conoces, o quieres que explique algo mas detalladamente, me lo dices.

Puedes mirar un tutorial bastante bueno en flipcode sobre el tema de portales.

Y si alguien me tiene que corregir, que lo haga :ojo:

Byez.
                               
Drowning deep in my sea of loathing

KILE

                                Sobre lo del exporter, pues si la verdad que los .ASE son una cagada por su tamaño, y además tienen muchas limitaciones al exportar. Yo ahora mismo estoy desarrollando un plugin para mi motor 3D que tenia pensado poner publico en breve (Tanto el motor como el plugin :lengua:) El plugin lo puedes hacer mirandote del MAX SDK. De todas formas si lo que buscas es no pringarte y   tener un formato pequeño, pues puedes coger el que genera mi plugin xq lo he hecho expresamente para ese fin. A parte tiene características adicionales q no soporta el ASE. Algunas de las carac terísticas que tiene son: Soporta Bones (Skin de modelos), animaciones tanto de keys como de samples, con interpolaciones lineales, bezier y TCB (Todas las del MAX), diferencia entre geometría de escena (BSP/Octrees) y normal, y no se algunas mas :lengua:
ah y una capturilla: http://usuarios.tripod.es/andromeda_studio...arga/plugin.jpg

Byez.                                

Ithaqua

                                Se parece mucho al mío, se ve que los 2 nos basamos mucho en el del .ASE :ojo:

El que llevo usando un par de años:
http://ithaqua.stravaganza.org/images/pta2.jpg

Y uno nuevo que todavía le faltan cosas:
http://ithaqua.stravaganza.org/images/nuev...xportertemp.jpg

Saludos,
        Ithaqua.
                               
thaqua^Stravaganza
http://ithaqua.stravaganza.org

Ithaqua

                                Y este es un test estúpido para ver si funciona mi firma :sonriendo:

                               
thaqua^Stravaganza
http://ithaqua.stravaganza.org

Ithaqua

                                Sobre la pregunta, que se me olvidaba O:)
Puedes por ejemplo hacerte un conversor .ASE -> tu formato, sería lo mas sencillo yo creo.
En cuanto a lo de OpenGL y Direct3D no te lo recomiendo, yo lo hice así hace bastante tiempo y da muchos mas problemas que cosas positivas. Y cuando digo que antes eran muchos, imagínate ahora :sonriendo:
Se puede llegar a hacer, pero
a) Impide exprimir toda la funcionalidad del API.
B) Impide optimizar correctamente
c) Es un curro enorme de hacer + mantener + ampliar
d) No sacas nada excepto mas soporte, pero hoy día las tarjetas tienen tanto drivers de OpenGL como de Direct3D

Un saludo

                               
thaqua^Stravaganza
http://ithaqua.stravaganza.org






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.