Image_blend - Schwarz weiß?

  • GM 8
  • Also ob du es mit einem extra Sprite oder durch GML lößt, wäre eigentlich egal.
    Mit der Methode die ich kenne musst du sowieso ein neues Sprite erstellen:

    GML-Quellcode

    1. // sprite_create_grayscale(ind)
    2. var spr,w,h,xx,yy,sur,grayscale;
    3. spr = argument0;
    4. w = sprite_get_width(spr);
    5. h = sprite_get_height(spr);
    6. xx = sprite_get_xoffset(spr);
    7. yy = sprite_get_yoffset(spr);
    8. sur = surface_create(w,h);
    9. surface_set_target(sur);
    10. draw_clear(c_white);
    11. grayscale = sprite_create_from_surface(sur,0,0,w,h,false,false,false,false,xx,yy);
    12. sprite_set_alpha_from_sprite(grayscale,spr);
    13. draw_clear(c_black);
    14. draw_sprite(grayscale,0,xx,yy);
    15. surface_reset_target();
    16. sprite_delete(grayscale);
    17. grayscale = sprite_create_from_surface(sur,0,0,w,h,false,false,false,false,xx,yy);
    18. surface_free(sur);
    19. return grayscale;
    Alles anzeigen
    Habs gerade geschrieben und getestet. Beispiel im Anhang.
    Dateien
    • test.zip

      (40,01 kB, 255 mal heruntergeladen, zuletzt: )