Regresar   Foro de marcianitos.org > Emuladores y programas de todo tipo > Otros programas para la recreativa

 
 
Old 25-jul-2007, 15:58   #1
Macarro
Administrador
 
Avatar de Macarro
Proyecto: Visor 3D de cajas de juegos

Secreto:


Bueno, por "culpa" de Lord Hiryu voy a intentar reprogramar mi visor 3D de cajas de juegos (un proyecto viejo).

Si alguien con windows quiere probarlo en su ordenador, aquí está la versión original (descomprimir y ejecutar). Se que en su día fallaba en bastantes ordenadores, no se por qué, a mi me iba bien.

LOS CONTROLES SON Z X C PARA GIRAR LA CAJA, ESC PARA SALIR... Y NO RECUERDO CÓMO SE HACÍA ZOOM, TAL VEZ CON + Y - EN EL TECLADO NUMÉRICO.



El funcionamiento básico del programa que voy a retomar debería ser:

1.- Funcionamiento completo desde línea de comandos, algo del estilo de:

Code:
caja3d front back left right top bottom
donde "front" "back" left" "right" "top" "bottom" serían las rutas a las diversas imágenes de la caja. Las imágenes se deberán llamar como la rom para así llamarlas cómodamente desde el front end.

2.- Funcionamiento al menos en 640x480 (si fuese posible 320x240 también, cojonudo).

3.- Puesto que para el dibujado y giro de la caja se usarán las características 3D de la tarjeta gráfica, conviene reducir las imágenes antes de su utilización por el programa. Mostrar una caja con 6 imágenes a 300 dpi es una locura. No se si será posible hacer una reducción al vuelo

4.- Controles de giro y zoom configurables (que al menos funcione con teclado). Con dos ejes de giro y zomm+- creo que es suficiente.

Y listo... no se me ocurre nada más ahora.

Si tenéis ideas, sugerencias o lo que sea, todo será muy bien recibido .


**********************************************************
AVANCES SOBRE FIJO (REPROGRAMANDO DESDE CERO EL VISOR)
**********************************************************







Funcionamiento básico:

El programa funciona desde línea de comandos ya que está pensado para lanzarse desde un front-end genérico (MAMEWAH, MALA, etc...). Normalmente, los front-ends permiten tener "command lines" alternativos para cada lista de juegos. De ese modo, podríamos configurar que con el botón 1 lanzáramos un juego y que con el botón 2 viéramos su caja en 3D.

El command line de "3D Box Viewer" es:

Code:
3DBV.exe config.ini [juego] DEBUG
  • config.ini - Indica el fichero de configuración a ejecutar. Así podemos tener una configuración diferente para cada sistema. Las medidas por defecto de una caja de SNES no son las mismas que para una caja de Megadrive, por ejemplo.
  • [juego] - Aquí pondremos el nombre del juego del que queremos ver la caja. No es necesario poner la extensión de la ROM, sólo su nombre exacto.
  • DEBUG/CAPTURE - En el caso de que queramos que el programa nos genere un archivo de texto indicando los errores que ha encontrado, debemos escribir DEBUG en mayúsculas al final del commandline. Y si ponemos CAPTURE, el programa arrancará y grabará una captura de pantalla nada más se ejecute y se cerrará. Esto es útil para crear paquetes de imágenes de cajas en 3D. Al arrancarse en modo CAPTURE, el programa automáticamente se pondrá en modo DEBUG, generando así el fichero .log que indica los fallos.

Logros:

Funcionamiento desde línea de comandos [OK]: 3DBV.exe configuracion.ini [juego]

Lectura de configuración desde fichero .ini [OK]

Montaje general de la escena (caja, fondo, iluminación) [OK]

