 
 const float EPSILON = 0.0001;
 const float ZFAR = 1000.0;
-const uint BOUNCES = 0U;
+const uint BOUNCES = 2U;
 const uint SPH_MAX = (1024U);
 const uint SPILIST_MAX = (1024U+1024U);
 const uint KD_MAX = (2048U);


	if(test_mesh)
	{
		trace_donut(shadow_mode, vec3(0.0, 0.0, -4.0), vec3(0.0, 0.0, 1.0), 1.0, 0.5, vec3(1.0, 0.0, 1.0));
		/*
		vec3 dsign = sign(wdir);

	// Normalise
	enorm = normalize(enorm);

	float radx = radh+radd;

	//if((dot(enorm, wpos)-eoffs)*dot(enorm,wdir) >= EPSILON) return; // *** ACCEL SKIP

	// Project direction onto the plane
	// (200-level Linear Algebra, a paper I got a C- on)
	float proj_poffs = -dot(enorm, wdir);
	//vec3 proj_pdir = normalize(wdir + enorm*proj_poffs);
	vec3 proj_pdir = (wdir + enorm*proj_poffs);

	// Get pos offset
	float eoffs = dot(epos, enorm);
