mirror of
				https://gitlab.winehq.org/wine/vkd3d.git
				synced 2025-09-12 18:50:22 -07:00 
			
		
		
		
	tests: Test textures in initializers.
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Zebediah Figura <zfigura@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
		
				
					committed by
					
						 Alexandre Julliard
						Alexandre Julliard
					
				
			
			
				
	
			
			
			
						parent
						
							719e1bad1d
						
					
				
				
					commit
					1fc44e7be4
				
			| @@ -79,6 +79,7 @@ vkd3d_shader_tests = \ | ||||
| 	tests/hlsl-initializer-invalid-arg-count.shader_test \ | ||||
| 	tests/hlsl-initializer-implicit-array.shader_test \ | ||||
| 	tests/hlsl-initializer-local-array.shader_test \ | ||||
| 	tests/hlsl-initializer-objects.shader_test \ | ||||
| 	tests/hlsl-initializer-nested.shader_test \ | ||||
| 	tests/hlsl-initializer-numeric.shader_test \ | ||||
| 	tests/hlsl-initializer-matrix.shader_test \ | ||||
|   | ||||
							
								
								
									
										109
									
								
								tests/hlsl-initializer-objects.shader_test
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								tests/hlsl-initializer-objects.shader_test
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,109 @@ | ||||
| [require] | ||||
| shader model >= 4.0 | ||||
|  | ||||
| [texture 0] | ||||
| size (3, 3) | ||||
| 0.1 0.1 0.1 0.1     0.2 0.2 0.2 0.2     0.3 0.3 0.3 0.3 | ||||
| 0.4 0.4 0.4 0.4     0.5 0.5 0.5 0.5     0.6 0.6 0.6 0.6 | ||||
| 0.7 0.7 0.7 0.7     0.8 0.8 0.8 0.8     0.9 0.9 0.9 0.9 | ||||
|  | ||||
| [texture 1] | ||||
| size (2, 2) | ||||
| 0.1 0.1 0.1 0.0     0.2 0.2 0.2 0.0 | ||||
| 0.4 0.4 0.4 0.0     0.5 0.5 0.5 0.0 | ||||
|  | ||||
|  | ||||
| [pixel shader] | ||||
| Texture2D tex1; | ||||
| Texture2D tex2; | ||||
|  | ||||
| float4 main() : sv_target | ||||
| { | ||||
|     Texture2D q[2] = {tex1, tex2}; | ||||
|  | ||||
|     return q[0].Load(int3(0, 0, 0)) + q[1].Load(int3(0, 0, 0)); | ||||
| } | ||||
|  | ||||
| [test] | ||||
| todo draw quad | ||||
| todo probe all rgba (0.2, 0.2, 0.2, 0.1) | ||||
|  | ||||
|  | ||||
| [pixel shader] | ||||
| Texture2D tex; | ||||
|  | ||||
| struct foo | ||||
| { | ||||
|     float2 aa; | ||||
|     Texture2D bb; | ||||
|     Texture2D cc; | ||||
|     float4 dd; | ||||
| }; | ||||
|  | ||||
| float4 main() : sv_target | ||||
| { | ||||
|     struct foo q = {10, 20, tex, tex, 30, 40, 50, 60}; | ||||
|  | ||||
|     return q.bb.Load(int3(2, 0, 0)) + q.cc.Load(int3(1, 2, 0)) + q.dd; | ||||
| } | ||||
|  | ||||
| [test] | ||||
| todo draw quad | ||||
| todo probe all rgba (31.1, 41.1, 51.1, 61.1) 1 | ||||
|  | ||||
|  | ||||
| [pixel shader] | ||||
| Texture2D tex1; | ||||
| Texture2D tex2; | ||||
|  | ||||
| struct foo | ||||
| { | ||||
|     float2 aa; | ||||
|     Texture2D bb[2]; // NOTE: this cannot be initialized in shader model >= 5.1 | ||||
|     float4 cc; | ||||
| }; | ||||
|  | ||||
| float4 main() : sv_target | ||||
| { | ||||
|     struct foo q = {10, 20, tex1, tex2, 30, 40, 50, 60}; | ||||
|  | ||||
|     return q.bb[0].Load(int3(0, 0, 0)) + q.bb[1].Load(int3(1, 1, 0)) + q.cc; | ||||
| } | ||||
|  | ||||
|  | ||||
| [pixel shader fail todo] | ||||
| Texture2D tex; | ||||
|  | ||||
| struct foo | ||||
| { | ||||
|     float2 aa; | ||||
|     Texture2D bb; | ||||
|     Texture2D cc; | ||||
|     float4 dd; | ||||
| }; | ||||
|  | ||||
| float4 main() : sv_target | ||||
| { | ||||
|     struct foo q = {10, 20, tex, 30, 40, 50, 60}; | ||||
|  | ||||
|     return 0.0; | ||||
| } | ||||
|  | ||||
|  | ||||
| [pixel shader fail todo] | ||||
| Texture2D tex; | ||||
|  | ||||
| struct foo | ||||
| { | ||||
|     float2 aa; | ||||
|     Texture2D bb; | ||||
|     Texture2D cc; | ||||
|     float4 dd; | ||||
| }; | ||||
|  | ||||
| float4 main() : sv_target | ||||
| { | ||||
|     struct foo q = {10, 20, tex, tex, tex, 30, 40, 50, 60}; | ||||
|  | ||||
|     return 0.0; | ||||
| } | ||||
		Reference in New Issue
	
	Block a user