Iniciar sesión

Ver la versión completa : Continuan los problemas con los colores



Weif Raider
29/04/2005, 15:38
Hola. De nuevo al pintar las imágenes en la Gp sale con colores raros.

Utilizo una paleta de 8 bits. Aquí pongo los pasos que sigo por si hago algo mal. Este procedimiento es que me aconsejó Puck.

1º. Creo los sprites. 256 colores
2º. Creo una imagen con todos los sprites a modo de collage.
3º. Con el gp32Converter, paso todas las imágenes (sprites) a "fichero.h"
4º. De nuevo con el gp32Converter paso la imagen del collage (la que contiene todos los sprites) y genero la paleta de colores.
5º. Establezco la paleta generada en la Gp32.

Pues así, los colores salen mal. Los amarillos salen azules. Los blancos, azul claro, etc...

Realizando pruebas, me creaba un sprite que fuera un círculo de un determinado color. Hacía el mismo procedimiento, y sale perfecto. Cuando se trata de un sólo color, lo pinta bien, pero cuando junto sprites, ya se jode todo.

seikion
29/04/2005, 16:00
A ver... yo de programar mas bien nada, pero...
Las paletas de los sprites tienen el mismo orden que la paleta guardada? Por que si no deberias aplicar la paleta a todos los sprites... pienso yo.

Aiken
29/04/2005, 16:45
Te falta aplicar la paletta (desde el phoshop) a los sprites antes de convertirlos a .h ;) :rolleyes: :)


- desde el photoshop, con la imagen collage ---> grabar paletta de colores
- abrir una auna las imagenes -> cargar paleta de colores (la que has grabado)

ahora ya sigues con el paso de convertir a .h


Aiken

Weif Raider
01/05/2005, 11:41
oks.

Muchas gracias, probaré así a ver ;)

Puck2099
01/05/2005, 11:45
Es lo que dice Aiken, tienes que aplicarle la paleta del collage a todas las imágenes para tener en todas los mismos colores en el mismo orden. :)

Saludos

oankali
02/05/2005, 11:34
Otra manera de hacer, para no tener que ir actualizando la paleta de tus sprites en utilizar tu collage en el programa, con su paleta incluida. O sea un solo gran bitmap con todos los sprites dentro.

Luego en tu archivo de cabecera .h, indicas las coordenadas de cada sprite.
Por ejemplo:



// Tamaño del bitmap completo
#define sprites_width 320
#define sprites_height 240

// Coordenadas del sprite 1
#define sprite1_x 50
#define sprite1_y 60
#define sprite1_width 16
#define sprite1_height 32

...


Luego en cada función del SDK utilizarías todas la coordenadas indicadas.

¿Qué consigues con esto?
Solo tener que tratar con una paleta y un bitmap.

¿Que necesitas poner más sprites?
Ponlos en algún lugar vacío del bitmap, sin mover los existentes.

¿Que el bitmap se te ha quedado pequeño?
Lo haces más grande sin mover los sprites existentes, y corriges sus dimensiones en el .h

¿Que necesitas otros colores?
Si no has completado la paleta, agrega los nuevos colores sin problemas.
Si ya está completa, redistribuye los colores, vigilando que los sprites no se vean demasiado afectados y agrega los nuevos colores.

La cosa es tener bien organizado tu bitmap, para que no te queden los sprites totalmente desparramados, pero que tampoco te quede le bitmap demasiado vacío para no usar memoria innecesariamente.

Además, si preparas otro bitmap, con las mismas dimensiones y los sprites colocados exactamente de la misma manera, puedes cambiar completamente los dibujos para crear un nivel diferente y en el programa solo cambiarías el puntero al bitmap a utilizar.

En fin, era una idea, ya que por el momento solo trabajo en 16 bits y no tengo estos problemas :)

Oankali.

Propeller
02/05/2005, 11:47
En fin, era una idea, ya que por el momento solo trabajo en 16 bits y no tengo estos problemas :)

Pero mira que es sibarita el tio :risas:

:brindis:

Propeller