Mundo Maker
¡Bienvenid@ a Mundo Maker!

¿Quieres aprender todo sobre el RPG Maker?



Regístrate y forma parte de Mundo Maker.
Conectarse

Recuperar mi contraseña

Temas importantes
----------------------------------------
Páginas con recursos RPG Maker
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
Afiliados
Estadísticas
Tenemos 4140 miembros registrados.
El último usuario registrado es ReyPizza.

Nuestros miembros han publicado un total de 84809 mensajes en 12071 argumentos.

[XP] Wecoc Palette Shifting

Ver el tema anterior Ver el tema siguiente Ir abajo

RPG Maker XP [XP] Wecoc Palette Shifting

Mensaje por Wecoc el 2016-11-11, 17:20

INTRODUCCIÓN

Wecoc Palette Shifting es un script que permite a las Bitmap del RPG maker un nuevo tipo de animación, basado en cambios de paleta dinámicos. Funciona con las Bitmap cargadas mediante Cache y que formen parte de un Sprite o Plane, es decir la gran mayoría.

Éste método permite en una sola imagen almacenar muchas variantes de la misma que no tienen por qué parecerse entre ellas, solo con cambios de paleta estáticos; a eso se le llama Palette Shifting. Pero no solo eso, sinó que se pueden cambiar dinámicamente logrando un efecto animado, efecto llamado Color Cycling. Óbviamente ámbos casos ahorran muchísimo espacio puesto que solo hay que cargar una única imagen de 1 frame y todo lo demás se hace por script. Ese control de la paleta de la imagen permite cosas increíbles; en algunos casos extremos en juegos de dispositivos móbiles donde el espacio es muy limitado, todos los fondos se cargan a partir del mismo pero con distintas paletas. Otro ejemplo es variar totalmente un fondo según la hora del día. Las imágenes resultantes pueden ser completamente distintas usando dos colores muy cercanos en una paleta (el ojo humano los verá como iguales) y totalmente distintos en otra.

Mi script es bastante rudimentario en cuanto a configuración por lo que no permite tan grandes efectos, pero con ciertas aplicaciones se pueden llegar a lograr cosas parecidas a las que se pueden ver aquí, hechas por el inventor del método, Mark Ferrari.

Palette Shifting

Spoiler:
Todo ésto está hecho a partir de una única imagen.






Color Cycling

Spoiler:
Ejemplos de animación lograda solo con cambios de paleta dinámicos.






Para quien quiera saber más enlazo una conferencia que habla sobre el tema y un vídeo con ejemplos:
Conferencia: http://www.gdcvault.com/play/1023586/8-Bit-8-Bitish-Graphics
Vídeo: https://www.youtube.com/watch?v=sOHM05pTO_w

En definitiva, lo que permite el script es asignar un nuevo tipo de "animación" totalmente independiente a la que te da el RPG maker, que puede funcionar en casi cualquier Bitmap (Battlebacks, Panoramas, Fogs...) y en la que se puede ampliar los frames que se quiera sin que aumente significativamente el tamaño del proyecto.

SCRIPT

Autor: Wecoc
Versión: 1.0
Requiere la librería SwapBitmap.dll (se encuentra en la carpeta del proyecto)
Agradecimientos a Orochii por pasar el método swap_colors a la librería SwapBitmap.dll

- Script disponible en la Demo -

Copiad el script y la librería SwapBitmap.dll a vuestro proyecto y configurad dentro del script las paletas dinámicas de las bitmap que os interesen.

Quien quiera puede hacer modificaciones y ampliaciones al script.
El script solo está disponible para XP pero no es difícil adaptarlo a VX y Ace.
Pese a eso yo no lo adaptaré porque no tengo esos programas.

DEMO

Wecoc Palette Shifting 1.0

La demo incluye los siguientes ejemplos:
- Cataratas (2 autotiles)
- Pokémon Muk versión Alola (1 chara)

CONFIGURACIÓN

Ésta es la parte más engorrosa y limitante, pero es lo que hay. Recomiendo tener unas mínimas bases de RGSS.

Palette Shifting

Defines la paleta con set en la parte de configuración del script (hay que usar uno para cada color dinámico dentro la paleta, así que puede llegar a ser muy tedioso) y al cargar la bitmap, en un llamar evento o bien en la misma configuración usas bitmap.run = false (ver eventos de la demo) para que quede fijada la paleta, es decir ésta por defecto tenga una paleta estática. Luego para cambiarle la paleta solo hay que hacer ésto donde sea: bitmap.frame = (número de frame)

