PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Direct3D - Skybox problem


Mad-Marty
2006-03-24, 23:29:22
Hi,

programmiere zur zeit mein erstes D3D game, in Python mittels DirectPython (gibt zugriff auf die DirectX Bibliothek).

Das Funktioniert auch wunderbar, und man spart sich viele zeilen,
leider habe ich an den kanten wo sich die skybox texturen berühren eine ganz
feine linie beim rotieren, manchmal ist sie auch nicht da.

Was kann das sein, die vertexstrip sind exakt auf einanden ...
Hier mal ein beispiel der hinteren plane und der seitlichen.


backplane = (
(-47.0, 40.0, 47.0, 0.0, 0.0),
(47.0, 40.0, 47.0, 1.0, 0.0),
(-47.0, 0.0, 47.0, 0.0, 0.50),
(47.0, 0.0, 47.0, 1.0, 0.50),
)


leftplane = (
(-47.0, 40.0, 47.0, 0.0, 0.0),
(-47.0, 40.0, -47.0, 1.0, 0.0),
(-47.0, 0.0, 47.0, 0.0, 0.50),
(-47.0, 0.0, -47.0, 1.0, 0.50),
)

ScottManDeath
2006-03-24, 23:57:21
Das dürfte am Texturfilter liegen, der auf Wrap gestellt ist. Probiere mal Clamping, bzw eine deren Varianten.

Mad-Marty
2006-03-25, 00:38:43
Danke für den Tip, ich probiers gerade aus.

EDIT: Clamp hat leider nicht geholfen.
Habe jetzt die koordinaten geändert und lasse die texturen leicht überlappen.
Erscheint mir aber nicht unbedingt die wahre lösung zu sein ;)


Hast du zufällig eine gute Ressource für tutorials ?
Wo ich erlesen kann für was welche der modes gut ist ?


class SS:
#Sampler states

class ADDRESS:
#Texture addressing modes
WRAP = 1
MIRROR = 2
CLAMP = 3
BORDER = 4
MIRRORONCE = 5

ScottManDeath
2006-03-25, 09:18:48
Ich bin davon ausgegangen das du eine Cubemap textur genommen hast für die Skybox. Dann sollte clamping helfen.

Mad-Marty
2006-03-25, 12:49:01
Ich bin davon ausgegangen das du eine Cubemap textur genommen hast für die Skybox. Dann sollte clamping helfen.

Öhm nein, habe einfach 4ecke erzeugt und diese texturiert.