65 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| //------------------------------------------------------------------------------
 | |
| // HLSL/GLSL Support
 | |
| //------------------------------------------------------------------------------
 | |
| // OBS Studio does not correctly translate all HLSL functionality to GLSL.
 | |
| 
 | |
| // log10(x) is HLSL-exclusive and not translated by OBS Shader Parser.
 | |
| #define m_log10(x) (log(x) / log(10))
 | |
| 
 | |
| //------------------------------------------------------------------------------
 | |
| // Uniforms
 | |
| //------------------------------------------------------------------------------
 | |
| 
 | |
| // View Projection Matrix
 | |
| uniform float4x4 ViewProj;
 | |
| 
 | |
| //------------------------------------------------------------------------------
 | |
| // Samplers
 | |
| //------------------------------------------------------------------------------
 | |
| sampler_state PointRepeatSampler {
 | |
| 	Filter    = Point;
 | |
| 	AddressU  = Repeat;
 | |
| 	AddressV  = Repeat;
 | |
| };
 | |
| 
 | |
| sampler_state PointClampSampler {
 | |
| 	Filter    = Point;
 | |
| 	AddressU  = Clamp;
 | |
| 	AddressV  = Clamp;
 | |
| };
 | |
| 
 | |
| sampler_state LinearRepeatSampler {
 | |
| 	Filter    = Linear;
 | |
| 	AddressU  = Repeat;
 | |
| 	AddressV  = Repeat;
 | |
| };
 | |
| 
 | |
| sampler_state LinearClampSampler {
 | |
| 	Filter    = Linear;
 | |
| 	AddressU  = Clamp;
 | |
| 	AddressV  = Clamp;
 | |
| };
 | |
| 
 | |
| //------------------------------------------------------------------------------
 | |
| // Structures
 | |
| //------------------------------------------------------------------------------
 | |
| struct VertexData {
 | |
| 	float4 pos : POSITION;
 | |
| 	float2 uv  : TEXCOORD0;
 | |
| };
 | |
| 
 | |
| //------------------------------------------------------------------------------
 | |
| // Vertex Shaders
 | |
| //------------------------------------------------------------------------------
 | |
| VertexData DefaultVertexShader(VertexData vtx) {
 | |
| 	vtx.pos = mul(float4(vtx.pos.xyz, 1.0), ViewProj);
 | |
| 	return vtx;
 | |
| };
 | |
| 
 | |
| //------------------------------------------------------------------------------
 | |
| // Color Conversion
 | |
| //------------------------------------------------------------------------------
 | |
| #include "color_conversion_rgb_yuv.effect"
 | |
| #include "color_conversion_rgb_hsv.effect"
 | |
| #include "color_conversion_rgb_hsl.effect"
 |