Obtención de dimensiones de la caja a partir de las imágenes aportadas [OK] (en el caso de que las imágenes no sean suficientes, se toman unos valores por defecto desde el fichero de configuración.
   
Old 25-jul-2007, 16:04   #2
Fuents
Administrador
 
Avatar de Fuents
Descargo.... ejecuto y.... Invalid Memory Address.... juas...
   
Old 25-jul-2007, 16:11   #3
Macarro
Administrador
 
Avatar de Macarro
Joder, no lo entiendo, a mi me va de lujo . Tienes directx7 instalado? (seguro que no es eso, pero por si acaso...)

De todos modos, voy a poner unas capturas en un momento.
   
Old 25-jul-2007, 16:25   #4
Fuents
Administrador
 
Avatar de Fuents
el 7 no.... tengo el 9c para desarrolladores..... aparte del Framework 2.0...

Con que lo has compilado?
   
Old 25-jul-2007, 16:28   #5
Macarro
Administrador
 
Avatar de Macarro
AÑADIDAS CAPTURAS.

Pues nuevamente, como mis dotes de programador en la era windows son nulas, lo programé en blitz3D. En teoría, con tener el directx7 instalado ya debería funcionar todo .

Esto es lo que más me echa para detrás para usar esto, que es muy sencillo y tal, pero luego no sabes por qué cojones no funciona en algunos ordenadores.

edito: yo también tengo la última versión del directx instalado y me va , 7 es el mínimo requerido.
   
Old 25-jul-2007, 16:30   #6
Paul Sernine
Moderador
 
Avatar de Paul Sernine
Yo añadiría el control mediante joystick, para que todo el mundo pudiera utilizarlo en su maca.

También estaría chulo que lo incluyeras incorporado en el alpha front-end, de manera que pudiera incluirse en un layout.
   
Old 25-jul-2007, 16:33   #7
Fuents
Administrador
 
Avatar de Fuents
interpreto que el programa no controla las posiciones de memoria e intenta usar una que ya esta en uso.. por eso da error..... tambien puede ser que Le Chuck este haciendo de las suyas...
   
Old 25-jul-2007, 16:33   #8
Macarro
Administrador
 
Avatar de Macarro
Eso para más adelante, que el alpha front-end vuelve a estar parado en el mismo sitio que la otra vez, los putos listados de juegos .

Lo del control por joystick es fácil de añadir (creo).
   
Old 15-ago-2007, 13:29   #9
Macarro
Administrador
 
Avatar de Macarro
Bueno, pues ya hay avances, pocos, pero sobre fijo. Estoy reprogramando desde cero el visor y espero que ahora sea más compatible que antes a la vez que de uso sencillo.

De momento ya he conseguido que el visor funcione desde línea de comandos:

3DBV.exe configuracion.ini [juego]

lo de permitir lanzar una confiruación determinada es para poder elegir, por ejemplo, qué imagen de fondo se usa para ver las cajas en 3D. Así podríamos tener un fondo diferente para las cajas de SNES y otro para las de Megadrive.

Otra opción que permite el fichero de configuración es definir el grosor por defecto de las cajas. En el caso de que no se encuentre ninguna imagen lateral (que son jodidas de encontrar), se le asigna a la caja un grosor específico que podrá ser diferente para cada sistema (como ocurre en la realidad).

Todavía no hay resultados visibles que mostrar, en cuanto tenga algo aparecerá por aquí.
   
Old 16-ago-2007, 17:16   #10
Macarro
Administrador
 
Avatar de Macarro
Ayer le metí un buen adelantón a esto. Visible hay poco, pero el programa está funcionando de un modo muy sólido y es bastante configurable.

De lo que estoy más satisfecho es del sistema de log que le estoy poniendo. Si arrancamos el programa con un DEBUG en la línea de comandos nos genera un archivo .log con información de todo lo que hace el programa (al estilo del mamewah) y así es más o menos fácil saber qué es lo que falla.

Acabo de grabar un vídeo pero al subirlo a imageshack, con la compresión apenas se ve bien. Lo que está debajo de la esfera es una caja de juego (sin texturas y con dimensiones estandard) girando. Por alguna razón, la luz no ilumina a la caja, problema de materiales, creo, así que apensa se ve una sobra detrás de la bola.

http://img531.imageshack.us/my.php?image=mvi0824ea5.flv

Y aquí, como ejemplo, el fichero de configuración (todavía hay que añadir más parámetros para elegir de dónde viene la luz, etc...

Code:
#3D: Box Viewer configuration file
#VIDEO CONFIGURATION
#   Resolution ( 640x480, 800x600, 1024x768 )
#   Color Depth ( 0, 16, 24, 32) *0 uses the highest depth available. 
#   Mode ( windowed, fullscreen, windowed-scaled )
#   Frames per second ( 30 recommended )
Resolution: 640x480
Color Depth: 16
Mode: windowed
Frames per second: 30
#BOX CONFIGURATION
#   Max texture size: Máximum size in pixels of large side of a texture image ( use lower values if your graphic card doesn´t have enough power )
#   Box default depth: The larger side of a box will be 100 units, here you can set the deafult depth for the box (it´s used in case no side image is found)
#   Front, Back, Top, Bottom, Left, Right colour of box sides (used in case no image is found)
#   Background Color: Colour used in the background (in case no background image is defined)
#   Background Image: Image to be displayed as background (it should be at the same resolution you are using)
Max texture size: 500
Box default depth: 20
Front Color: FF9999
Back Color: 9999FF
Top Color: FF9900
Bottom Color: FF4300
Left Color: FF99FF
Right Color: FF9932
Background Color: 000000
Background Image: fondo1.jpg
#FOLDER CONFIGURATIONS
#   Here you must put the folders containing your images for front, back,
#   top, bottom, left and right...
Front folder: Z:\ COSAS SUELTAS\3D Box Viewer\front
Back folder: Z:\ COSAS SUELTAS\3D Box Viewer\back
Top folder: Z:\ COSAS SUELTAS\3D Box Viewer\top
Bottom folder: Z:\ COSAS SUELTAS\3D Box Viewer\bottom
Left folder: Z:\ COSAS SUELTAS\3D Box Viewer\left
Right folder: Z:\ COSAS SUELTAS\3D Box Viewer\right