Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Disfunzionamento delle OpenGL
Forum - C# / VB.NET - Disfunzionamento delle OpenGL

Avatar
Thejuster (Admin)
Guru^2


Messaggi: 2305
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 22:38
Domenica, 04/12/2016
Salve ragazzi,

Sicuramente conoscete le OpenGL e forse qualcuno le ha provate in C++
che poi non sono cosė diverse da come le si viene usate in C#

Mi capita un problema strano ed al quanto insolito.

Ho preso dai pacchetti Nuget, il GLControl che proviene dall'OpenTK

Nessun problema nel configurare il tutto ed a far girare il programma
disegnando varie texture.

Il problema succede quando tento di aggiornare le posizioni delle texture
č come se il Draw non rispondesse.


ho semplicemente preso l'evento OnPaint del controllo

Codice sorgente - presumibilmente C# / VB.NET

  1. //Funzione paint
  2.    private void glControl1_Paint(object sender, PaintEventArgs e)
  3.         {
  4.              //Se il controllo non č stato inizializzato
  5.             if (!glControlIsLoaded)
  6.                 return;
  7.  
  8.             //Clear
  9.             GL.Clear(ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit);
  10.             GL.MatrixMode(MatrixMode.Modelview);
  11.             GL.Ortho(0, MapSize.Width, 0, MapSize.Height, -1, 1);
  12.             GL.MatrixMode(MatrixMode.Modelview);
  13.             GL.PushMatrix();
  14.             GL.LoadIdentity();
  15.             GL.Enable(EnableCap.Texture2D);
  16.  
  17.            render.Draw(texture,e.X,e.Y);




Cosa succede,
Succede che il rendering č molto ma molto lento!
come se non fosse un vero render. non sō se mi sono spiegato bene.
Non aggiorna velocemente come dovrebbe.
nonostante gli abbia forzato ad invalidare il controllo alla fine dell'operazione.

Qualche idea?



https://mire.forumfree.it/ - Mire Engine
C# UI Designer
PM Quote
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2765
Iscritto: 21/09/2007

Segnala al moderatore
Postato alle 15:33
Lunedė, 05/12/2016
controlla se l'evento paint č quello giusto nel quale inserire questo codice.
e verifica se č giusto cancellare tutto prima di disegnare qualcosa di nuovo, potrebbe essere questo che rallenta

PM Quote
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6230
Iscritto: 04/12/2003

Segnala al moderatore
Postato alle 17:01
Lunedė, 05/12/2016
Concordo con HeDo...

Leggi la documentazione di GLControl. Forse c'e' qualche esempio.


Il mio blog: https://piero.dev
PM Quote