Coonvertir paleta RGB a ULAPLUS

Software para o relacionado con el core ZX Spectrum / Software for or related to the ZX Spectrum core
Avatar de Usuario
Radastan
Mensajes: 389
Registrado: 05 Oct 2015, 14:39

Re: Coonvertir paleta RGB a ULAPLUS

Mensaje por Radastan » 16 Dic 2017, 10:11

Probaré conversión por tabla, así delimito por rangos cada color (un coñazo, una tabla de 256 rangos, pero es lo que hay). Lo de reducir a 16 colores es muy fácil, simplemente hay que anotar para cada color cuantos píxels lo usan y quedarte con los 16 que más hay, igualando el color al más cercano del resto.

hikoki
Mensajes: 307
Registrado: 21 Feb 2016, 01:38

Re: Coonvertir paleta RGB a ULAPLUS

Mensaje por hikoki » 16 Dic 2017, 12:10

Y cómo se haría eso? No encuentro tutoriali en youtubi.
Oss-tiopic: el radastaniac mode podría ser útil para hacer juegos anaglíficos con gafapasta 3D

Avatar de Usuario
Uto
Mensajes: 1394
Registrado: 17 Dic 2015, 16:39

Re: Coonvertir paleta RGB a ULAPLUS

Mensaje por Uto » 16 Dic 2017, 12:24

Radastan escribió:Probaré conversión por tabla, así delimito por rangos cada color (un coñazo, una tabla de 256 rangos, pero es lo que hay). Lo de reducir a 16 colores es muy fácil, simplemente hay que anotar para cada color cuantos píxels lo usan y quedarte con los 16 que más hay, igualando el color al más cercano del resto.
Teóricamente cierto, pero en la práctica los ojos azules de alguien podrían acabar siendo rosas porque es el color más cercano y el azul apenas se usa porque solo está en los ojos :-D

Es un ejemplo, no me digáis ahora que seguro que hay un color más cercano al azul que el rosa ;-)

hikoki
Mensajes: 307
Registrado: 21 Feb 2016, 01:38

Re: Coonvertir paleta RGB a ULAPLUS

Mensaje por hikoki » 16 Dic 2017, 12:37

Este software nos lo tiene que enseñar Radastan porque promete. Lo ideal seria un colorpicker como el de Xpal que te mostrase una gama de colores ulaplusianos próximos a cualquier color rgb capturado al vuelo.

Avatar de Usuario
Radastan
Mensajes: 389
Registrado: 05 Oct 2015, 14:39

Re: Coonvertir paleta RGB a ULAPLUS

Mensaje por Radastan » 19 Dic 2017, 11:50

Arreglado!
He cambiado r1, g1, y b1, a double.
Me he creado r2, g2, y b2, en integer para pasar los valores resultantes con redondeo (int).

Código: Seleccionar todo

                    s =  linea.split(" ");
                    r1 = (Integer.parseInt(s[0]) / 36);
                    g1 = (Integer.parseInt(s[1]) / 36);
                    b1 = (Integer.parseInt(s[2]) / 85);
                    r2 = (int) r1;
                    g2 = (int) g1;
                    b2 = (int) b1;
                    jSlider1.setValue(r2);
                    jSlider2.setValue(g2);
                    jSlider3.setValue(b2);
A partir de un string con valores RGB con esto se coloca perfectamente unos sliders a sus valores equivalentes de ULAPLUS.
El problema estaba en que hacía dos conversiones distintas al seleccionar y modificar el color en cada cuadro, al pasarlo por los sliders he unificado el cambio en un único sitio y he dado con el error.

Para convertir los valores de los sliders al byte de paleta ULAPLUS:

Código: Seleccionar todo

        int red = jSlider1.getValue();
        int green = jSlider2.getValue();
        int blue = jSlider3.getValue();
        int color_valor = (red << 2) | (green << 5) | blue;
¡Ya soy capaz de leer paletas PSP (Paint Shop Pro)!
Ahora el proceso inverso y la herramienta de edición de paletas estará terminada. El conversor ya es más fácil con lo aprendido.
Imagen1.png
Imagen1.png (16.49 KiB) Visto 5913 veces

Avatar de Usuario
chernandezba
Mensajes: 841
Registrado: 02 Oct 2015, 23:35

Re: Coonvertir paleta RGB a ULAPLUS

Mensaje por chernandezba » 19 Dic 2017, 13:10

Recordad que el valor azul, que es de sólo 2 bits, sigue la fórmula (según el mismo Andrew Owen):
"
The missing lowest blue bit is set to OR of the other two blue bits (Bb becomes 000 for 00, and Bb1 for anything else)
"
----

ZEsarUX
ZX Second-Emulator And Released for UniX
https://github.com/chernandezba/zesarux

Avatar de Usuario
Radastan
Mensajes: 389
Registrado: 05 Oct 2015, 14:39

Re: Coonvertir paleta RGB a ULAPLUS

Mensaje por Radastan » 19 Dic 2017, 13:41

Ya lo sé. :mrgreen:

Avatar de Usuario
chernandezba
Mensajes: 841
Registrado: 02 Oct 2015, 23:35

Re: Coonvertir paleta RGB a ULAPLUS

Mensaje por chernandezba » 19 Dic 2017, 14:03

Radastan escribió:Ya lo sé. :mrgreen:
:chocala!:
----

ZEsarUX
ZX Second-Emulator And Released for UniX
https://github.com/chernandezba/zesarux

Responder