Karoshi MSX Community

MSX Actualidad => General => Mensaje iniciado por: aorante en 20 de Junio de 2011, 01:55:46 pm



Título: Editor de sprites MSX2 (V9938 y superiores)
Publicado por: aorante en 20 de Junio de 2011, 01:55:46 pm
Quiero hacer una herramienta específica para dibujar sprites para el VDP de los MSX2 y superiores.
Será para win y utilizaré .net

Se que hay dos modos (corregirme si me equivoco):
> un color por cada linea.
> tres colores, usando un modo que utiliza dos sprites.

¿donde puedo conseguir información de como funciona este segundo modo?

he buscado en estos foros, pero no he encontrado nada  :P

cualquier propuesta de funcionalidades que os gustaría que incluyera, me lo comunicáis.


Título: Re: Editor de sprites MSX2 (V9938 y superiores)
Publicado por: guantxip en 20 de Junio de 2011, 02:00:10 pm
Pues sí que se habló de este tema aquí. No recuerdo si era una suma de los colores que se solapaban pero creo que con función XOR.

Mírate el AGE (DDgraph) donde está el icono de copy, botón derecho del ratón y hay varios tipos de copy, el copy transparente que lo uso muy a menudo y el que creo al que te refieres que no lo he probado nunca.

Si consigues pasar el AGE a Windows te hago un monumento.  ;D ;D ;D ;D


Título: Re: Editor de sprites MSX2 (V9938 y superiores)
Publicado por: SapphiRe_MSX en 20 de Junio de 2011, 02:05:04 pm
Quiero hacer una herramienta específica para dibujar sprites para el VDP de los MSX2 y superiores.
Será para win y utilizaré .net

¿Por qué no en java? Así se podría usar también en linux...

Citar
Se que hay dos modos (corregirme si me equivoco):
> un color por cada linea.
> tres colores, usando un modo que utiliza dos sprites.

Pues te tengo que corregir. Los dos modos que indicas son los siguientes:

-Modo 1: equivalente a los sprites en MSX1. Es decir: un color por plano y sólo cuatro planos en la misma línea horizontal.
-Modo 2: este es el modo extendido que sólo funciona en MSX2 y superior. Sus características son:

1) Cada línea del plano de un sprite puede tener un color. Esto implica que existe una tabla de colores de sprites que se sitúa SIEMPRE 512 bytes delante de la tabla de atributos de sprites. Además, eso implica que el cuarto byte de la tabla de atributos (el que controla el color del sprite) ya no tiene efecto alguno.
2) Se pueden mezclar sprites, pero el límite no está en 2 sprites, sino que es ilimitado (aunque carezca de sentido mezclar más de 4 sprites). Al mezclar dos sprites funcionan como bitplanes, es decir, que si coinciden dos pixels a 1, el color resultante es un OR de los colores de esos pixels. Por ejemplo, si tenemos un sprite con una línea de color 4 y lo mezclamos con otro sprite de forma que esa línea coincida con otra de color 3, tendremos que los pixels que estén a 1 en ambas líneas tendrán color 7. Eso significa que la paleta de colores deberá ser reordenada para poder obtener los colores que deseemos.

Citar
cualquier propuesta de funcionalidades que os gustaría que incluyera, me lo comunicáis.

Un reordenador automático de paleta estaría muy bien :D


Título: Re: Editor de sprites MSX2 (V9938 y superiores)
Publicado por: aorante en 20 de Junio de 2011, 02:05:58 pm
Si consigues pasar el AGE a Windows te hago un monumento.  ;D ;D ;D ;D
Noooo  :D
Seria mucho trabajo.

Yo tenia en mente hace bastante tiempo, hacer un port del Deluxe Paint para MSX.
y hay quien me ha pedido una versión de este para PC/win, (ya hay una versión MS-DOS).

Un editor de sprites es relativamente sencillo.


Título: Re: Editor de sprites MSX2 (V9938 y superiores)
Publicado por: aorante en 20 de Junio de 2011, 03:05:51 pm
¿Por qué no en java? Así se podría usar también en linux...

He programado en Java, pero hace bastantes años que no lo toco y la parte de la interfaz gráfica aunque se que ha mejorado bastante lo veo algo duro.
En .net es muy sencillo.
De todas formas me instalaré la ultima versión del netbeans y le echare un vistazo...


Citar
Al mezclar dos sprites funcionan como bitplanes, es decir, que si coinciden dos pixels a 1, el color resultante es un OR de los colores de esos pixels.
Como el Amiga!
un poco complicado... No pensaban mucho en los programadores, los hacedores de hardware..  :P

Citar
Un reordenador automático de paleta estaría muy bien :D
si me das más detalle de como ha de funcionar la reordenación, lo podría hacer.

Gracias @SapphiRe por la info!  :D


Título: Re: Editor de sprites MSX2 (V9938 y superiores)
Publicado por: SapphiRe_MSX en 20 de Junio de 2011, 03:34:13 pm
Citar
Un reordenador automático de paleta estaría muy bien :D
si me das más detalle de como ha de funcionar la reordenación, lo podría hacer.

Básicamente se reduce a resolver un sistema de ecuaciones, que puede tener solución o no. Si tiene solución debería salir una función de reordenación de paleta, si no tiene solución significaría que la mezcla propuesta de sprites no es compatible con la paleta :D

Primero a ver si tienes una versión funcional y luego ya miramos de como diseñar ese reordenador :D


Título: Re: Editor de sprites MSX2 (V9938 y superiores)
Publicado por: e_sedes en 20 de Junio de 2011, 06:20:12 pm
reordenador :D
eso es como el BlueMSX, no? Un ordenador dos veces... ;D ;D ;D
(lo siento, me salió sin querer  ;D ;D ;D)


Título: Re: Editor de sprites MSX2 (V9938 y superiores)
Publicado por: pitpan en 20 de Junio de 2011, 06:30:19 pm
HTML5 + JavaScript son una opción perfecta para algo así. De hecho, ya está por ahí el tinysprite, que funciona bastante bien, y emplea más o menos esta tecnología.

Si no recuerdo mal, la operación lógica entre los bits de color es OR, pero no me hagáis mucho caso. De esta manera, con 2 sprites multicolores superpuestos se pueden conseguir hasta 3 colores por línea. Véase el SEX BOMB BUNNY como ejemplo ;)