Gambas-it

Archivi (sola lettura) => Programmazione (Gambas 2) => Topic aperto da: Francoiky - 04 Gennaio 2011, 21:24:29

Titolo: [RISOLTO] Problema con DrawingArea per "progetto" personale Pong
Inserito da: Francoiky - 04 Gennaio 2011, 21:24:29
Dopo aver recentemente superato alcuni problemi :P ho deciso di avviare un mio progetto personale: un Pong in Gambas.
Ora però mi ritrovo di nuovo a sbattere la testa contro la mia ignoranza :hard:.

Vi posto quel poco codice che ho scritto fin ora:

http://img233.imageshack.us/img233/7786/schermatak.png (http://img233.imageshack.us/img233/7786/schermatak.png)

Codice: [Seleziona]
' Gambas class file

PUBLIC SUB _new()

END

PUBLIC SUB Form_Open()
ME.Text = "PonGambas"
ME.Width = 800
ME.Height = 450
ME.Border = Window.Fixed
ME.X = ((Desktop.Width) / 2) - ((ME.Width) / 2)
ME.Y = ((Desktop.Height) / 2) - ((ME.Height) / 2)
ME.Background = Color.Black
DrawingArea1.Height = ME.Height
DrawingArea1.Width = ME.Width
DrawingArea1.X = 0
DrawingArea1.Y = 0
Draw.Begin(DrawingArea1)
Draw.ForeColor = Color.White
Draw.FillColor = Color.White
Draw.FillStyle = 1
Draw.Rect(5, 185, 10, 40)
Draw.End()
END

Ora il problema è che rimane una "macchia" nel programma (non so spiegarvi, ora posto un'immagine)
Edit: eccola http://img816.imageshack.us/img816/201/schermata1n.png (http://img816.imageshack.us/img816/201/schermata1n.png)
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: leo72 - 04 Gennaio 2011, 22:56:09
Prova mettendo la proprietà "Cached" su TRUE della DrawingArea.
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: Francoiky - 04 Gennaio 2011, 22:58:42
Già fatto :'(
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: fsurfing - 05 Gennaio 2011, 18:47:29
il tuo problema risiede nel fatto che applichi un colore di sfondo al form lasciando quello della drawingare a defaul,

ti consiglio un paio di cose:

1 lasci ail form con il suo colore
2 prima di disegnare qualsiasi cosa disegna un rettangolo pieno grande quanto la draw , questo sarà il tuo sfondo e servirà a cancellare i disegni precedenti nelle grfiche successive, ti consigli di utilizzare questo sistema perchè il classico drawingare1.clear impiega molto a effettuare la cancellazione e nel tuo caso avresti un effetto bruttissimo

3 dovendo realizzare un gioco dovrai utilizzare un timer , ti conviene iniziare subito ad usarlo in questo modo separi la gestione del form e degli oggetti (pallina , palette eccecc ) dal codice di disegno
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: leo72 - 07 Gennaio 2011, 14:12:53
Ti consiglio anche di guardare in area Download, sez, Applicazioni, il mio progetto "Torre di Hanoi". Faccio un uso intensivo della Drawing Area e molti dei problemi che potresti incontrare sono gli stessi contro cui sbattei io quando realizzai quel giochino per cui potresti avere senz'altro un bel po' di aiuto da quel codice.
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: fsurfing - 08 Gennaio 2011, 21:23:10
preso da cazzeggio gigante ho fatto uno sparapalle ! partendo dal tuo codice

magari può esserti utile
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: Francoiky - 08 Gennaio 2011, 23:10:28
Grazie a tutti e due! In questi giorni darò un'occhiata ai vostri codici :2birre: e magari imparerò qualcosa :mad:

Grazie ancora :ok:
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: Ceskho - 09 Gennaio 2011, 01:35:19
...ho fatto uno sparapalle...

Un gioco autobiografico.... :rotfl:
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: leo72 - 09 Gennaio 2011, 12:07:16
La fisica dello sparapalle è un po' da rivedere: i rimbalzi sono a caso  :coder:
Cmq carino e semplice: poche righe di codice, grande effetto.
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: fsurfing - 09 Gennaio 2011, 13:19:17
giusto per continuare il cazzeggio sto realizzando un modello fisico...
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: leo72 - 09 Gennaio 2011, 22:35:28
Sei sempre un pezzo avanti...  :ok:
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: Francoiky - 10 Gennaio 2011, 15:29:03
giusto per continuare il cazzeggio sto realizzando un modello fisico...

Cioè in 3D (con OpenGL)? :o
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: fsurfing - 10 Gennaio 2011, 22:53:30
no no , con modello fisico intendevo un "algoritmo" per gestire i rimbalzi e scontri in modo reale...

in realtà il tutto si è trasformato in questa ca..ta :
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: doublemm - 10 Gennaio 2011, 23:06:52
mi sono appena sparato uno sparapalle
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: fsurfing - 10 Gennaio 2011, 23:12:15
 :rotfl:
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: Golia - 10 Gennaio 2011, 23:31:30
provato, seratona con sparatoria  :rotfl:
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: leo72 - 10 Gennaio 2011, 23:36:39
Mi ricordo di aver fatto qualcosa di simile ai tempi del GW-BASIC  ;D

Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: Francoiky - 11 Gennaio 2011, 16:06:51
Ho dato un'occhiata ai vostri codici e mi sono venuti un paio di dubbi sul timer. Non so se ho compreso bene come "agisce":
-Il timer è un oggetto che attiva l'evento Timer ogni tot. Giusto? :mad:
-Con il codice "Timer.Delay = [numero]" si imposta il tot ogni quanto l'evento Timer si attiva. Giusto? :mad:
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: fsurfing - 11 Gennaio 2011, 19:24:32
giustissimo

con timer.start avvii il timer e con timer.stop lo fermi
Titolo: Re: Problema con DrawingArea per "progetto" personale Pong
Inserito da: Francoiky - 11 Gennaio 2011, 20:26:02
La full immersion funziona sempre!
Grazie a entrambi :2birre:
Titolo: Re: [RISOLTO] Problema con DrawingArea per "progetto" personale Pong
Inserito da: Francoiky - 16 Gennaio 2011, 16:42:46
Se può essere utile:
http://www.mail-archive.com/gambas-user@lists.sourceforge.net/msg03429.html (http://www.mail-archive.com/gambas-user@lists.sourceforge.net/msg03429.html) :ok: