sprite from surface transparenz

  • GM 8

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • sprite from surface transparenz

    Hi leute!
    Wiedermal eines meiner "Surfaceprobleme" mit denen ich euch belästigen werde. :P

    Habe diesmal wieder ein transparenzproblem das ich überhaupt nicht nachvollziehen kann...

    GML-Quellcode

    1. //global.blockSprites = ds_list_create();
    2. var text_charset;
    3. text_charset = background_add("./data/gui/charset.png",true,false);
    4. var spriteSurface_charset;
    5. spriteSurface_charset = surface_create(16 *8,16 *8);
    6. surface_set_target(spriteSurface_charset);
    7. draw_clear_alpha(c_white,0);
    8. draw_background(text_charset,0,0);
    9. surface_reset_target();
    10. var t;
    11. t = 0;
    12. for (i = 0;i<16;i+=+1){//von oben nach unten
    13. for (g = 0;g<16;g+=+1){//gehe von links nach rechts
    14. global.text_charset[t] = sprite_create_from_surface(spriteSurface_charset,g*8,i*8,8,8,false,false,0,0);
    15. t+=+1;
    16. }
    17. }
    18. surface_free(spriteSurface_charset);
    19. background_delete(text_charset);
    Alles anzeigen


    Es geht um volgendes:
    Ich lade ein Tileset mit background_add in den Game Maker.
    Diesen Background lasse ich auf eine Surface zeichnen, vo nder ich schritt für schritt die einzelnen Tiles als Sprites rausschneide.

    Das Funktioniert eigentlich recht gut. Bis auf eine kleinichkeit.
    Wenn das entsprechende Tile komplett transparent ist (sprich: es keinerlei sichtbaren Pixel auf der Fläche hat) dann wirkt die Transparenz des Tiles nicht und das Spiel schneidet
    aus irgendeinem Grund ein schwarzes "rechteck" aus statt ein "transparentes" Feld.
    Habe versucht die Surface mit "draw_clear_alpha(c_white,0);" vorher noch zu "reinigen" mit dem Ergebniss, dass das scharze Rechteck dann weiß wurde...
    Bei Tiles die wenigstens 1 Pixel auf der Fläche haben , wird die restliche transparente Fläche korrekt erkannt.

    Ich darf im Prinzip kein Transparentes Tilteset haben ,da sonst das Game die Fläche komplett mit schwarz oder Weiss befüllt...

    Wisst ihr woran da liegt?

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von LEWA ()