<CsoundSynthesizer>
<CsOptions>

-+Y

</CsOptions>
<CsInstruments>

sr      =       100
kr      =       100
ksmps   =       1
nchnls  =       1





ginpoint	=	6

	GLfps	24, .5
	GLpanel	"OpenGL panel", 512, 512
	GLpanel_end
	FLrun

#include "OpenGL.h"

gi1	ftgen	1,0,256,19,1,1,0,1
gi10	ftgen	10,0,256,10,1

giRAD1	ftgen	24,0,-ginpoint,-2,     1,       1,         6,        .5,         4,        1
giRAD2	ftgen	25,0,-ginpoint,-2,     1,       4,         .5,       6,          1,        1
giRAD	ftgen	26,0,-ginpoint,-2,     0

giCOL	ftgen	21,0,-ginpoint*3,-2,   0,0,0,   .2,.6,.3,  .8,.3,.2,   .2,.3,.7,  .2,.6,.5,  0,0,0
giPNT	ftgen	20,0,-ginpoint*3,-2,   -6,6,0,  6,6,0,    6,-6,0,    -6,-6,0,   -6,6,0,    6,6,0




;giPNT2	ftgen	23,0,-ginpoint*3,-2,   -6,-6,0, 6,-6,0,   6,6,0,    -6,6,0,   -6,-6,0,    6,-6,0
;giPNT	ftgen	23,0,-ginpoint*3,-2,   0

giJOIN	ftgen	22,0,16, -2,	$TUBE_NORM_FACET + $TUBE_JN_ROUND + $TUBE_JN_CAP,\
				$TUBE_NORM_FACET + $TUBE_JN_ANGLE + $TUBE_JN_CAP,\
				$TUBE_NORM_FACET + $TUBE_JN_CUT   + $TUBE_JN_CAP,\
				$TUBE_NORM_FACET + $TUBE_JN_RAW   + $TUBE_JN_CAP


	glEnable	$GL_DEPTH_TEST	
	glEnable	$GL_CULL_FACE	
	glEnable	$GL_LIGHTING
	glEnable	$GL_LIGHT0
	glEnable	$GL_COLOR_MATERIAL
	glEnable	$GL_NORMALIZE

	glFrontFace $GL_CCW	
	glMaterial $GL_SPECULAR, .8,.8,.8,1
	GLshininess 50
;	glShadeModel $GL_FLAT
	glColor3	.8,.8,1

	gleSetJoinStyle	$TUBE_NORM_EDGE + $TUBE_JN_ROUND + $TUBE_JN_CAP

GLinsert_i $GL_INIT

	glMatrixMode	$GL_PROJECTION 
	glLoadIdentity
	gluPerspective	60,.1,200
	glMatrixMode	$GL_MODELVIEW 
	glLoadIdentity
	glClearColor	0,0,0,1
GLinsert_i $GL_NOT_VALID
	glClear	$GL_COLOR_BUFFER_BIT + $GL_DEPTH_BUFFER_BIT 

GLinsert_i 1



;///////////////////////////////////////////////////
	instr	1
;///////////////////////////////////////////////////


k1	oscili	1,.012,1,.75
k2	oscili	1,.0113456,1
k3	oscili	1,.0105,1
k3b	oscili	4.5,.043215,1,.25
k4	oscili	1,.2,1
kph	phasor	.01
kJoin	tab	kph*3.99, giJOIN 
	gleSetJoinStyle	kJoin 

;	GLvphaseseg kphase, ioutab, ielem,   itab1,idist1,itab2 [,idist2,itab3,...,idistN-1,itabN] 
	GLvphaseseg k4,     giRAD, ginpoint, giRAD1,1,giRAD2
	gleSetNumSides	3 + kph * 20


	glLoadIdentity
	glTranslate	0,0,-22

	glPushMatrix
	;glScale		2,2,2
	glRotate		k1*360,0,1,0
	glRotate		k2*360,1,0,0
	glRotate		k2*360,0,0,1

	glePolyCone	ginpoint, giPNT, giCOL, giRAD
;	glePolyCone	ginpoint, giPNT, 0, giRAD
	glPopMatrix

GLinsert	1.1
	
	endin



</CsInstruments>
<CsScore>

i1 0 3600 

</CsScore>
</CsoundSynthesizer>
