Jonas Skrevet 12. desember 2006 Del Skrevet 12. desember 2006 Hei, Strever med å gjøre dette i DirectX, og jeg får ikke helt til å rotere verdenen. Først brukte jeg 3D-device kun til å tegne 2D, fordi jeg trengte noen funksjoner. Da satt jeg ikke noe worldmatrix, projectionmatrix eller viewmatrix, man så alt bare "ovenifra", som om det skulle være 2D. Nå ønsker jeg derimot å rotere, men uansett hvilken verdier jeg setter har det ingen effekt. Ser fortsatt alt ovenifra! Mistenker at jeg har initialisert noe feil, men jeg klarer ikke å se hva. Slik initialiserer jeg devicet: Set dx_Device = dx_3D.CreateDevice(Guid, Track.Surface) VPDesc.lWidth = 640 VPDesc.lHeight = 480 VPDesc.lX = 0 VPDesc.lY = 0 VPDesc.minz = 0# VPDesc.maxz = 1# dx_Device.SetViewport VPDesc dx.IdentityMatrix matWorld dx_Device.SetTransform D3DTRANSFORMSTATE_WORLD, matWorld dx.ProjectionMatrix matProj, 1, 100, PI / 2# dx_Device.SetTransform D3DTRANSFORMSTATE_PROJECTION, matProj dx.ViewMatrix matView, MakeVector(50, 0, -5), MakeVector(50, 50, 0), MakeVector(0, 1, 0), 0# dx_Device.SetTransform D3DTRANSFORMSTATE_VIEW, matView Og slik tegner jeg: dx.RotateYMatrix matWorld, 60 * GraderTilRadianer dx_Device.SetTransform D3DTRANSFORMSTATE_WORLD, matWorld dx_Device.Clear 1, Make3DRECT(640, 480), D3DCLEAR_TARGET, 0, 0, 0 dx_Device.BeginScene dx_Device.SetTexture 0, TrackTexture dx_Device.DrawPrimitive D3DPT_TRIANGLESTRIP, D3DFVF_TLVERTEX, shapeTrack(0), UBound(shapeTrack) + 1, D3DDP_DEFAULT dx_Device.EndScene Noen som kjapt ser noen åpenbare feil? Takker for hjelp! - Jonas (Rename *.txt til *.rar) 4.txt Lenke til kommentar
Jonas Skrevet 15. desember 2006 Forfatter Del Skrevet 15. desember 2006 (endret) Fant det ut etter flere timer mer debugging; D3DFVF_TLVERTEX gjorde slik at DX ikke tok hensyn roteringene mine, på en eller annne måte. Det funket supert med D3DFVF_LVERTEX. Synes det var litt merkelig at dette ikke var nevnt i noen artikkler. Endret 15. desember 2006 av Jonas Lenke til kommentar
GeirGrusom Skrevet 15. desember 2006 Del Skrevet 15. desember 2006 Hmmmm... litt snodig ja. Men jeg regner med at hele denne delen av Direct3D forsvinner, siden den er blitt fullstendig unødvendig med den nye shader modellen i DX10. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå