Hi,
Ich habe ein Problem mit der tbSpriteEngine.
Ich poste einfach mal sämtlichen Code, der relevant ist.
Zuerst CGame::Init
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
// Spritetextur laden
m_pSpritesTex = tbTextureManager::Instance().GetTexture("Data\\Sprites.bmp", TRUE, D3DX_DEFAULT, D3DX_DEFAULT, 1);
if(m_pSpritesTex==NULL) TB_ERROR("Fehler beim Laden der Sprites", TB_ERROR);
// Spriteengine
m_pSprites = new tbSpriteEngine;
if(m_pSprites->Init(16000)) TB_ERROR("Fehler beim Erstellen des der Spriteengine", TB_ERROR);
// Effekt für die Sprites laden
m_pSpritesEffect = new tbEffect;
if(m_pSpritesEffect->Init("Data\\Sprites.fx")) TB_ERROR("Fehler beim Erstellen des Effekts für die Sprites!", TB_ERROR);
m_pSpritesEffect->GetEffect()->SetTexture("Texture", m_pSpritesTex);
m_pSprites->CreateSpriteType(0, tbVector2(0.0f, 0.0f), tbVector2(32.0f - 1.0f, 32.0f - 1.0f));
|
Dann CGame::Render(float fTime)
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
m_pSprites->Begin(tbDirect3D::Instance().GetTransform(D3DTS_VIEW), m_vCamPos);
// Hier könnte ein Fehler sein
m_pSprites->AddSprite(0,
tbVector3(0.0, -100.0, 0.0),
tbColor(1.0f, 1.0f, 1.0f, tbFloatRandom(0.25f, 0.9f)) - tbColorRandom(0.0f) * 0.25f,
tbVector2(tbFloatRandom(1.0f, 5.0f)),
tbFloatRandom(0.0f, TB_PI),
TRUE));
m_pSpritesEffect->Begin();
m_pSpritesEffect->Pass(0);
D3D.SetTransform(D3DTS_WORLD, tbMatrixTranslation(tbVector3(0.0, 0.0,0.0)));
m_pSprites->Render();
m_pSpritesEffect->End();
|
Ich hab schon ewig rumprobiert, kann sein, dass ich etwas vergessen bzw. falsch gemacht habe.
@Edit:
Sry: Nun ja der Sprite wird einfach nicht gerendert. Ich weiß nur nicht wieso.
Mit freundlichen Grüßen
Frederik Simon