Je comprends pas bien ta première question :
Tu veux afficher la surface avec de la transparence:
>n'utilise pas draw_set_alpha mais draw_surface_ext, tu peux préciser la transparence dans le dernier argument
Tu veux dessiner dans la surface avec une certaine transparence:
>je crois que la couleur du fond de la transparence est forcément opaque, autrement tu as des bugs (enfin bref, pas de transparence dans la surface)
Pour la deuxième, je saurais pas expliquer précisément, mais je dirais :
mets à la balle une direction normale (x,y) ensuite mets que la vitesse est égale à vitesse_defaut(quand on tire tout droit en face)*lengthdir_x(1,anglez) et pense aussi à ajouter à chaque step de la balle à sa position z : z+=vitesse_defaut*abs(lengthdir_y(1,anglez)) et ensuite vérifie à chaque step, si z est en dessous de la hauteur du sol ou au dessus du plafond > instance_destroy() et le reste avec les collisions x,y pour les murs etc
(j'explique vite et chu pas un pro en 3d mais je peux pas bien savoir avec ce que tu dis, si tu veux je fais un exemple
)