cfehunter
11-28-2006, 03:45 AM
Hi
this is my first attempt at using directX.
here's my code so far
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim dx As New DirectX7
Dim dd As DirectDraw7
dd = dx.DirectDrawCreate("")
Call dd.SetCooperativeLevel(Me.Handle, DDSCL_FULLSCREEN Or DDSCL_EXCLUSIVE Or DDSCL_ALLOWREBOOT)
Call dd.SetDisplayMode(640, 480, 16, 0, DDSDM_DEFAULT)
Dim Primary As DirectDrawSurface7 'Primary surface
Dim BackBuffer As DirectDrawSurface7 'Backbuffer surface
Dim ddsdPrimary As DDSURFACEDESC2 'Primary surface description
Dim caps As DDSCAPS2 'Capabilities description
ddsdPrimary.lFlags = DDSD_CAPS Or DDSD_BACKBUFFERCOUNT
ddsdPrimary.ddsCaps.lCaps = DDSCAPS_PRIMARYSURFACE Or DDSCAPS_FLIP Or DDSCAPS_COMPLEX
ddsdPrimary.lBackBufferCount = 1
Primary = dd.CreateSurface(ddsdPrimary)
caps.lCaps = DDSCAPS_BACKBUFFER
BackBuffer = Primary.GetAttachedSurface(caps)
Dim Hero As DirectDrawSurface7
Dim ddsdNewSprite As DDSURFACEDESC2
ddsdNewSprite.lFlags = DDSD_CAPS Or DDSD_WIDTH Or DDSD_HEIGHT
ddsdNewSprite.ddsCaps.lCaps = DDSCAPS_OFFSCREENPLAIN
ddsdNewSprite.lWidth = 16
ddsdNewSprite.lHeight = 16
Hero = dd.CreateSurfaceFromFile("HeroLeftMove.gif", ddsdNewSprite)
Dim SrcRect As RECT
Dim DestRect As RECT
With SrcRect
.Bottom = 16
.Left = 0
.Right = 16
.Top = 0
End With
With DestRect
.Bottom = 16
.Left = 0
.Right = 16
.Top = 0
End With
BackBuffer.Blt(DestRect, Hero, SrcRect, DDBLT_WAIT)
Primary.Flip(Nothing, DDFLIP_WAIT)
End Sub
End Class
The File called "HeroLeftMove.gif" is in the same folder as the exe file, but i still get a file not found error with this code, can anybody help me please?
this is my first attempt at using directX.
here's my code so far
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim dx As New DirectX7
Dim dd As DirectDraw7
dd = dx.DirectDrawCreate("")
Call dd.SetCooperativeLevel(Me.Handle, DDSCL_FULLSCREEN Or DDSCL_EXCLUSIVE Or DDSCL_ALLOWREBOOT)
Call dd.SetDisplayMode(640, 480, 16, 0, DDSDM_DEFAULT)
Dim Primary As DirectDrawSurface7 'Primary surface
Dim BackBuffer As DirectDrawSurface7 'Backbuffer surface
Dim ddsdPrimary As DDSURFACEDESC2 'Primary surface description
Dim caps As DDSCAPS2 'Capabilities description
ddsdPrimary.lFlags = DDSD_CAPS Or DDSD_BACKBUFFERCOUNT
ddsdPrimary.ddsCaps.lCaps = DDSCAPS_PRIMARYSURFACE Or DDSCAPS_FLIP Or DDSCAPS_COMPLEX
ddsdPrimary.lBackBufferCount = 1
Primary = dd.CreateSurface(ddsdPrimary)
caps.lCaps = DDSCAPS_BACKBUFFER
BackBuffer = Primary.GetAttachedSurface(caps)
Dim Hero As DirectDrawSurface7
Dim ddsdNewSprite As DDSURFACEDESC2
ddsdNewSprite.lFlags = DDSD_CAPS Or DDSD_WIDTH Or DDSD_HEIGHT
ddsdNewSprite.ddsCaps.lCaps = DDSCAPS_OFFSCREENPLAIN
ddsdNewSprite.lWidth = 16
ddsdNewSprite.lHeight = 16
Hero = dd.CreateSurfaceFromFile("HeroLeftMove.gif", ddsdNewSprite)
Dim SrcRect As RECT
Dim DestRect As RECT
With SrcRect
.Bottom = 16
.Left = 0
.Right = 16
.Top = 0
End With
With DestRect
.Bottom = 16
.Left = 0
.Right = 16
.Top = 0
End With
BackBuffer.Blt(DestRect, Hero, SrcRect, DDBLT_WAIT)
Primary.Flip(Nothing, DDFLIP_WAIT)
End Sub
End Class
The File called "HeroLeftMove.gif" is in the same folder as the exe file, but i still get a file not found error with this code, can anybody help me please?