mirror of
				https://gitlab.winehq.org/wine/vkd3d.git
				synced 2025-09-12 18:50:22 -07:00 
			
		
		
		
	This is simply unnecessary and wastes time. As part of this, simply remove the "all" directive. Only for a couple of tests is it even potentially interesting to validate all pixels (e.g. nointerpolation.shader_test), and for those "all" is replaced with an explicit (0, 0, 640, 480) rect. In all other cases we just probe (0, 0).
		
			
				
	
	
		
			89 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			89 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| [require]
 | |
| shader model >= 4.1
 | |
| 
 | |
| 
 | |
| [sampler 0]
 | |
| filter linear linear linear
 | |
| address clamp clamp clamp
 | |
| 
 | |
| [srv 0]
 | |
| size (2d, 4, 4)
 | |
| levels 3
 | |
| 
 | |
| 0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5
 | |
| 0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5
 | |
| 0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5
 | |
| 0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5
 | |
| 
 | |
| 0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5
 | |
| 0.5 0.5 0.5 0.5     0.5 0.5 0.5 0.5
 | |
| 
 | |
| 0.5 0.5 0.5 0.5
 | |
| 
 | |
| [pixel shader todo]
 | |
| sampler s;
 | |
| Texture2D t;
 | |
| 
 | |
| float4 main(float4 pos : sv_position) : sv_target
 | |
| {
 | |
|     return float4(t.CalculateLevelOfDetail(s, pos.xy),
 | |
|                   t.CalculateLevelOfDetail(s, float2(0.5 * pos.x, 0.5 * pos.y)),
 | |
|                   t.CalculateLevelOfDetail(s, float2(0.25 * pos.x, 0.25 * pos.y)),
 | |
|                   floor(10.0 * t.CalculateLevelOfDetail(s, float2(0.1 * pos.x, 0.7 * pos.y))));
 | |
| }
 | |
| 
 | |
| [test]
 | |
| todo(sm<6) draw quad
 | |
| probe (0, 0, 640, 480) rgba (2.0, 1.0, 0.0, 14.0)
 | |
| 
 | |
| 
 | |
| [pixel shader todo]
 | |
| sampler s;
 | |
| Texture2D t;
 | |
| 
 | |
| float4 main(float4 pos : sv_position) : sv_target
 | |
| {
 | |
|     return float4(t.CalculateLevelOfDetail(s, float2(3.0 * pos.x, 5.0 * pos.y)),
 | |
|                   t.CalculateLevelOfDetail(s, float2(10.0 * pos.x, 10.0 * pos.y)),
 | |
|                   t.CalculateLevelOfDetail(s, float2(0.1 * pos.x, 0.02 * pos.y)),
 | |
|                   t.CalculateLevelOfDetail(s, float2(0.01 * pos.x, 0.01 * pos.y)));
 | |
| }
 | |
| 
 | |
| [test]
 | |
| todo(sm<6) draw quad
 | |
| probe (0, 0, 640, 480) rgba (2.0, 2.0, 0.0, 0.0)
 | |
| 
 | |
| 
 | |
| [pixel shader todo]
 | |
| sampler s;
 | |
| Texture2D t;
 | |
| 
 | |
| float4 main(float4 pos : sv_position) : sv_target
 | |
| {
 | |
|     return float4(t.CalculateLevelOfDetailUnclamped(s, pos.xy),
 | |
|                   t.CalculateLevelOfDetailUnclamped(s, float2(0.5 * pos.x, 0.5 * pos.y)),
 | |
|                   t.CalculateLevelOfDetailUnclamped(s, float2(0.25 * pos.x, 0.25 * pos.y)),
 | |
|                   floor(10.0 * t.CalculateLevelOfDetailUnclamped(s, float2(0.1 * pos.x, 0.7 * pos.y))));
 | |
| }
 | |
| 
 | |
| [test]
 | |
| todo(sm<6) draw quad
 | |
| probe (0, 0, 640, 480) rgba (2.0, 1.0, 0.0, 14.0)
 | |
| 
 | |
| 
 | |
| [pixel shader todo]
 | |
| sampler s;
 | |
| Texture2D t;
 | |
| 
 | |
| float4 main(float4 pos : sv_position) : sv_target
 | |
| {
 | |
|     return float4(floor(10.0 * t.CalculateLevelOfDetailUnclamped(s, float2(3.0 * pos.x, 6.0 * pos.y))),
 | |
|                   floor(10.0 * t.CalculateLevelOfDetailUnclamped(s, float2(8.0 * pos.x, 8.0 * pos.y))),
 | |
|                   floor(10.0 * t.CalculateLevelOfDetailUnclamped(s, float2(0.1 * pos.x, 0.02 * pos.y))),
 | |
|                   floor(10.0 * t.CalculateLevelOfDetailUnclamped(s, float2(0.01 * pos.x, 0.01 * pos.y))));
 | |
| }
 | |
| 
 | |
| [test]
 | |
| todo(sm<6) draw quad
 | |
| probe (0, 0, 640, 480) rgba (45.0, 50.0, -14.0, -47.0)
 |