Skocz do zawartości

[Delphi] OpenGL - wyświetlanie wierzchołków z tablicy


Integer

Polecane posty

    
 { Lista wierzchołków ------------------------------------------------------ }
 PglV = ^TglV;                     // Vertex
 TglV = packed record
    x,y,z : real;
 end;

 PglArrV = ^TglArrV;
 TglArrV = array of TglV;           // tablica dynamiczna wierzchołków

 PglListV = ^TglListV;
 TglListV = record
    arr: TglArrV;
    max: Integer;
    cnt: Integer;
 end;





procedure  TglModel.DrawVertex;
var L : Integer;             // licznik linii
begin //
 glDisable(GL_TEXTURE_2D);
 glDisable(GL_LIGHTING);            // Sprawca widocznosći kolorów
 glDisable(GL_COLOR_MATERIAL);

 glColor3f(0.8,0.8,0.8);            // Cieniowanie tekstury

 // W tym miejscu w ShowMessage wyświetlam poprawnie zawartosć tabicy
 // czyli do tego momentu jest wszystko ok

 try
     if FglListV.cnt>0 then
     begin
        for L := 0 to FglListV.max do
        begin
           glBegin(GL_POINTS);
           glVertex(FglListV.arr[L].x, FglListV.arr[L].y, FglListV.arr[L].z);
           glEnd();
        end;
     end;
  except
     ShowMessage('Błąd');

  end;

end;

 

 

Witam.

 

Powyższy kod ma za zadanie wyświetlić wierzchołki i jak to robię bezpośrednio w kodzie to jest ok a jak wczytuje z tablicy to czy to są zmienne x, y, z, typu Real czy Single to wyrzuca mi Access Violation mimo że wcześniej sobie sprawdziłem i liczba pozycji w tablicy odczytywana jest poprawnie.

Tak czy owak natrętnie pokazuje ShowMessage('Błąd'); czy ktoś może powiedzieć, gdzie zrobiłem błąd?

 

Pozdrawiam

Link do komentarza
Udostępnij na innych stronach

max jest tylko do testów,

 

jak wstawię tak to jest ok

 

    
if 10>0 then
  begin
     try
       glBegin(GL_POINTS);
        // for L := 0 to FglListV.cnt-1 do
        for L := 0 to 10 do
        begin
           glVertex(0.5*L, 0.0, 0.5*L);
        end;
        glEnd();
     except
        ShowMessage('Błąd');
     end;
  end;
-kjKh+$jKŁy]zZaY     [Y[BY[ÓSĘNHLHHLY[^
JJ
N[[

N^ÓYYJ      NŹY        NĘN[[

Link do komentarza
Udostępnij na innych stronach

To ja wrzucę swoje grosze i poznam opinię innych :)

 

Bo wg. mnie nie ma sensu bawienie się w Try/Except i inne sprawdzanie błędów tego typu np. w grach. Bo po cholerkę ? Jak się nie wczyta np. 1tekstura to i tak bez sensu sprawdzać cokolwiek bo gra nie ma prawa się uruchomić :P

 

Co Wy o tym sądzicie ?

Ot taka mini-strona moja po godzinach :)http://www.wnetrzekuchni.pl

Link do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...