/* SkyGRAPHICS options file v2.0 RC4.1 */ 
#ifndef SKYOPT_CFG
#define SKYOPT_CFG
//////////////////////////////////////////////////////////////////
//FX control

//#define IMPROVED_MBLUR 		// Enable/Disable Motion Blur
//#define DEPTH_OF_FIELD 		// Enable/Disable Depth Of Field 
//#define PARALLAX_OCCLUSION	// Enable/Disable Parallax Occlusion Mapping
//#define SSAO			// Enable/Disable Screen Space Ambient Occlusion
//#define SUN_SHAFTS		// Enable/Disable Sun Shafts (god rays) 
//#define USE_F32				// Enable/Disable Float32 mod

//
//////////////////////////////////////////////////////////////////
//---------------------------------------------------------------//
//////////////////////////////////////////////////////////////////
//Motion Blur 

	#define MBLUR_SAMPLES 	int(20)	// Quality(Intesity) 
	
//Only for testing.
		#define SCALE_X float(-0.03) // velocity ratio X
		#define SCALE_Y float(0.03) // velocity ratio Y
      		#define START_DIST float(0.7) // start distance of interpolation
      		#define FINAL_DIST float(1.3) // final distance of interpolation
		#define VEL_START float(0.009) //velocity softness start distance
		#define VEL_FIN float(0.02) //velocity softness final distance
		#define IMB_CLAMP float(0.01) //improved motion blur clamp ratio
			
//
//////////////////////////////////////////////////////////////////
//--------------------------------------------------------------//
//////////////////////////////////////////////////////////////////
//Depth Of Field

	#define DOF_QUALITY int(12)   // MAX - 12
	#define MINDIST float(0.4)
	#define MAXDIST float(200)
	#define MAXCOF	float(3)
	
//
//////////////////////////////////////////////////////////////////
//--------------------------------------------------------------//
//////////////////////////////////////////////////////////////////
//Parallax Occlusion Mapping

	#define MAX_SAMPLES int(40)		//number of maximum samples
	#define MIN_SAMPLES int(5)		//number of minimum samples
	#define PARALLAX_OFFSET float(0.015)	//height of extruded surface
	#define FINAL_INTERSECTION_LOOPS int(5)	//Quantity of cycles of accuracy
	//#define USE_TEXTURE_PACK		//use additional textures package(81mb)
  	//#define CORRECT_PERSPECTIVE		//WARNING!!! artifacts will appear if defined
  
//Only for testing.
//These options for algorithm of increase in contrast parallax maps
		#define CONTRAST_COEF_Q1 float(0.6)
		#define CONTRAST_COEF_Q2 float(1)
		#define BRIGHTNESS_COEF float(0.25)

//
//////////////////////////////////////////////////////////////////
//--------------------------------------------------------------//
//////////////////////////////////////////////////////////////////
//Screen Space Ambient Occlusion

	#define SSAO_QUALITY int(2) 	//2 - low quality; 3 - high quality
	#define SSAO_TEX_CONT		//on/off. Rise texture contrast for diffuse lighting
	#define CONT_COEF float(0.2)	//Rise brightness 
	
//Only for testing.
		#define FADE_DIST float(4)
		#define FADE_COEF float(0.2)

//
//////////////////////////////////////////////////////////////////
//--------------------------------------------------------------//
//////////////////////////////////////////////////////////////////
//Sun Shafts

	#define RAY_SAMPLES	int(20) //sun shafts qulaity, greater - better
	#define SS_INTENSITY float(1) // intesity of sun shafts

//Only for testing.
		#define	SS_CONTRAST float(4)
		//#define SS_FARNEARLERP
//
//////////////////////////////////////////////////////////////////
//--------------------------------------------------------------//
//////////////////////////////////////////////////////////////////
//FLOAT32 v2.0 options

//Cook-Torrance intensity values
	#define CT_int  1.25f 		//CT sun
	#define CT_int_in   1.25f 	//CT indoors
	#define BLOOM_val 0.6h 		//Bloom brightness - Increases HDR brightness of the sky
	#define HDR_int  10.h 		//HDR cutoff - Total HDR brightness

//RADEON COMPATIBILITY MODE - For those who can not use Fetch4 or have issues!
// To turn this mode on, remove the comment brackets "ex. // ".
// If you need to ue NO_F4 then you need to comment out YES_F4 below!!!!
	//#define NO_F4
