Hi, ich bin gerade am Lernen mit DirectX umzugehen und stoße auch auf viele Probleme. Ich konnte zwar viele alleine lösen, doch jetzt verharre ich seit 3 Tagen bei einem Problem.
Das Spiel soll ein kleiner Space-Shooter werden, allerdings ist das erstmal unrelevant.
Ich habe die viel von den Klassen aus dem im Titel-stehenden Buch genommen.
Dazu habe ich noch 2 andere Klassen.
die cGame und die cPlayer Klasse (im Beispielprojekt befindet sich noch eine nicht fertige cShot Klasse...)
Das Problem ist, dass ich beim Initialisieren des Spielers, genauer gesagt der Ressourcen ein Problem bekomme.
Die Funktion:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
int cPlayer::Init(cDirect3D *Direct3D, cAudio *Audio, cResourceManager *ResourceManager)
{
//////////////////////////////////////////////////////////////
m_pDirect3D = Direct3D;
m_pAudio = Audio;
m_pResourceManager = ResourceManager;
m_pSpritePlayer = new cSprite;
m_pSpritePlayer->Create(m_pDirect3D->GetDevice(), m_pResourceManager, 3);
m_pSpritePlayer->SetSpeed(600.0f, 600.0f);
m_pSpritePlayer->SetPosition(50, 50);
// Wenn dies aufgerufen wird, findet der Fehler statt. Allerdings erst beim Beenden
// m_pResourceManager->AddTexture("Sprites/Player/Player1.png");
// m_pResourceManager->AddTexture("Sprites/Player/Player2.png");
// m_pResourceManager->AddTexture("Sprites/Player/Player3.png");
// Sofern dies danach ausgeführt wird, stürzt das Spiel gleich beim Start ab!
// m_pSpritePlayer->AddTexture(m_pResourceManager->GetTexture("Sprites/Player/Player1.png"));
// m_pSpritePlayer->AddTexture(m_pResourceManager->GetTexture("Sprites/Player/Player2.png"));
// m_pSpritePlayer->AddTexture(m_pResourceManager->GetTexture("Sprites/Player/Player3.png"));
/////////////////////////////////////////////////////////////
return 0;
}
|
Das Beispielprojekt könnt ihr hier Downloaden:
http://rapidshare.com/files/88317710/Game.rar.html
Edit: Ich vergaß, das Beispielprojekt ist eine CodeBlocks-Project Datei
Hoffe ihr versteht es und könnt mir helfen.