Probleme, das SDK SampleFramework zum laufen zu kriegen (VS.NET)



  • Hi,

    ich fange gerade mit D3D und Shader an und lese in einem Tutorial über VertexShader. Leider bekomme ich die Beispiel-Programme (basierend aud DX8) bei mir nicht zum laufen. Sie benutzen das Sample FrameWork aus dem DX-SDK.

    http://www.shaderx.com/direct3d.net/tutorials/shader/examples/RacorX.zip

    Ich verwende das VS.NET 2002 und habe das DX9 SDK installiert. Fehlermeldungen folgenden Typs bekomme ich beim Build:

    d:\Development\DXSDK\Samples\C++\Common\Include\d3dapp.h(50) : error C2501: 'CD3DApplication::CD3DEnumeration' : missing storage-class or type specifiers

    Heißt also, dass im d3dapp.h der Typ CD3DEnumeration nicht bekannt ist. Kann mir jemand erklären, woran dass liegt? Was ich falsch mache?

    Ich bin nicht sicher, ob der SDK korrekt installiert wurde, da bei der installation gesagt wurde, dass der Windows-Logotest nicht bestanden wurde. Allerdings laufen die SDK-Samples einwandtfrei.

    Puh, das ist wahrscheinlich völlig unverständlich, was ich da zurecht geschrieben habe. Sorry. Würde micht dennoch freuen, wenn jemand mir helfen kann



  • Keine Ahnung was genau das Problem ist.
    Aber wenn Du das vorgefertigte FRAMEWORK von DX 8 nutzen willst, mußt Du auch das DX 8 SDK installieren!!
    Das DX 9 SDK hat dieses Framework natürlich nicht mehr dabei.
    Ebenso gibt es das DX 8 SCREENSAVER FRAMEWORK nicht mehr im DX 9 SDK.
    Also entweder altes SDK drauf oder die benötigte Funktionalität selber coden, IMHO...



  • Hi,

    ok, sorry. Das war wohl etwas durcheinander und beknackt von mir. Ich versuche es noch einmal.

    Ich will ein kleines Framework bauen, um Direct3D- und Shader-Programmierung zu lernen. Dazu wollte ich das Basis-Framework aus dem DXSDK benutzen (Ort: ...\DXSDK\Samples\C++\Common und hier \include und \src). Dies sind Files wie d3dapp.h / .cpp oder d3dutil.h ...

    Wenn ich meine Klasse CFrameWork von CD3DApplication ableite (in d3dapp.h definiert), bekomme ich z.B. folgende Fehlermeldung:

    -------------------------------------------------------------------------------
    ...\DXSDK\Samples\C++\Common\Include\d3dapp.h(50) : error C2146: syntax error : missing ';' before identifier 'm_d3dEnumeration'

    ...\DXSDK\Samples\C++\Common\Include\d3dapp.h(50) : error C2501: 'CD3DApplication::CD3DEnumeration' : missing storage-class or type specifiers

    ...\DXSDK\Samples\C++\Common\Include\d3dapp.h(50) : error C2501: 'CD3DApplication::m_d3dEnumeration' : missing storage-class or type specifiers
    -------------------------------------------------------------------------------

    Diese Meldungen besagen, dass die Klasse CD3DEnumeration nicht bekannt ist. Wenn man sich den Header d3dapp.h anschaut, ist dies auch kein Wunder - KEIN einziger Header wird über #include xxx eingebunden.

    Desweiteren existieren Beispiele im SDK (unter ...\DXSDK\Samples\C++\Direct3D). Diese benutzen das Framework des SDKs auf die selbe Weise und es funktioniert. M

    Mir ist es ein Rätsel, wie dass sein kann. Daher wollte ich fragen, ob mir jemand einen Tipp geben kann. Ich habe schn die Projekt-Einstellungen verglichen und keine Unterschiede festgestellt.

    Fragen, die ich stelle sind in etwa: Habe ich ggf. im VS.NET etwas übersehen? Vielleicht zusätzliche Include-Pfade oder eine Lib zu dem Sample-Framework? Ist mein SDK falsch installiert? Hat jemand das gleiche Framework benutzt? Läuft es bei ihm/ihr? Kennt jemand das Problem? Versteht überhaupt jemand das Problem??? 😞

    Naja, allerdings weiß ich selber, dass das eigentlich ziemlich schwierig ist, mir zu helfen.


Anmelden zum Antworten