GML Paint v.2

Tutto ciò che avete creato con GM, ma che non è a scopo ludico.
Avatar utente
magnetz
Membro
Messaggi: 75
Iscritto il: 04/08/2013, 10:29
Specialità: programmazione
Uso: GM:Studio 1.4 Master
Contatta:

Re: GML Paint v.1

Messaggio da magnetz »

fatto, ho guardato su internet e ho ricavato questo codice

Codice: Seleziona tutto

draw_rectangle_color(x1,y1,x2,y2,col1,col2,col3,col4,outline)
ora dovrei salvare i disegni, qualcuno a qualche idea????
può anche essere una cavolata ma quello che importa e divertirsi. SEEMS LEGIT

GIOCHI:
ImmagineImmagine

il mio Vorxy:
Immagine

Avatar utente
Sla
GMI VIP
Messaggi: 3618
Iscritto il: 21/07/2008, 10:11
Specialità: Titanismo
Località: (gm) Italia
Contatta:

Re: GML Paint v.1

Messaggio da Sla »

draw_set_color([latex]color[/latex]);
draw_rectangle([latex]x_1,y_1,x_2,y_2[/latex]);
edit: scusa non avevo visto, per salvare dipende da come hai strutturato il programma.
Se disegni su una surface ti basta usare surface_save([latex]filename[/latex]), altrimenti forse devi prendere uno screenshot.
Ad ogni modo guarda sempre il manuale, se fai una ricerca con la keyword opportuna dovresti essere in grado di risolvere ogni tuo problema
eppure mi sembra tutto giusto...

Avatar utente
magnetz
Membro
Messaggi: 75
Iscritto il: 04/08/2013, 10:29
Specialità: programmazione
Uso: GM:Studio 1.4 Master
Contatta:

Re: GML Paint v.1

Messaggio da magnetz »

grazie comunque, ma ho già fatto, è quasi finito, adesso stò inpazzendo per spostare un color picker nella mia room di 740x560, mi sono dovuto iscrivere velocemente al forum inglese di yoyo game che c'è il post, ecco il link:
http://gmc.yoyogames.com/index.php?show ... 707&page=1
per poterlo convertire per GM studio, e così creare app per android o una versione html, perchè GM studio non supporta l'utilizzo della stringa get_color
:)
può anche essere una cavolata ma quello che importa e divertirsi. SEEMS LEGIT

GIOCHI:
ImmagineImmagine

il mio Vorxy:
Immagine

Avatar utente
magnetz
Membro
Messaggi: 75
Iscritto il: 04/08/2013, 10:29
Specialità: programmazione
Uso: GM:Studio 1.4 Master
Contatta:

Re: GML Paint v.1

Messaggio da magnetz »

Immagine
volevo farvi vedere questa (brutta) immagine che ho fatto con il mio programmino.
spero che vi faccia almeno sorridere :D
può anche essere una cavolata ma quello che importa e divertirsi. SEEMS LEGIT

GIOCHI:
ImmagineImmagine

il mio Vorxy:
Immagine

Avatar utente
mac12
Membro d'elite
Messaggi: 1124
Iscritto il: 18/09/2012, 17:32
Specialità: programmazione
Uso: GameMaker 8.1
Contatta:

Re: GML Paint v.1

Messaggio da mac12 »

magnetz ha scritto:Immagine
volevo farvi vedere questa (brutta) immagine che ho fatto con il mio programmino.
spero che vi faccia almeno sorridere :D
carina :D

Avatar utente
magnetz
Membro
Messaggi: 75
Iscritto il: 04/08/2013, 10:29
Specialità: programmazione
Uso: GM:Studio 1.4 Master
Contatta:

Re: GML Paint v.1

Messaggio da magnetz »

la versione 2 è finita adesso carico gli screen e faccio un changelog nel primo post
può anche essere una cavolata ma quello che importa e divertirsi. SEEMS LEGIT

GIOCHI:
ImmagineImmagine

il mio Vorxy:
Immagine

Avatar utente
mac12
Membro d'elite
Messaggi: 1124
Iscritto il: 18/09/2012, 17:32
Specialità: programmazione
Uso: GameMaker 8.1
Contatta:

Re: GML Paint v.2

Messaggio da mac12 »

molto migliorato, ma ho notato due bug:
-se seleziono il secchio, coloro e poi scelgo la matita, è come ci fosse il secchio(nel senso che colori tutto e non scrivi)
-l'algoritmo del secchio non funziona, semplicemente colora tutta la superficie

Avatar utente
magnetz
Membro
Messaggi: 75
Iscritto il: 04/08/2013, 10:29
Specialità: programmazione
Uso: GM:Studio 1.4 Master
Contatta:

Re: GML Paint v.2

Messaggio da magnetz »

lo sò, e so anche migliorarlo, ma in questo momento non mi ricordo perchè non lo faccio, forse per risorverne altri.
secondo voi questo programma lo posso mettere su freankexpo in categoria altro e avrà la possibilità di essere messo sulla pagina di facebook?
p.s. non sistemo il bug perchè se no non mi fà cambiare grandezza alla matita.
il secchiello serve per riempire lo sfondo, se sai come risolvere dimmelo.(riempimento automatico)
può anche essere una cavolata ma quello che importa e divertirsi. SEEMS LEGIT

