VividGL 2D_Example1.

Miscellaneous Forums/Blitz Showcase/VividGL 2D_Example1.

Will be releasing a few demos over the coming days, before (And after) VividGL-3D Lite's release.

Here's a little demo demonstrating some of it's (3D accelerated) 2d features(Which can be used at the same time as it's 3d features)

This should run on any OpenGL card capable of multi-texturing, does not use pixel shaders.

http://www.excess.eclipse.co.uk/2D_Example1.rar

This demo uses a smoke image to create what appears to be a glowing ball of light, with vapours emitting.


Here's the actual demo code I used. Function names subject to change.

Include "Includes\VividGL_Lite.bb"
Graphics_Init(640,480,16)
glSetbuffer Graphics_Back()
;-

smokeTex=Texture_Load("Media\Smoke1.jpg",glMipMap)
While Not KeyDown(1)
	glCls(False)

For j=1 To 1
	smk.smk=New smk
	smk=New smk
	smk\life=1
	smk\xi=Rnd(-2,2)
	smk\yi=Rnd(-2,2)
	smk\x=Rnd(GraphicsWidth()/2-20,GraphicsWidth()/2+20)
	smk\y=Rnd(GraphicsHeight()/2-20,GraphicsHeight()/2+20)
Next


pc=0

	Lock2D()
		activate_Texture(smokeTex,0)

		Render_Begin()
			For smk=Each smk
				ColorAlpha 1*smk\life,1*smk\life,1*smk\life,0
				Render_QuadFast(smk\x-smk\size,smk\y-smk\size,smk\size*2,smk\size*2)
				smk\size=smk\size+2.5
				smk\life=smk\life*0.98
				smk\x=smk\x+smk\xi
				smk\y=smk\y+smk\yi
				If smk\life<0.1 Delete smk
			Next
		Render_End()
	Unlock2D()
	
      glText 1,1,"My balls. Are made. Of light."
	Graphics_Flip(False)
Wend


Type smk ;demo related.
	Field x#,y#,size#
	Field life#,xi#,yi#
End Type