3D Sprites sehen unter Win2K zerrissen aus :-( (gelöst)
3D Sprites sehen unter Win2K zerrissen aus :-( (gelöst)
Hallo,
ich teste gerade die Anfänge meines Kartenspiels unter Win2K (entwickelt wird es unter Win98SE).
Jetzt sehe ich daß die 3D Sprites unter Win2K völlig auseinandergedehnt erscheinen.
Hier mal ein Bild vons janzen: Bildchen
Unter Win98Se sehen die 162 Karten, die testweise auf dem Screen verteilt sind, völlig korrekt aus.
Habt ihr eine Idee was das sein könnte?
Gruß Markus
PS: Win98SE = DirectX 9.irgendwas
Win2K = DirectX 7.0
ich teste gerade die Anfänge meines Kartenspiels unter Win2K (entwickelt wird es unter Win98SE).
Jetzt sehe ich daß die 3D Sprites unter Win2K völlig auseinandergedehnt erscheinen.
Hier mal ein Bild vons janzen: Bildchen
Unter Win98Se sehen die 162 Karten, die testweise auf dem Screen verteilt sind, völlig korrekt aus.
Habt ihr eine Idee was das sein könnte?
Gruß Markus
PS: Win98SE = DirectX 9.irgendwas
Win2K = DirectX 7.0
Zuletzt geändert von Kurzer am 30.05.2006 16:34, insgesamt 1-mal geändert.
Ich habe nur die Vermutung, dass es etwas mit FlipBuffers() zu tun hat. Wenn ich keinen Parameter übergebe, ist alles ok, aber wenn ich einen Parameter übergebe (s. Hilfe dazu), dann sieht es genauso wie auf deinem Bild aus; ich nutze XP SP2.
PB 4.30
Code: Alles auswählen
Macro Happy
;-)
EndMacro
Happy End
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
Fensterrahmen, weil WindowedScreen.
Ich habe jetzt den gesamten Quellcode auch mal abgelegt: Hier die ZIP Datei mit den Sourcen und den BIldern (ca. 10KB gesamt)
Das ganze spielt sich in der Includedatei "SkipBo-Grafik.pb" ab.
Gruß Markus
Ich habe jetzt den gesamten Quellcode auch mal abgelegt: Hier die ZIP Datei mit den Sourcen und den BIldern (ca. 10KB gesamt)
Das ganze spielt sich in der Includedatei "SkipBo-Grafik.pb" ab.
Gruß Markus
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
ich kann erst in 2 stunden reingucken, bin grad auf der arbeit...
das mit dem argument beim FlipBuffers() wär natürlich ne möglichkeit,
der windowedscreen verhält sich eben doch ein wenig anders als der fullscreen, z.b. die synchro geht vom desktop aus und nicht vom screen selber...

das mit dem argument beim FlipBuffers() wär natürlich ne möglichkeit,
der windowedscreen verhält sich eben doch ein wenig anders als der fullscreen, z.b. die synchro geht vom desktop aus und nicht vom screen selber...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
Schade... habe alle Parameter für FlipBuffers() ausprobiert (und auch ohne). Bringt leider nix.AND51 hat geschrieben:Ich habe nur die Vermutung, dass es etwas mit FlipBuffers() zu tun hat. Wenn ich keinen Parameter übergebe, ist alles ok, aber wenn ich einen Parameter übergebe (s. Hilfe dazu), dann sieht es genauso wie auf deinem Bild aus; ich nutze XP SP2.
Gruß Markus
Versuch mal die Darstellung ohne Sprite3D.
Nur mal schauen, wie es da aussieht. Ist dein Windows98SE Rechner der selbe wie dein 2000 Rechner?
- Manche Sachen sind nicht ganz NT kompatibel.
- Deine Grafikkarte unterstützt das, was du vorhast so nicht
Versuch mal deine Sprites aus einem Vielfachen von 2 aufzubauen.
Das können nicht alle Grafikkarten. Ich weiß nur, dass bei günstigen Grafikkarten (weder ATI noch nVIDEA-Chip) an den Ecken von Bilder solche Sachen auftreten können. Vielleicht musst du auch den Speicher für deine Sprites vorher manuel allokieren.
Ich hatte ein ähnliches Problem mal mit einer SIS-Grafikkarte und einem 100 x 100 Sprite.
Sah komplett verschrumpelt aus. Aber kann man umgehen.
128 x 128 draus gemacht.
Aber ich muss gestehen, ich hab deinen Code nicht gelesen, und sicherlich hast du schon alles versucht.

Nur mal schauen, wie es da aussieht. Ist dein Windows98SE Rechner der selbe wie dein 2000 Rechner?
- Manche Sachen sind nicht ganz NT kompatibel.
- Deine Grafikkarte unterstützt das, was du vorhast so nicht
Versuch mal deine Sprites aus einem Vielfachen von 2 aufzubauen.
Das können nicht alle Grafikkarten. Ich weiß nur, dass bei günstigen Grafikkarten (weder ATI noch nVIDEA-Chip) an den Ecken von Bilder solche Sachen auftreten können. Vielleicht musst du auch den Speicher für deine Sprites vorher manuel allokieren.
Ich hatte ein ähnliches Problem mal mit einer SIS-Grafikkarte und einem 100 x 100 Sprite.
Sah komplett verschrumpelt aus. Aber kann man umgehen.
128 x 128 draus gemacht.
Aber ich muss gestehen, ich hab deinen Code nicht gelesen, und sicherlich hast du schon alles versucht.

Kinder an die Macht http://scratch.mit.edu/
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
> Dabei wird doch Antialiasing nicht benutzt oder?
das regelt Sprite3DQuality()
...aber das ist kein AA-problem, das sieht nach was anderem aus...
[edit]
da sagt Xaby was... genau...
bei einigen Grakas müssen die vorlagen für Sprite 3D quadratisch sein und ganze zweierpotenzen kantenlängen haben...
also, wenn du die karten in 256x256 malst, darstellen kannst du sie so rechteckig wie du lustig bist, aber die eigentliche texture muss 2^x*2^x sein...
das regelt Sprite3DQuality()
...aber das ist kein AA-problem, das sieht nach was anderem aus...

[edit]
da sagt Xaby was... genau...
bei einigen Grakas müssen die vorlagen für Sprite 3D quadratisch sein und ganze zweierpotenzen kantenlängen haben...
also, wenn du die karten in 256x256 malst, darstellen kannst du sie so rechteckig wie du lustig bist, aber die eigentliche texture muss 2^x*2^x sein...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
Ohne 3D geht es.Xaby hat geschrieben:Versuch mal die Darstellung ohne Sprite3D.
Habe die selbe Karte einmal mit, einmal ohne 3D darstellen lassen.
Code: Alles auswählen
DisplaySprite(11, WindowMouseX(#MainWindow), WindowMouseY(#MainWindow))
DisplaySprite3D(11, WindowMouseX(#MainWindow)+ 100, WindowMouseY(#MainWindow), 255)
Nein, sind verschiedene, ich weiß leider auch nicht was für eine Grafikkarte im 2K Rechner ist.Xaby hat geschrieben:Nur mal schauen, wie es da aussieht. Ist dein Windows98SE Rechner der selbe wie dein 2000 Rechner?
Das kann es nicht sein, die sind 96 x 128 pixel groß. Also ziemlich Computerfreundliche WerteXaby hat geschrieben:Versuch mal deine Sprites aus einem Vielfachen von 2 aufzubauen.

Naja nicht wirklich. Aber als PB Anfänger wüsste ich jetzt auch nicht wo ich da ansetzen sollte. Daher mein Hilferuf.Xaby hat geschrieben:Aber ich muss gestehen, ich hab deinen Code nicht gelesen, und sicherlich hast du schon alles versucht.
Gruß Markus