Autor Tema: [C#] MdE: Color  (Leído 2284 veces)

JaviCepa

  • Socio
  • Mega Jammer
  • ****
  • Mensajes: 433
  • Molas: 45
    • @JaviCepa
[C#] MdE: Color
« en: 22 de Junio de 2015, 10:29:20 am »
Voy a abrir una serie de hilos con métodos de extensión (los llamaré MdE para abreviar) para Unity/C#.
En esta primera edición... ¡Color!
Si queréis que añada alguno podéis usar este mismo hilo. Iré añadiendo más cuando tenga tiempo.

Código: [Seleccionar]
public static class ColorExtensionMethods {

public static Color Desaturate(this Color input, float amount) {
float average=Mathf.Sqrt(input.r*input.r*0.299f+input.g*input.g*0.587f+input.b*input.b*0.114f);
return Color.Lerp(input, new Color(average, average, average, input.a), Mathf.Clamp01(amount));
}

public static Color Invert(this Color input) {
return new Color(1-input.r, 1-input.g, 1-input.b, input.a);
}

public static Color Opacity(this Color input, float alpha) {
return new Color(input.r, input.g, input.b, alpha);
}

public static Color Filter(this Color input, Color filter) {
return new Color(input.r*(1-filter.r), input.g*(1-filter.g), input.b*(1-filter.b), input.a);
}

public static Color Posterize(this Color input, int levels) {
return new Color(Mathf.Floor(input.r*levels)/(levels-1), Mathf.Floor(input.g*levels)/(levels-1), Mathf.Floor(input.b*levels)/(levels-1), input.a);
}


}

Elena

  • Socio
  • Super Jammer
  • ***
  • Mensajes: 160
  • Molas: 23
Re:MdE: Color
« Respuesta #1 en: 22 de Junio de 2015, 06:37:59 pm »
¡Buena aportación Javi! :)

dabamaqui

  • New Jammer
  • *
  • Mensajes: 11
  • Molas: 3
  • Diseñador y programador de videojuegos
Re:MdE: Color
« Respuesta #2 en: 26 de Junio de 2015, 12:00:28 am »
¡Me encantó cuando nos enseñaste esto de los métodos de extensión en clase!. Es un acto de rebeldía reescribiendo las reglas XD.

Para lo de evitar usar Vector3 temporales cada dos por tres viene de lujo.

Gracias Javi!

JaviCepa

  • Socio
  • Mega Jammer
  • ****
  • Mensajes: 433
  • Molas: 45
    • @JaviCepa
Re:MdE: Color
« Respuesta #3 en: 26 de Junio de 2015, 12:33:21 am »
Un placer! Yo también tuve un subidón cuando los descubrí en su día :) están de lujo!

RicoAlbe

  • Socio
  • Super Jammer
  • ***
  • Mensajes: 221
  • Molas: 40
Re:MdE: Color
« Respuesta #4 en: 26 de Junio de 2015, 11:05:04 am »
Creo que deberías hacer un hilo llamado «MdE: ¿Qué son?», por si alguien no sabe lo que son. (Es para un amigo).

LucasGZP

  • Socio
  • Super Jammer
  • ***
  • Mensajes: 135
  • Molas: 20
    • lucas-gonzalez.me
Re:MdE: Color
« Respuesta #5 en: 26 de Junio de 2015, 11:37:36 am »
Creo que deberías hacer un hilo llamado «MdE: ¿Qué son?», por si alguien no sabe lo que son. (Es para un amigo).

Mde es de toda la vida Mear De Espadas.


Gracias por los métodos, Javi. Como decís tienen una utilidad increíble.

JavierOrtiz

  • Jammer
  • **
  • Mensajes: 86
  • Molas: 8
Re:MdE: Color
« Respuesta #6 en: 26 de Junio de 2015, 11:02:40 pm »
Este hilo es oro puro jaja, muchas gracias!  :D

JaviCepa

  • Socio
  • Mega Jammer
  • ****
  • Mensajes: 433
  • Molas: 45
    • @JaviCepa
Re:MdE: Color
« Respuesta #7 en: 01 de Julio de 2015, 12:00:16 pm »
Creo que deberías hacer un hilo llamado «MdE: ¿Qué son?», por si alguien no sabe lo que son. (Es para un amigo).

Hecho: http://foro.malagajam.com/index.php?topic=83.0

Elena

  • Socio
  • Super Jammer
  • ***
  • Mensajes: 160
  • Molas: 23
Re:[C#] MdE: Color
« Respuesta #8 en: 23 de Agosto de 2015, 11:49:57 pm »
Javi! Esto de los MdE es una droga, ¿Para cuando la próxima dosis? :)

JaviCepa

  • Socio
  • Mega Jammer
  • ****
  • Mensajes: 433
  • Molas: 45
    • @JaviCepa
Re:[C#] MdE: Color
« Respuesta #9 en: 24 de Agosto de 2015, 03:49:53 pm »
Javi! Esto de los MdE es una droga, ¿Para cuando la próxima dosis? :)

buena pregunta... si se os ocurre algún tema puedo hacer algunos