| 
									
										
										
										
											2022-12-09 20:02:03 -03:00
										 |  |  | % The texel offset argument to Load() must resolve to a constant integer; | 
					
						
							|  |  |  | % make sure that we can do so. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [require] | 
					
						
							|  |  |  | shader model >= 4.0 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-01-24 16:11:17 -03:00
										 |  |  | [srv 0] | 
					
						
							|  |  |  | size (2d, 4, 4) | 
					
						
							| 
									
										
										
										
											2025-03-17 19:23:09 -03:00
										 |  |  |  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.0   10.0 10.0 10.0 10.0   11.0 11.0 11.0 11.0   12.0 12.0 12.0 12.0 | 
					
						
							|  |  |  | 13.0 13.0 13.0 13.0   14.0 14.0 14.0 14.0   14.0 15.0 15.0 15.0   16.0 16.0 16.0 16.0 | 
					
						
							| 
									
										
										
										
											2022-12-09 20:02:03 -03:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-01-12 17:26:03 -06:00
										 |  |  | [pixel shader] | 
					
						
							| 
									
										
										
										
											2022-12-09 20:02:03 -03:00
										 |  |  | Texture2D tex; | 
					
						
							|  |  |  | uniform int i; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | float4 main() : sv_target | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     int4 a = {1, 2, i, i}; | 
					
						
							|  |  |  |     return 100 * a + tex.Load(int3(0, 0, 0), a.xy); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [test] | 
					
						
							|  |  |  | uniform 0 int 4 | 
					
						
							| 
									
										
										
										
											2024-10-21 22:23:27 +08:00
										 |  |  | todo(glsl | msl) draw quad | 
					
						
							| 
									
										
										
										
											2024-02-10 13:16:22 -06:00
										 |  |  | probe (0, 0) rgba (110, 210, 410, 410) | 
					
						
							| 
									
										
										
										
											2022-12-09 20:02:03 -03:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-09 19:23:41 -03:00
										 |  |  | [pixel shader] | 
					
						
							| 
									
										
										
										
											2022-12-09 20:02:03 -03:00
										 |  |  | Texture2D tex; | 
					
						
							|  |  |  | uniform int i; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | float4 main() : sv_target | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     int4 a = {0, 1, 2, i}; | 
					
						
							|  |  |  |     int4 b = a.yxww; | 
					
						
							|  |  |  |     int3 c = b.wyx; | 
					
						
							|  |  |  |     return 100 * b + tex.Load(int3(0, 0, 0), c.yz); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [test] | 
					
						
							|  |  |  | uniform 0 int 3 | 
					
						
							| 
									
										
										
										
											2024-10-21 22:23:27 +08:00
										 |  |  | todo(glsl | msl) draw quad | 
					
						
							| 
									
										
										
										
											2024-02-10 13:16:22 -06:00
										 |  |  | probe (0, 0) rgba (105, 5, 305, 305) | 
					
						
							| 
									
										
										
										
											2022-12-09 20:02:03 -03:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-09 19:23:41 -03:00
										 |  |  | [pixel shader] | 
					
						
							| 
									
										
										
										
											2022-12-09 20:02:03 -03:00
										 |  |  | Texture2D tex; | 
					
						
							|  |  |  | uniform int i; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | float4 main() : sv_target | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     int4 a = {1, 2, 3, i}; | 
					
						
							|  |  |  |     return tex.Load(int3(0, 0, 0), a.wzxx.yxw.zx); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [test] | 
					
						
							|  |  |  | uniform 0 int 1 | 
					
						
							| 
									
										
										
										
											2024-10-21 22:23:27 +08:00
										 |  |  | todo(glsl | msl) draw quad | 
					
						
							| 
									
										
										
										
											2024-02-10 13:16:22 -06:00
										 |  |  | probe (0, 0) rgba (14.0, 14.0, 14.0, 14.0) |