
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;     config                                                                                   ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; sound = true/false
; debug = true/false

democonfig
{
	sound = true;
	developermode = true;
	song = demobiisi.mp3
	endtime = 228000
	jumptime = 139000
}

timeline
{
	title 0 15000 666
	still 15000 225000
}

event grouplogo
{
	time = 1000
	length = 14000
}

event demotitle
{
	time = 45000
	length = 10000
}
event fadein
{	
	time = 15000
	length = 5000
}
event fadeout
{
	time = 215000
	length = 8000
}

event taustafade
{
	time = 20000
	length = 160000
	
}

event particles
{
	time = 30000
	length = 50000
	
}

event sunrise
{
	time = 110000
	length = 100000
	
}
namespace title
{
	float logosize = 0.01
	vector3 logopos = 0 0 0
	vector3 logodelta = 0 0 2

	int glowsteps = 7
	float glowxstep = 0.09
	float glowystep = 0.09
	float glowbluralpha = 0.90
	float glowexp = 1.9
}

namespace still
{
	float groundsquaresize = 25.0f
	int groundsquarecount = 20
	string groundtexture = ground.png

	float horizonheight = 150.0
	float horizoninitialheight = 10
	color4 horizoncolor1 = 0.6 0.80 0.95 0.4
	color4 horizoncolor2 = 1 0.7 0.2 1.0

	int totemcount = 100
	range totemitemcount = 100 200
	range totemradius = 1 50
	range totemcolor = 0.0 0.2
	range totemfade = 0.5 1.0
	float totemitemheight = 0.2
	float totemitemwidth = 0.1
	range totemitemspready = 1 30
	range totemitemspreadx = -5 5
	range totemindividualheightspread = 0.5 1
	range totemindividualheight = 0.5 1.5

	int dustcount = 2000
	range dustradius = 1 100
	range dustfade = 0.2 0.8
	range dustenergy = 0.6 2.2
/*
	float vorticity1 = 0.1
	float effectspeed1 = 1.0
	float noisepower1 = 0.01
	float feedpower1 = 0.01
	float timemodifier1 = 1.0
*/
	float vorticity1 = 0.1
	float effectspeed1 = 1.0
	float noisepower1 = 0.04
	float feedpower1 = 0.01
	float timemodifier1 = 1.0

	int raintotemcount = 1500
	range raintotemdistance = 1 70
	range raintotemstart = 0.4 0.8
	range raintotemduration = 0.1 0.15

	int maxairparticles = 2500
	range airparticlesize = 0.01 0.05
	range airparticlealpha = 0.6 0.8
	range airparticleenergy = 1.3 2.0
	range airparticlespawnradius = 1.0 50.0
	range airparticlespeed = 0.001 0.004
	color3 airparticlecolor = 0.9 1 1

	float moonsize = 100
	float moondist = 500
	float moonangle1 = 0.5
	float moonangle2 = 0.5

	range cameraheight = 1.f 6.f 
	range cameraradius = 1.0 10.0
	range cameratime = 10 20
	float camerafadeexp = 0.5

	range cameraspeed = 0.001 0.004
	range cameratargetspeed = 0.0004 0.0005

	int cameraseed = 508	
	int starcount = 1000
	range starfade = 0.0 0.6
	float fogstart = 170.0
	float fogend = 240.0

	int glowsteps = 8
	float glowxstep = 0.045
	float glowystep = 0.045
	float glowbluralpha = 0.99998
	float glowexp = 1.0
}


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;     beat				                                                                        ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

bpm beatquarter
{
	bpm = 17.5
	offset = 0
}

bpm beathalf
{
	bpm = 35
	offset = 0
}

bpm basicbeat0
{
	bpm = 70
	offset = 0
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;     meshes																					;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

/*
mesh testi.obj
{
	usevbo = true
	autotexture = false
	texture = texture1.jpg
	usefacenormals = false
	calculatenormals = false
	retain = true
}
*/

mesh sphere.obj
{
	usevbo = true
}
mesh test.obj
{
	usevbo = true
}
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;     textures                                                                                 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; upload = true/false 
; wrap 	 = repeat/clamp
; retain = true/false 
; mipmap = true/false
; filter = nearest / linear 

texture ground.jpg
{
	mipmap = true
	wrap = repeat
	filter = linear
}

texture ceiling.jpg
{
	mipmap = true
	wrap = repeat
	filter = linear
}
texture noise1.png
{
	mipmap = false
	wrap = repeat
	filter = linear
}
texture 	noise2.png
{
	mipmap = false
	wrap = repeat
	filter = linear
}
texture noise3.png
{
	mipmap = false
	wrap = repeat
	filter = linear
}
texture brslogo.png
{
	wrap = clamp
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;     postprocessing rendertargets                                                             ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;; NOTE! these are hardcoded into the postprocessing code so if any names are changed, they need to be 
;;;;; changed in the code as well!


rendertarget feedback_0
{
	width = 1024;
	height = 1024;
}
rendertarget feedback_1
{
	width = 1024;
	height = 1024;
}
rendertarget feedback_2
{
	width = 1024;
	height = 1024;
}

rendertarget noise0
{
	width = 1024;
	height = 1024;
}

rendertarget feedbackflow
{
	width = 64
	height = 64
}

rendertarget postprocess_1024
{
	width = 1024;
	height = 1024;
}
rendertarget postprocess_1024_2
{
	width = 1024;
	height = 1024;
}
rendertarget postprocess_1024_3
{
	width = 1024;
	height = 1024;
}
rendertarget postprocess_1024_4
{
	width = 1024;
	height = 1024;
}
rendertarget postprocess_2048
{
	width = 2048;
	height = 2048;
}
rendertarget postprocess_2048_2
{
	width = 2048;
	height = 2048;
}
rendertarget postprocess_2048_3
{
	width = 2048;
	height = 2048;
}
rendertarget postprocess_2048_4
{
	width = 2048;
	height = 2048;
}

rendertarget postprocess_512
{
	width = 512;
	height = 512;
}
rendertarget postprocess_256
{
	width = 256;
	height = 256;
}
rendertarget postprocess_256_2
{
	width = 256;
	height = 256;
}
rendertarget postprocess_128
{
	width = 128;
	height = 128;
}
rendertarget postprocess_128_2
{
	width = 128;
	height = 128;
}

texture postprocess_2048
{
	wrap = clamp;
}
texture postprocess_2048_2
{
	wrap = clamp;
}
texture postprocess_2048_3
{
	wrap = clamp;
}
texture postprocess_2048_4
{
	wrap = clamp;
}

texture postprocess_1024
{
	wrap = clamp;
}
texture postprocess_1024_2
{
	wrap = clamp;
}
texture postprocess_1024_3
{
	wrap = clamp;
}
texture postprocess_1024_4
{
	wrap = clamp;
}
texture postprocess_512
{
	wrap = clamp;
}
texture postprocess_256
{
	wrap = clamp;
}
texture postprocess_1284
{
	wrap = clamp;
}
texture postprocess_128_2
{
	wrap = clamp;
}
texture postprocess_64
{
	wrap = clamp;
}
texture postprocess_64_2
{
	wrap = clamp;
}

; this is for the pixelize shader mainly
texture postprocess_32
{
	filter = nearest
	wrap = clamp
}


; some whitespade needed :)