Aber wenn ichs zeichne, sieht mann nichts und die GLUint variablen haben alle den Wehrt 0!!! Und ich gebe beim erstellen ganz sicher die selben variablen an, wie beim aufrufen!
Und der Witz: Wenn ich vor dem erstellen die GLUInt variable manuell zuweise (1,2,3 usw) dann funktionierts.
Fehlt mir da ein befehl bei der Erstellung oder so???
(Vor geraumer zeit habe ich schon mal erfolgreich DLs benutzt)
_________________ Nothing, oh sweet nothing,
today we are doing nothing at all...
http://www.geo-progs.de
Registriert: Mi Dez 15, 2004 20:36 Beiträge: 454 Wohnort: Wien, Österreich
glEnable() / glDisable() denke ich , funktionieren in einer DL sowieso nicht. Man muss entsprechende States vor dem Aufruf einer DL rufen. Oder ? Ich meine, das wird nicht kompiliert. Oder ?
_________________ "Meine Mutter sagt : 'Dumm ist der, der Dummes tut'." - Forrest Gump
Registriert: Di Dez 02, 2003 12:47 Beiträge: 300 Wohnort: Marburg
Habe aber noch was wiziges gefunden:
Ich habe jetzt einen Modus ohne VBOs nur mit DLs
Wenn ich die befehle glbegin(gl_triangles); und glend; aus der Display List heraus nehme und sie vor und hinter den Befehl glGallList setze, dann wird das ganze sehr langsam (langsamer als iteratives zeichnen ohne DLs!!!).
Ist das Normal???
entweder (Schnell)
Code:
...
glNewList(blabla, GL_COMPILE);
glbegin(gl_triangles);
for i2 := 1 to Models[ModelNumber].VBOs[i].Size*3 do begin
f.ReadBuffer(Vertex2,sizeof(vertex2));
with vertex2 do begin
gltexcoord3f(S,T,U);
glnormal3f(U,V,W);
glvertex3f(X,Y,Z);
end;
end;
glEnd;
glEndList();
...
glcalllist(blabla);
...
oder (sehr Langsam)
Code:
...
glNewList(blabla, GL_COMPILE);
for i2 := 1 to Models[ModelNumber].VBOs[i].Size*3 do begin
f.ReadBuffer(Vertex2,sizeof(vertex2));
with vertex2 do begin
gltexcoord3f(S,T,U);
glnormal3f(U,V,W);
glvertex3f(X,Y,Z);
end;
end;
glEndList();
...
glbegin(gl_triangles);
glcalllist(blabla);
glEnd;
...
und so sieht mann nichts:
Code:
...
glbegin(gl_triangles);
glNewList(blabla, GL_COMPILE);
for i2 := 1 to Models[ModelNumber].VBOs[i].Size*3 do begin
f.ReadBuffer(Vertex2,sizeof(vertex2));
with vertex2 do begin
gltexcoord3f(S,T,U);
glnormal3f(U,V,W);
glvertex3f(X,Y,Z);
end;
end;
glEndList();
glEnd;
...
glbegin(gl_triangles);
glcalllist(blabla);
glEnd;
...
_________________ Nothing, oh sweet nothing,
today we are doing nothing at all...
http://www.geo-progs.de
Mitglieder in diesem Forum: Bing [Bot], Google [Bot] und 6 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.