Para obtener la bitmap se usa el Cache, por ejemplo: bitmap = RPG::Cache.autotile(nombre)

También se puede cambiar color a color sin configuración clonando la bitmap y luego aplicando el método swap_colors del siguiente modo:

src_bitmap = bitmap.clone
bitmap.swap_colors(src_bitmap, color A, color B)
bitmap.swap_colors(src_bitmap, color C, color D)

Eso cambia en la imagen el color A por el color B y el color C por el D.

Color Cycling

Defines la paleta con set o cycle en la parte de configuración del script (ver demo).

Métodos

set(nombre, color, paleta, frames)
Éste método define una paleta con todos los colores por los que pasará un color concreto (en caso de paleta estática equivale a todas los posibles recolors para ese color)
- nombre: Nombre de la imagen, por ejemplo "Graphics/Characters/001-Fighter01" para el bueno de Alexis.
- color: Color al que se le aplicarán los cambios ordenados según vienen en la paleta a continuación.
- paleta: Todos los colores por los que pasará el color.
- frames: Tiempo (frames) entre un cambio de color y el siguiente. Es opcional ponerlo, por defecto vale 1.

cycle(nombre, paleta, frames)
Éste método solo es un atajo del anterior, en el que a cada color de la paleta se le aplica un 'set' independiente con los demás colores de la misma paleta ordenados, por lo que corresponde a un ciclo cerrado entre esos colores.

A cada bitmap se le pueden asignar tantos set y cycle como se requiera.
Puede parecer bastante difícil, y de hecho puede llegar a serlo, pero en algunos casos es muy fácil configurar una paleta dinámica si ésta contiene pocos colores y frames.

Eso es todo, espero que se entienda la utilidad del script, cualquier duda o anotación posteadla aquí.
avatar
Wecoc
Administrador
Administrador



Créditos 9218

Gracias : 493

Volver arriba Ir abajo

RPG Maker XP Re: [XP] Wecoc Palette Shifting

Mensaje por Karlos el 2016-11-11, 19:58

Primero que nada, Muchas gracias Wecoc y Orochii por el Script aquí presentado, me parece muy interesante el método de Palette Shifting y el efecto Color Cycling. Me recuerda a un corto de Studio Ghibli "Iblard Jikan" al cual le tengo mucho aprecio. Me imagino usarlo en los charcos de lluvia o en las hojas de los arboles al viento. Wecoc sería interesante si lo desarrollara aún más, hasta conseguir algo así como lo que hizo Mark Ferrari. Pero entiendo el trabajo que conlleva hacerlo, así que no pasa nada si lo deja hasta aquí, de por si es un buen script y me alegra que se sigan desarrollando script para RPG Maker XP.
Me gustaría que en un futuro se desarrollaran adaptaciones para VX, Ace y MV. Lástima que no esté en sus planes.
Saludos y gracias por su trabajo

Iblard Jikan
https://rutube.ru/video/2ffbd41a25e6d6dfd70619b552d9a840/
avatar
Karlos
Iniciado
Iniciado

0/3

Créditos 31

Gracias : 9

Volver arriba Ir abajo

RPG Maker XP Re: [XP] Wecoc Palette Shifting

Mensaje por ICF-Soft el 2016-11-16, 18:17

Es muy bueno el script, pero creo que debería llamarse Colour Shifting en lugar de Palette Shifting, ya que maneja colores y no paletas.

Mark Ferrari usa paletas de 8 bits y pienso que también podría hacerse en el script.
http://www.effectgames.com/demos/worlds/
http://www.effectgames.com/demos/canvascycle/

En mugen y openbor se utilizan paletas tradicionales de modo que dos instancias distintas pueden usar la misma imagen con dos configuraciones de colores a la vez y hay gente que aplica un efecto similar en sus sprites, es decir, que al cambiar la paleta se cambie el diseño.

Y por eso sugiero el uso de paletas tradicionales y/o dinámicas si es posible.

Un saludo.

PD: Un par de tutoriales para hacer dll's y usarlas vendría bien.
avatar
ICF-Soft
Soñador
Soñador

0/3

Créditos 156

Gracias : 30

Volver arriba Ir abajo

RPG Maker XP Re: [XP] Wecoc Palette Shifting

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


Permisos de este foro:
No puedes responder a temas en este foro.