Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Jakozk Junior JLI'ler
Anmeldedatum: 16.05.2004 Beiträge: 88 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 08.03.2009, 17:33 Titel: Sprite wird nicht angezeigt. |
|
|
Problem ist : Das geladene Sprite wird nicht angezeigt. Suche schon länger und finde den Fehler einfach nicht.
http://rafb.net/p/6e4J5n57.html
Die Messagebox wird angezeigt, Text und BackBuffer auch, das Sprite jedoch nicht. Kann ich mir einfach nicht erklären... |
|
Nach oben |
|
|
Snowsong Junior JLI'ler
Alter: 37 Anmeldedatum: 15.05.2007 Beiträge: 53
Medaillen: Keine
|
Verfasst am: 08.03.2009, 18:08 Titel: |
|
|
soweit wie ich das sehe legst du nirgends die Position fest.
Du hast zwar einen Variable dafür aber dieser weist du keinen wert zu. |
|
Nach oben |
|
|
Jakozk Junior JLI'ler
Anmeldedatum: 16.05.2004 Beiträge: 88 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 08.03.2009, 18:47 Titel: |
|
|
Selbst wenn ich Sprite.SetPosition() vorher aufrufe, passiert trotzdem nichts.
EDIT:
Hab jetzt mal die Create Funktion verändert:
CPP: | if(FAILED (D3DXCreateTextureFromFileEx(m_lpDevice,
lpFileName,
ImgInfo.Width,
ImgInfo.Height,
1,0,
D3DFMT_UNKNOWN,
D3DPOOL_MANAGED,
D3DX_FILTER_NONE,
D3DX_FILTER_NONE,
0,0,0,
&m_lpTexture)))
{
// Fehler ----
MessageBox(0,"Fehler beim erstellen der Textur","ERROR",MB_OK);
} |
Wenn ich nun den Code ausführe, gibts die Messagebox, weswegen ich glaube das der Fehler da liegen muss. |
|
Nach oben |
|
|
AFE-GmdG JLI MVP
Alter: 45 Anmeldedatum: 19.07.2002 Beiträge: 1374 Wohnort: Irgendwo im Universum... Medaillen: Keine
|
Verfasst am: 08.03.2009, 19:30 Titel: |
|
|
Dann speichere doch mal den Rückgabewert von D3DXCreateTextureFromFileEx in einer Variable und gib ihn in der Messagebox mit aus.
FAILED überprüft ja nur, OB es einen Fehler gegeben hat.
Der genaue Fehler steht in dem Rückgbewert. _________________
CPP: | float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;} |
|
|
Nach oben |
|
|
Jakozk Junior JLI'ler
Anmeldedatum: 16.05.2004 Beiträge: 88 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 08.03.2009, 19:45 Titel: |
|
|
Ok, hab ich gemacht: Den Fehler den ich jetzt bekomme ist :
Liegt es an dem Bild das ich benutze ?
EDIT:
Ok, lag wohl daran das ich die Exe nicht aus den Ordner gestartet habe, sondern aus VS heraus. Jetzt kommt jedoch der Fehler
in der Draw Funktion
CPP: | void CSprite::Draw(void)
{
HRESULT hr;
if(FAILED(hr = m_lpSprite->Draw(m_lpTexture,
0,
&m_vRotationCenter,
&m_vPosition,
0xFFFFFFFF)))
{
const char* Err = DXGetErrorDescription9(hr);
MessageBox(0,Err,"ERROR",MB_OK);
}
}
|
|
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 09.03.2009, 14:56 Titel: |
|
|
Teste mal, ob m_lpTexture noch gültig bzw. !=0 ist und probier mal den Call ohne die beiden Vektor-Argumente.
m_vPosition scheint hier z.B. gar nicht initialisiert zu sein? _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
Jakozk Junior JLI'ler
Anmeldedatum: 16.05.2004 Beiträge: 88 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 09.03.2009, 17:32 Titel: |
|
|
m_lpTexture ist ungleich 0 und selbst wenn ich für die beiden Vektoren jedesmal 0 angebe kommt trotzdem der Fehler :/ |
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 10.03.2009, 14:50 Titel: |
|
|
Dann zeig doch mal den Initialisierungscode.
Wo erstellst du Sprite und Textur? _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
Snowsong Junior JLI'ler
Alter: 37 Anmeldedatum: 15.05.2007 Beiträge: 53
Medaillen: Keine
|
Verfasst am: 10.03.2009, 16:50 Titel: |
|
|
In solchen Fällen lass ich meist den Debugger laufen und check an den
benutzten Zeilen Code alle Paraeter und Variablen etc ob die
auch dem entsprechen was sie müssten meist hilft das schnell. |
|
Nach oben |
|
|
Jakozk Junior JLI'ler
Anmeldedatum: 16.05.2004 Beiträge: 88 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 12.03.2009, 22:16 Titel: |
|
|
Ich raffs einfach nicht... vlt. findet ihr ja was : ( mitm Debugger hab ich auch nichts richtiges gefunden, bzw. bin auch nochn bissl zu blöd dafür ~~
Hier ist mal der fast komplette Code, bzw. die stellen wo es hapern könnte
http://rafb.net/p/zIdDxO14.html
Ich sitz an dem scheiss Problem echt schon so lange und ich kann mir einfach nicht helfen.. : /
Kommt immer der Fehler bei der Draw Methode "Invalid Call" |
|
Nach oben |
|
|
Dr. Best Senior JLI'ler
Alter: 34 Anmeldedatum: 17.06.2004 Beiträge: 269 Wohnort: Köln Medaillen: Keine
|
Verfasst am: 13.03.2009, 11:57 Titel: |
|
|
Du vergisst ID3DXSprite::Begin(...) und ID3DXSprite::End(...) aufzurufen. _________________
Ich bin da, wer noch? |
|
Nach oben |
|
|
Jakozk Junior JLI'ler
Anmeldedatum: 16.05.2004 Beiträge: 88 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 13.03.2009, 18:45 Titel: |
|
|
WUHU endlich geht es Im buch hab ich garnichts dazu gefunden und im Beispiel code war davon auch nichts zu finden O_o vlt. hab ichs einfach übersehen...
aufjedenfall vielen lieben Dank endlich kann ich weiter programmieren! |
|
Nach oben |
|
|
|