| Not that the difference between FreeImage or put the variable that contains that image on a value of 0. 
 So if I use FreeImage, the thread does not work for some reason again to reload the image, but if I put in the variable to 0, if it works.
 
 Solved by now.
 
 
 
;
; Example of use FastPointer library.
; (c) 2008-2009 created by MixailV aka Monster^Sage [monster-sage@...]  http://www.fastlibs.com
;
; Attention! Functions only for the advanced users, use them very accurately.
; If you do not understand how it works, do not use it!
;
.Inicio
; create scene objects
Graphics3D 800,600,0,2
SetFont LoadFont("Tahoma",15)
Camera = CreateCamera()  :  PositionEntity Camera, 0, 0, -3.5
Light = CreateLight()
Global Cube
; function for thread (with single integer param - it is obligatory)
; don't load meshes in thread, if you use RenderWorld function in main loop
Function ThreadFunction ( entity%=0 )
	Repeat
		If Cube% = 0
			Cube% = LoadImage("Yue.bmp") ; Image 278 Megas.
		End If 
	Forever
End Function
; get pointer to thread function
ThreadFunctionPointer = FunctionPointer()
	Goto skip
	ThreadFunction()		; <<< get pointer from this function
	.skip
; create thread
Thread = CreateThread (ThreadFunctionPointer, Cube)
; main loop
While Not KeyHit(1)
	RenderWorld
	If Cube<> 0
		FreeThread(Thread)
		DrawImage(Cube%,0,0)
	End If 
	AppTitle Cube%
	Text 10,10,"You can control entity from threads!"
	Flip 0
Wend
; FreeImage Cube ; <<< Error  Thread no work
Cube% = 0
; freel thread  
If IsThread(Thread) Then FreeThread(Thread)
Goto Inicio
WaitKey()
End
 Last edited 2012
 
 
 |