JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=55fc9dd6425d189bf79b8486e65be6a2Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

[DirectX] Wie verwende ich Teile einer Bitmap als Textur?

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> FAQ
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Christian Rousselle
Site Admin


Alter: 44
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 02.06.2004, 20:11    Titel: [DirectX] Wie verwende ich Teile einer Bitmap als Textur? Antworten mit Zitat

Frage:

Ich möchte einen Textur erstellen, dabei soll aber nur ein Teil einer Grafik für die Textur verwenet werden.

Was kann ich tun? Ich bin so verzweifelt. Confused

Antwort:

Die einfachste Möglichkeit besteht darin, eine Textur in der gewünschten Größe anzulegen und danach die Methode GetSurfaceLevel() aufzurufen, um einen Zeiger auf das Surface, dass von der Textur verwendet wird zu erhalten. In dieses Surface kann dann mittels D3DXLoadSurfaceFromFile() der gewünschte Teil der Grafik geladen werden.

Der folgende Code verdeutlicht, wie das funktioniert.

CPP:
LPDIRECT3DSURFACE9 pSurface;
LPDIRECT3DTEXTURE9 pTexture;

RECT r = { 0, 0, 32, 32 };

D3DXCreateTexture(pd3dDevice, 32, 32, 1, 0, D3DFMT_R8G8B8, D3DPOOL_MANAGED, &pTexture);

pTexture->GetSurfaceLevel(0, &pSurface);

D3DXLoadSurfaceFromFile(pSurface, NULL, NULL, szFileName, &r, D3DX_DEFAULT, 0x00000000, NULL);

pSurface->Release();



Bemerkungen:
Zu beachten ist, dass hier nur ein MipMap-Level der Textur verwendet wird. Wichtig ist auch, dass das Format der Textur und der geladenen Grafik übereinstimmen oder angepasst werden muss.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> FAQ Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum