| enregistrer plusieurs surface en 1 seul png | |
|
|
Auteur | Message |
---|
blendman Utilisateur confirmé: Rang **
Messages : 433 Projet Actuel : Crée des jeux, logiciels, BD, Romans et nouvelles.
| Sujet: enregistrer plusieurs surface en 1 seul png Dim 30 Jan 2011 - 10:38 | |
| salut Voilà, dans mon logiciel 2D, je crée autant de surface que j'ai de calques. Je voudrais pouvoir "écraser" tous ces calques (les surfaces) et enregistrer en une seule image (png, bmp, jpg). savez-vous comment faire ça ? Je sais déjà enregistrer chaque surface séparément. Des informations importantes : - j'utilise des blendmode et d'autres propriétés comme des scale (X,Y) ou alpha des surfaces, donc, il faut aussi que ce soit pris en compte. - j'utilise un zoom, il faut donc que le fichier enregistré soit à la taille de la surface et pas proportionnel au zoom (ou à l'affichage), car par exemple, on peut dessiner sur un document de 3000*3000 si on veut. Je suppose que je pourrais utilise background_create_from_screen ou save_screen, mais ça ne copie que le screen et pas la surface entièrement. Merci pour vos informations . |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: enregistrer plusieurs surface en 1 seul png Dim 30 Jan 2011 - 10:43 | |
| ben a mon avis y a plusieurs moyens. J'ai pas trop d'inspiration mais pourquoi ne pas faire une autre surface, ou tu y collerais toutes tes autres surfaces avec leur blend ? |
|
| |
blendman Utilisateur confirmé: Rang **
Messages : 433 Projet Actuel : Crée des jeux, logiciels, BD, Romans et nouvelles.
| Sujet: Re: enregistrer plusieurs surface en 1 seul png Dim 30 Jan 2011 - 10:52 | |
| - onilink_ a écrit:
- ben a mon avis y a plusieurs moyens. J'ai pas trop d'inspiration mais pourquoi ne pas faire une autre surface, ou tu y
collerais toutes tes autres surfaces avec leur blend ? ouip, c'est que je pensais faire :p Mais je me demandais s'il n'y avait pas un moyen plus rapide et plus simple (mais je ne crois pas lol). |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: enregistrer plusieurs surface en 1 seul png Dim 30 Jan 2011 - 10:57 | |
| C'est très rapide si t'as pensé a faire un tableau de surface et un tableau de blend des le début, au moins en qq lignes c'est plié. - Code:
-
surf_set_target(current_surf) for(i=0; i<nb_surf; i++){ draw_set_blend_moded(bm[i]) draw_surface(surf[i]..) } surface_reset_target() surface_save(current_surf) |
|
| |
blendman Utilisateur confirmé: Rang **
Messages : 433 Projet Actuel : Crée des jeux, logiciels, BD, Romans et nouvelles.
| Sujet: Re: enregistrer plusieurs surface en 1 seul png Dim 30 Jan 2011 - 12:13 | |
| - onilink_ a écrit:
- C'est très rapide si t'as pensé a faire un tableau de surface et un tableau de blend des le début, au moins en qq lignes c'est plié.
- Code:
-
surf_set_target(current_surf) for(i=0; i<nb_surf; i++){ draw_set_blend_mode(bm[i]) draw_surface(surf[i]..) } surface_reset_target() surface_save(current_surf) et ben, j'ai pas pensé lol D'ailleurs, ça m'intéresse, car ça doit être très pratique Mais j'ai testé la même méthode sans les tableaux et ça marche aussi (avec une ou deux lignes en plus ). J'ai juste un petit problème à régler avec les blendmode, car j'ai des : - draw_set_blend_mode et des draw_set_blend_çmode_ext Donc, je dois trouvé l'équivalent de : bm_add, bm_sub, etc mais en draw_set_blend_mode_ext et pas en draw_set_blend_mode, et après, ça devrait marcher nickel. Autre truc bizarre : l'image (png) enregistrée n'est pas compatible avec la plupart des soft 2D, je dois la convertir avec xnview, c'est bizarre ça :p. |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: enregistrer plusieurs surface en 1 seul png Dim 30 Jan 2011 - 12:26 | |
| |
|
| |
blendman Utilisateur confirmé: Rang **
Messages : 433 Projet Actuel : Crée des jeux, logiciels, BD, Romans et nouvelles.
| Sujet: Re: enregistrer plusieurs surface en 1 seul png Dim 30 Jan 2011 - 13:30 | |
| - onilink_ a écrit:
- https://cbna.forumactif.com/t10259-tutoriel-le-blend-mode-en-long-et-en-large
- Citation :
- -bm_normal
draw_set_blend_mode_ext(bm_src_alpha, bm_inv_src_alpha) - Citation :
- -bm_add
draw_set_blend_mode_ext( bm_one, bm_one )
etc yep, j'ai déjà partcouru ce superbe tutoriel, qui m'aide énormément . Et effectivement, je me rappelle que j'y avais vu les modes normaux . Encore merci copain . Edit : j'ai pas trouvé pour bm_subtract l'équivalent :p, mais je vais essayé de le trouver tout seul lol. |
|
| |
blendman Utilisateur confirmé: Rang **
Messages : 433 Projet Actuel : Crée des jeux, logiciels, BD, Romans et nouvelles.
| Sujet: Re: enregistrer plusieurs surface en 1 seul png Dim 30 Jan 2011 - 15:58 | |
| J'ai trouvé un truc bizarre En fait, avec les surface et draw_clear_alpha(c_black,0), et bien draw_set_blend_mode(bm_add) n'est pas équivalent à draw_set_blend_mode_ext( bm_one, bm_one ) Mais bon, j'ai trouvé comment avoir la même chose :p. Donc, maintenant, on peut sauvegarder une image créée (en png, jpg ou bmp). Mais le problème, c'est que l'image sauvegardée ne s'ouvre pas dans un soft 2D classique, si on ne la re-sauvegarde pas avant dans le même format (en tant que copie). C'est très bizarre :p. vous savez pourquoi ? |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: enregistrer plusieurs surface en 1 seul png Dim 30 Jan 2011 - 16:09 | |
| Je sais pas pour les nouvelles versions de GM mais normalement l'export est toujours en bmp, donc pour le jpg et tout ça viens peut être de la le bug de reconnaissance. |
|
| |
Contenu sponsorisé
| Sujet: Re: enregistrer plusieurs surface en 1 seul png | |
| |
|
| |
| enregistrer plusieurs surface en 1 seul png | |
|