Rendering Kontext
-
Hey Leute,
erstmal der Grund warum ich in dieses Forum poste ist das es eher
systembasiert als OpenGL ist. Aber egal, kommen wir zu meinem Problem
und zwar habe ich hier einen Rendering Kontext in dem ich die
Vertex-Dateien skaliere und translateire. So weit so gut, jetzt hab
ich aber das Problem, dass er mir ziemlich blöde Error's zeigt, erstmal
der Kontext selber:void CMD2Model::DrawMD2Model(CMD2Model* pModel) { double SkinX=(double) pModel->m_pHeader->skinWidth; double SkinY=(double) pModel->m_pHeader->skinHeight; int nVertexNr=0; int nTexCoordNr=0; float nX=0; float nY=0; float nZ=0; glEnable(GL_TEXTURE_2D); glBindTexture(GL_TEXTURE_2D, pModel->SkinAdr); glBegin(GL_TRIANGLES); for(int nTriangle=0; nTriangle < pModel->m_pHeader->numTriangles; nTriangle++) { for(int nVertex=0; nVertex < 3; nVertex++) { nVertexNr = pModel->m_pTriangles[nTriangle].vertexIndices[nVertex]; nTexCoordNr = pModel->m_pTriangles[nTriangle].textureIndices[nVertex]; nX = (float) pModel->m_pFrameData[0].pVertices[0].vertex[0]; nX = (nX * pModel->m_pFrames[0].scale[0]) + pModel->m_pFrames[0].translate[0]; nY = (float) pModel->m_pFrameData[0].pVertices[0].vertex[1]; nY = (nY * pModel->m_pFrames[0].scale[1]) + pModel->m_pFrames[0].translate[1]; nZ = (float) pModel->m_pFrameData[0].pVertices[0].vertex[2]; nZ = (nZ * pModel->m_pFrames[0].scale[2]) + pModel->m_pFrames[0].translate[2]; double X = (double)pModel->m_pTexCoords[nTexCoordNr].s / SkinX; double Y = (double)pModel->m_pTexCoords[nTexCoordNr].t / SkinY; double ScaleModel = 0.005; glTexCoord2d(X,Y); glVertex3d(nX * ScaleModel, nY * ScaleModel, nZ * ScaleModel); } } glEnd(); }So, jetzt kommen wir zu den Error's:
SkinX -9.2559631349317831e+061 double + pModel 0x004bdd40 class CMD2Model p_Model {SkinAdr=1 m_pHeader=0x00000000 m_pSkins=0x00000000 ...} CMD2Model * + pModel->m_pHeader 0x00000000 {magic=??? version=??? skinWidth=??? ...} CMD2Model::MD2_Header * + this 0x004bdd40 class CMD2Model p_Model {SkinAdr=1 m_pHeader=0x00000000 m_pSkins=0x00000000 ...} CMD2Model * constDas komische ist, dass der Zeiger auf CMD2Model garkeinen Wert übernimmt.
Aber egal wie ich es versuche, ob ich über "p_Model->m_pHeader->skinWidth" oder über "m_pHeader->skinWidth" gehe, er gibt mir immer die gleichen
Error's. Kann mir einer helfen? Übrigens ist das das Tutorial von dieser
Seite:
http://home.arcor.de/cppjunky/tutorials/md2/tutor_md2p2.htm
(Ich hab mein Modelloader selber umgeschrieben, ebtspricht also nicht
100%ig dem von der Seite)Ich danke vielmals im Voraus!
-
Da ist erst mal kein error zu sehen, sondern nur die werte von ein paar Variablen.

(Ich hab mein Modelloader selber umgeschrieben, ebtspricht also nicht
100%ig dem von der Seite)Das wird wahrscheinlich das Problem sein, aber ohne Glaskugel schwer zu sagen...
-
Jup, hier ist der Rest des Code's:
http://nopaste.org/p/aSdxkgmVpb
(Hab ich mal da hochgeladen weil's hier sonst zu Voll wird)
-
???
-
ich würd dir empfehlen dir mal den debugger anzuwerfen und zu überprüfen warum und an welcher stelle dein deine MD2 instanz lauter NULL pointer im bauch hat

-
kommt da noch was....?
...ich hätte die Fehlermeldung und den Code doch nicht gepostet wenn ich's nicht verstanden hätte =(.
-
Löwenzahn schrieb:
kommt da noch was....?
Du hast doch den Hinweis mit dem Debugger schon bekommen. Du bist am Zug.
p_Model->m_pHeader ist NULL. Warum das so ist, ist aus dem gezeigten Code nicht erkennbar. Vielleicht wird LoadModel gar nicht aufgerufen, vielleicht schlägt fopen fehl. Da musst du schon selbst ein wenig nachforschen.
Warum ist ModelFile überhaupt ein Parameter von LoadModel?
-
MFK schrieb:
Löwenzahn schrieb:
kommt da noch was....?
Du hast doch den Hinweis mit dem Debugger schon bekommen. Du bist am Zug.
p_Model->m_pHeader ist NULL. Warum das so ist, ist aus dem gezeigten Code nicht erkennbar. Vielleicht wird LoadModel gar nicht aufgerufen, vielleicht schlägt fopen fehl. Da musst du schon selbst ein wenig nachforschen.
Warum ist ModelFile überhaupt ein Parameter von LoadModel?
genau,
debuggen, debuggen und nochmals debuggen!
oder den code zwischen laden und zeichnen posten
-
Nä, ich finde den Fehler einfach nicht

-
Dieser Thread wurde von Moderator/in evilissimo aus dem Forum C++ in das Forum Spiele-/Grafikprogrammierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.