Gå til innhold
🎄🎅❄️God Jul og Godt Nyttår fra alle oss i Diskusjon.no ×

DirectX, endre worldmatrix - gir ingen effekt!


Anbefalte innlegg

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
Videoannonse
Annonse

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. :D Synes det var litt merkelig at dette ikke var nevnt i noen artikkler.

Endret av Jonas
Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...