GIOCHI:
ImmagineImmagine

il mio Vorxy:
Immagine

Avatar utente
Sla
GMI VIP
Messaggi: 3618
Iscritto il: 21/07/2008, 10:11
Specialità: Titanismo
Località: (gm) Italia
Contatta:

Re: GML Paint v.2

Messaggio da Sla »

eppure mi sembra tutto giusto...

Avatar utente
magnetz
Membro
Messaggi: 75
Iscritto il: 04/08/2013, 10:29
Specialità: programmazione
Uso: GM:Studio 1.4 Master
Contatta:

Re: GML Paint v.2

Messaggio da magnetz »

0.o

tradotto per GM?
(scusa non sò ancora programmare bene per Game maker)
può anche essere una cavolata ma quello che importa e divertirsi. SEEMS LEGIT

GIOCHI:
ImmagineImmagine

il mio Vorxy:
Immagine

Avatar utente
Sla
GMI VIP
Messaggi: 3618
Iscritto il: 21/07/2008, 10:11
Specialità: Titanismo
Località: (gm) Italia
Contatta:

Messaggio da Sla »

È pseudo codice, te lo devi adattare alle esigenze. Te lo semplifico un po'.
Crei lo script flood_fill(x,y,color1,color2)
color1 è il colore da rimpiazzare con color2. x,y è il punto di partenza (presumibilmente color1 sarà il colore del pixel x,y)

Codice: Seleziona tutto

if( pixel_get_color(argument0,argument1) != color1 ) return;
pixel_set_color(argument0,argument1,color2);
flood_fill(argument0-1,argument1, color1, color2);
flood_fill(argument0+1,argument1, color1, color2);
flood_fill(argument0,argument1+1, color1, color2);
flood_fill(argument0,argument1-1, color1, color2);

Per "secchiellare" un'area immagino farai qualcosa come flood_fill(mouse_x,mouse_y,pixel_get_color(mouse_x,mouse_y),current_drawing_color);

Ovviamente pixel_get_color e pixel_set_color non esistono, te le devi fare te secondo la struttura del tuo programma.
Qualche informazione addizionale, una funzione che richiama se stessa (vedi le 4 chiamate a flood_fill) viene detta ricorsiva, ed è possibile (anzi, altamente probabile se la usi in spazi molto grandi) che ti riempa lo stack e faccia crashare il programma prima che la sentinella della prima riga chiuda tutte le istanze aperte della funzione.
Per questo motivo probabilmente dovrai trovarti un'altra soluzione, ed ecco perché ti ho linkato la pagina wikipedia : affinché tu possa comprendere il funzionamento di tali algoritmi, in modo da saper cercare una soluzione alternativa alla ricursione.
eppure mi sembra tutto giusto...

Avatar utente
magnetz
Membro
Messaggi: 75
Iscritto il: 04/08/2013, 10:29
Specialità: programmazione
Uso: GM:Studio 1.4 Master
Contatta:

Re: GML Paint v.2

Messaggio da magnetz »

grazie, ma con il sistema che ho usato io e forse impossibile creare il flood fill, vedrò più avanti.
comunque quello che volevo fare l'ho finito, perchè, volevo creare un app che ti dava la possibilità di disegnare e poi pubblicarla su facebook, aggiungendo tag ecc..
il problema è che tutto questo non riesco a metterlo in studio, perchè non mi funziona un comendo, adesso stò aspettando una risposta, nel forum di yoyo game,e poi si vedrà, per facebook ci sarà da piangere, per far in modo di pubblicare un immagine con un tasto tipo "shere".
grazie per l'aiuto che mi avete dato nella realizzazione del programma, se qualcuno sà come pubblicare su facebook un immmagine presa da uno screen me lo può dire, comunque grazie.
può anche essere una cavolata ma quello che importa e divertirsi. SEEMS LEGIT

GIOCHI:
ImmagineImmagine

il mio Vorxy:
Immagine

Avatar utente
Xxshark888xX
Membro d'elite
Messaggi: 1497
Iscritto il: 30/05/2012, 19:17
Specialità: Un poco di tutto
Uso: GM:Studio 1.4 Pro
Località: Earth
Contatta:

Re: GML Paint v.1

Messaggio da Xxshark888xX »

magnetz ha scritto:scusa ma come si fà, io ho creato il quadratino, ma come faccio a dirgli il colore?
Mi viene in mente:

Crei uno sprite quadrato e gli assegni il colore della matita, easy.
Contatti
Steam
Facebook

Gif
Spoiler
Immagine
Immagine
Immagine
Immagine

Avatar utente
magnetz
Membro
Messaggi: 75
Iscritto il: 04/08/2013, 10:29
Specialità: programmazione
Uso: GM:Studio 1.4 Master
Contatta:

Re: GML Paint v.2

Messaggio da magnetz »

Grazie, ma ho già fatto. :)
può anche essere una cavolata ma quello che importa e divertirsi. SEEMS LEGIT

GIOCHI:
ImmagineImmagine

il mio Vorxy:
Immagine

Avatar utente
magnetz
Membro
Messaggi: 75
Iscritto il: 04/08/2013, 10:29
Specialità: programmazione
Uso: GM:Studio 1.4 Master
Contatta:

Re: GML Paint v.2

Messaggio da magnetz »

problema.
ho creato la versione android del gioco, ma quando lo avvio,trovo tantissimi bug:
il piano di lavoro bianco, si "colora" delle icone del mio tablet o del programma, non è pù bianco.
quando premo sul piano di lavoro con la matita selezionata, mi tira una riga del punto 0,0 a dove ho il dito.
per cambiare la funzione (per prendere la gomma o il secchiello ecc..) normalmente premo con il destro, invece su android devo fare doppio click, però, il primo click, fà il disegno, il secondo click mi cambia strumento.
come faccio a risolverli, ho provato a vedere, ma mi serve un aiuto.
può anche essere una cavolata ma quello che importa e divertirsi. SEEMS LEGIT

GIOCHI:
ImmagineImmagine

il mio Vorxy:
Immagine

Avatar utente
jumoonp
GMI VIP
Messaggi: 3292
Iscritto il: 13/01/2008, 20:59
Contatta:

Re: GML Paint v.1

Messaggio da jumoonp »

mi interessa sapere come fai ad usare il secchiello, cioè dipingere con un click del mouse un area circoscritta da un colore, cambiandolo col colore desiderato
Spoiler
Gabriele Dell'Otto e Lee bermejo

Immagine

Avatar utente
magnetz
Membro
Messaggi: 75
Iscritto il: 04/08/2013, 10:29
Specialità: programmazione
Uso: GM:Studio 1.4 Master
Contatta:

Re: GML Paint v.2

Messaggio da magnetz »

no, setti la grandezza a mille così colora tutto, ci sarebbe il modo per disegnare il dentro di una figura, si chiama flood fill, ma era impossibile implementarlo con il codice che avevo scritto :)

ecco il link per l'algoritmo flood fill:
http://it.wikipedia.org/wiki/Algoritmo_flood_fill

e quì per game maker:
http://gmc.yoyogames.com/index.php?showtopic=443122
può anche essere una cavolata ma quello che importa e divertirsi. SEEMS LEGIT

GIOCHI:
ImmagineImmagine

il mio Vorxy:
Immagine

Avatar utente
Xxshark888xX
Membro d'elite
Messaggi: 1497
Iscritto il: 30/05/2012, 19:17
Specialità: Un poco di tutto
Uso: GM:Studio 1.4 Pro
Località: Earth
Contatta:

Re: GML Paint v.2

Messaggio da Xxshark888xX »

Oppure se usi le surfaces ti basta far colorare tutta la surface del colore selezionato e sarebbe la cosa migliore...
Contatti
Steam
Facebook

Gif
Spoiler
Immagine
Immagine
Immagine
Immagine

Avatar utente
jumoonp
GMI VIP
Messaggi: 3292
Iscritto il: 13/01/2008, 20:59
Contatta:

Re: GML Paint v.2

Messaggio da jumoonp »

Xxshark888xX ha scritto:Oppure se usi le surfaces ti basta far colorare tutta la surface del colore selezionato e sarebbe la cosa migliore...
mai usate le surfaces...qualche esempio pratico, per questo caso?
Spoiler
Gabriele Dell'Otto e Lee bermejo

Immagine

Solid Snake
GMI Advanced
Messaggi: 2093
Iscritto il: 19/12/2010, 16:17
Specialità: Programmazione
Uso: GM:Studio 1.4 Standard
Contatta:

Re: GML Paint v.2

Messaggio da Solid Snake »

Le surface sono come delle tele su cui puoi disegnare.
Ecco un esempio:

Codice: Seleziona tutto

//CREATE
sur0=surface_create(room_width,room_height);

surface_set_target(sur0);//Da ora disegniamo sulla surface "sur0"
draw_clear_alpha(c_black,0);//Puliamo la surface. Può capitare che sia "sporca" con alcune schede grafiche.

repeat(irandom(10))//Disegnamo dei cerchi casuali
{
 draw_circle(irandom(room_width),irandom(room_height),irandom(20),0);
}
surface_reset_target()//Da ora disegnamo su schermo

Codice: Seleziona tutto

//STEP
if (keyboard_check_pressed(vk_space))//Disegniamo altri cerchi casuali
{
 surface_set_target(sur0);//Da ora disegniamo sulla surface "sur0"

 repeat(irandom(10))//Disegnamo dei cerchi
 {
  draw_circle(irandom(room_width),irandom(room_height),irandom(20),0);
 }
 surface_reset_target()//Da ora disegnamo su schermo
}

Codice: Seleziona tutto

//DRAW
draw_surface(sur0,0,0);
♥♥♥♥♥♥
Immagine
♥♥♥♥♥♥
Spoiler
Immagine

Rispondi

Chi c’è in linea

Visitano il forum: Nessuno e 9 ospiti