Frage zu eigener Mesh Klasse
-
Hi!
Ich habe gerade versucht eine eigene Klasse zum integrieren von Meshs zu verwenden, allerdings zeigt mir Visual C++ immer wieder Fehler an:class cMesh { private: LPD3DXMESH mesh; D3DMATERIAL9 *materials; DWORD num_mat; LPDIRECT3DTEXTURE9 *textures; public: cMesh(); void load( char *xfile); void draw(); ~cMesh(); };
Es werden dann folgende Fehler angezeigt:
c:\users\standard\documents\visual studio 2008\projects\game engine\game engine\engine_mesh.h(6) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'mesh' 1>c:\users\standard\documents\visual studio 2008\projects\game engine\game engine\engine_mesh.h(7) : error C2143: Syntaxfehler: Es fehlt ';' vor '*' 1>c:\users\standard\documents\visual studio 2008\projects\game engine\game engine\engine_mesh.h(8) : error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'num_mat' 1>c:\users\standard\documents\visual studio 2008\projects\game engine\game engine\engine_mesh.h(9) : error C2143: Syntaxfehler: Es fehlt ';' vor '*'
Ich habe die Direct X Klassen d3d9.h und d3dx9.h integriert.
Durch diese Fehler funktionieren die ganzen weiteren Mesh Funktionen der Anwendung nicht.
Ich habe zusätzlich noch eine Klasse zum initialisieren von Direct X, eine cpp datei um die Meshs zu laden und die Hauptanwendung WinMain.cpp.Weiß jemand eine Lösung??
-
In dem Code, der sich über deiner Klasse befindet, wurde irgendwo ein Semikolon vergessen.
-
Das kann nicht, denn "class cMesh" ist die erste Zeile.
Drüber steht nur noch
#include <d3d9.h> #include <d3dx9.h>
Die brauchen kein Semikolon soweit ich weiss.
ansonsten ist das ganze eine in sich abgeschlossene Header-Datei(cMesh.h).
-
Schonmal geschaut, ob du die Pfade stimmen und ob die auch im richtigen Verzeichnis sind? Bzw. prüf nochmal, ob "d3d9" und "d3dx9" überhaupt existieren. Scheint so, als würde er "D3DMATERIAL9" und "LPDIRECT3DTEXTURE9" nicht finden.
-
ansonsten ist das ganze eine in sich abgeschlossene Header-Datei(cMesh.h)
deswegen musst du ja auch in der datei gucken wo sie inkludiert wird.
-
ohh ja, ich hatte die dx-dateipfade noch garnicht richtig gesetzt.
Danke für den Hinweis, jetzt erscheint der Fehler nicht mehr.