| Based on a joke of me & big10p about bubbles hereby the code for a bubble generator :-P 
 
 
;The ULTIMATE bubble generator!
;
;Worklog
;-------
;big10p 20-may-07, bubble mesh
;LeeMing 20-may-07, Tbubble, movement
Graphics3D 800,600,32
SetBuffer BackBuffer()
SeedRnd MilliSecs()
Global cam = CreateCamera()
CameraClsColor cam,50,0,100
PositionEntity cam,0,0,-5
Global light = CreateLight()
Global light2 = CreateLight()
TurnEntity light,50,90,0
TurnEntity light2,90,50,0
Global ang# = 0.0
Type Tbubble
	Field mesh
	Field uf# ;up force
End Type
For b=1 To 60
	bubble.Tbubble = New Tbubble
	bubble\mesh=makebubble()
	bubble\uf=Rnd(.1,.3)
	PositionEntity bubble\mesh, Rand(-80,80)/10, Rand(-70,70)/10, Rand(4)
Next
While Not KeyHit(1)
	For bubble.Tbubble = Each Tbubble
		ScaleEntity bubble\mesh,1+(Cos(ang)*0.05),1+(Sin(ang)*0.05),1+(Cos(ang)*0.05)
		ang = (ang + 10) Mod 360.0
		TurnEntity bubble\mesh,.5,.5,.5
		PositionEntity bubble\mesh,EntityX(bubble\mesh)+Rnd(-.1,.1),EntityY(bubble\mesh)+bubble\uf,EntityZ(bubble\mesh)
		
		If EntityY(bubble\mesh)>7 Then PositionEntity bubble\mesh,EntityX(bubble\mesh),EntityY(bubble\mesh)-14,EntityZ(bubble\mesh)
		;If EntityX(bubble\mesh)>4 Then PositionEntity bubble\mesh,EntityX(bubble\mesh)-8,EntityY(bubble\mesh),EntityZ(bubble\mesh)
		;If EntityX(bubble\mesh)<4 Then PositionEntity bubble\mesh,EntityX(bubble\mesh)+8,EntityY(bubble\mesh),EntityZ(bubble\mesh)
	Next
	RenderWorld
	Text 10,10, "The ULTIMATE bubble generator!"
	Flip True
Wend
End
Function makebubble()
	bubble = CreateSphere(32)	
	inside = CreateSphere(32)	
	FlipMesh inside
	AddMesh inside,bubble
	FreeEntity inside
	
	EntityShininess bubble,1
	EntityBlend bubble,3
	EntityFX bubble,2+32
	
	ss = 0
	ee = 55
	surf = GetSurface(bubble,1)
	For i = 0 To CountVertices(surf)-1
		VertexColor surf,i,Rand(ss,ee),Rand(ss,ee),Rand(ss,ee),1
	Next
	
	Return bubble
End Function
 
 
 |