Corrupte image

Blitz3D Forums/Blitz3D Beginners Area/Corrupte image

The forum is locked. These are the original blitzbasic.com forums, kept so they can still be read. No new topics, replies or edits can be made here. To join in, head over to the Blitz3D+ forums.

That's a real shame :/ .. I does sound like DirectX is the problem. Or maybe the graphic drivers, I have a NVidia card and it gave me problems using PickedSurface.
Uninstalling DirectX seems to be a big problem, but maybe you could use system restore if you're on XP ? I tried to write some code that does the same as yours, sort of as a checkup:
	Graphics 640, 480, 0, 2
	
	;create array
	Dim im_l(480)
	
	;select block height
	fStep = 1
	
	;draw ovals on screen
	For i = 0 To 1000
		Color 0, 0, Rand($FFFFFF)
		Oval Rand(800), Rand(600), Rand(120), Rand(100)
	Next
	
	;create/grab images
	For y = 0 To 479 / fStep
		im_l(y) = CreateImage(640, fStep)
		
		;method I
		;GrabImage im_l(y), 0, y * fStep
		
		;method II
		CopyRect 0, y * fStep, 639, fStep, 0, 0, BackBuffer(), ImageBuffer(im_l(y))
	Next
	
	;main loop
	Repeat
		
		Cls
		
		time = time + 1
		
		;draw images	
		For y = 0 To 479 / fStep
			DrawBlock im_l(y), Cos(time + y) * 50, y * fStep
		Next
	
		Flip
	
	Until KeyHit(1)
	
	End

I think you can make a workaround for this trouble, since images with a height of 5 are working, create the images at 640x5, but only CopyRect one line on it. This way you'll need 4 times more memory, but you can avoid this nasty bug. And have you installed the lasted Blitz ? Maybe you could try downgrading to a previous version.

(edit)
He, I was thinking .. maybe you could load the image with LoadAnimImage, and then set the tilesize to 640x1 ..