|
DirectX-Forum - Beitragsübersicht - |
|
Thema | DX8: Maximale Texturegrösse (Problem) |
Von |
Fabian |
E-Mail |
fabiansalzgeber@gmail.com |
Datum |
02. März 2009 um 16:54:00 |
Frage |
Hallo,
Ich lade ein Tileset (PNG) mit der Grösse 256*6720 Pixel mit diesem Befehl: Set DXTexture = Direct3DX8.CreateTextureFromFileEx(Direct3D_Device, TextureFile, D3DX_DEFAULT, _ D3DX_DEFAULT, D3DX_DEFAULT, 0, D3DFMT_UNKNOWN, D3DPOOL_MANAGED, _ D3DX_FILTER_POINT, D3DX_FILTER_POINT, &HFF000000, ByVal 0, ByVal 0) Mit DX8Sprite.Draw zeichne ich diese Texture auf den Bildschirm. Soweit funktioniert auch alles, ausser das die Texture in der Höhe zusammengestaucht wird! Nachdem ich etwas herumprobiert habe ist mir aufgefallen das DX8 alle Texturen die grösser sind als 4096 pixel bei der Darstellung zusammenpresst. Das heisst die 256*6720 grosse Texture wird zwar komplett dargestellt (also nichts weggeschnitten) aber eben auf 256*4092 zusammengestaucht. Alles was darunter ist wird mit korrekten Proportionen dargestellt.
Nun ist meine Frage ob ich dieses Problem umgehen kann oder hab ich eine Einstellung übersehen. |
|
Antwort: |
Von |
Fabian |
Datum |
13. März 2009 um 19:53:10 |
Antwort |
Das Bildformat spielt dabei keine Rolle es liegt tatsächlich an der Grafikkarte. Die haben je nach Modell begrenzungen was die Grösse an Texturen angeht, selbst wenn es als Sprite verwendet wird. Ich habe das Problem mittlerweile damit umgangen das ich das Bild in kleine Parts aufteile bevor es überhaubt geladen wird. Das geht zum Bsp recht einfach mit der "Freeimage.dll". |
|
[ Antwort schreiben | Zurück zum DirectX-Forum | Forum-Hilfe ] |
|
Letzte Aktualisierung: Sonntag, 13. Dezember 2015 |
|