//
//////////////////////////////////////////////////////////////////
/*
Описание параметров.

#define IMPROVED_MBLUR
	Включает/выключает усовершенствованный Motion Blur. Для включения надо раскомментировать эту строку, например:
#define IMPROVED_MBLUR
Для выключения - надо закомментировать:
//#define IMPROVED_MBLUR

#define MBLUR_SAMPLES 	int(10)
	Параметр для Motion Blur`а, определяет интенсивность эффекта. Чем больше значение тем большая интенсивность. Влияет на производительность. Параметр не может принимать дробных значений.

#define SCALE_X float(-0.03)
#define SCALE_Y float(0.03)
#define VEL_START float(0.009) 
#define VEL_FIN float(0.02) 
#define IMB_CLAMP float(0.01)
	Параметры для Motion Blur`а, отвечают за характер размытия картинки. Не рекомендуется их менять.

#define START_DIST float(0.7)
#define FINAL_DIST float(1.3)
	Параметры для Motion Blur`а, определяют расстояние с которого включается Motion Blur (START_DIST), и расстояние с которого начинается полное размытие (FINAL_DIST). Между START_DIST и FINAL_DIST происходит плавный переход от не размытой области к размытой. Параметры условно измеряются в метрах.

#define DEPTH_OF_FIELD
	Включает/выключает эффект Depth Of Field. Для включения надо раскомментировать эту строку, например:
#define DEPTH_OF_FIELD
Для выключения - надо закомментировать:
//#define DEPTH_OF_FIELD

#define DOF_QUALITY int(12)
	Параметр для Depth Of Field, определяет качество эффекта. Влияет на производительность. Параметр не может принимать дробных значений.

#define MINDIST float(0.4)
#define MAXDIST float(200)
	Параметры для Depth Of Field, определяют расстояние с которого включается Depth Of Field (MINDIST), и расстояние с которого начинается полное размытие (MAXDIST). Параметры условно измеряются в метрах.

#define MAXCOF	float(3)
	Параметр для Depth Of Field, определяет степень размытия эффекта.
	
#define PARALLAX_OCCLUSION
	Включает/выключает эффект Parallax Occlusion Mapping. Для включения надо раскомментировать эту строку.

#define MAX_SAMPLES int(40)
#define MIN_SAMPLES int(5)
	Параметры для Parallax Occlusion, определяют количество текстурных выборок. Чем их больше, тем качественнее эффект. Влияет на производительность. Параметры не могут принимать дробных значений.

#define PARALLAX_OFFSET float(0.015)
	Параметр для Paralax Occlusion, определяет высоту поверхности(степень смещения). Чем больше значение, тем больше высота.

#define FINAL_INTERSECTION_LOOPS int(5)
	Параметр для Parallax Occlusion, определяет количиство циклов для нахождения точки пересечения. Чем их больше тем качественнее эффект. Влияет на производительность. Параметр не может принимать дробных значений.

#define USE_TEXTURE_PACK
	Параметр для Parallax Occlusion, вкл\выкл использование дополнительных текстур из первых версий мода(1.0 - 1.4)(81мб).
	
#define CORRECT_PERSPECTIVE
	Параметр для Parallax Occlusion, включает/выключает более правильную перспективу на острых углах геометрии. Повышает иллюзию смещения. Требует более высоких значений для MAX_SAMPLES и MIN_SAMPLES. Из-за особенностей игровой геометрии сталкера, на некоторых поверхностях появляются артефакты, в виде искажений. Для включения надо раскомментировать эту строку, например:
#define CORRECT_PERSPECTIVE
Для выключения - надо закомментировать:
//#define CORRECT_PERSPECTIVE

#define CONTRAST_COEF_Q1 float(0.6)
#define CONTRAST_COEF_Q2 float(1)
#define BRIGHTNESS_COEF float(0.25)
	Параметры для Parallax Occlusion, используются в алгоритме повышения контрастности карт высот. Не рекомендуется их менять.

#define SSAO
	Включает/выключает эффект Screen Space Ambient Occlusion. Для включения надо раскомментировать эту строку.
	
#define SSAO_QUALITY int(3) 
	Параметр для SSAO, определяет качество. Принимает параметры 2 и 3, где 2 - низкое качество (выше производительность) , 3 - высокое качество.

#define SSAO_TEX_CONT
	Параметр для SSAO, повышает контрастность освещения для улучшения отображения эффекта ssao. Для включения надо раскомментировать эту строку.

#define CONT_COEF float(0.1)
	Параметр для SSAO, коефициент для повышения яркости SSAO_TEX_CONT.

#define FADE_DIST float(4)
#define FADE_COEF float(0.2)
	Параметры для SSAO, влияют на затухание эффекта вблизи. Нужно для уменьшения артефактов.
	
#define SUN_SHAFTS
	Включает/выключает эффект Sun Shafts (лучи света). Для включения надо раскомментировать эту строку.
#define RAY_SAMPLES	int(10) 
	Параметр для Sun Shafts, определяет качество. Чем больше значение, тем лучше качество (и меньше производительность).
 
#define	SS_CLAMP float(0.2)
	Параметр для Sun Shafts, используется для устранения артефактов.
	
#define SS_INTENSITY float(1)
	Параметр для Sun Shafts, влияет на интенсивность.
#define USE_F32
	Вкл\выкл мода Float32 v2.0.
*/
#endif