mirror of
				https://git.zaroz.cloud/nintendo-back-up/yuzu/yuzu-mainline.git
				synced 2025-03-21 01:53:15 +00:00 
			
		
		
		
	shader/shader_ir: Change declare output attribute to a switch
This commit is contained in:
		
							parent
							
								
									4dfd5c84ea
								
							
						
					
					
						commit
						464bd5fad7
					
				| @ -106,7 +106,8 @@ Node ShaderIR::GetPhysicalInputAttribute(Tegra::Shader::Register physical_addres | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| Node ShaderIR::GetOutputAttribute(Attribute::Index index, u64 element, Node buffer) { | Node ShaderIR::GetOutputAttribute(Attribute::Index index, u64 element, Node buffer) { | ||||||
|     if (index == Attribute::Index::LayerViewportPointSize) { |     switch (index) { | ||||||
|  |     case Attribute::Index::LayerViewportPointSize: | ||||||
|         switch (element) { |         switch (element) { | ||||||
|         case 0: |         case 0: | ||||||
|             UNIMPLEMENTED(); |             UNIMPLEMENTED(); | ||||||
| @ -121,8 +122,8 @@ Node ShaderIR::GetOutputAttribute(Attribute::Index index, u64 element, Node buff | |||||||
|             uses_point_size = true; |             uses_point_size = true; | ||||||
|             break; |             break; | ||||||
|         } |         } | ||||||
|     } |         break; | ||||||
|     if (index == Attribute::Index::TessCoordInstanceIDVertexID) { |     case Attribute::Index::TessCoordInstanceIDVertexID: | ||||||
|         switch (element) { |         switch (element) { | ||||||
|         case 2: |         case 2: | ||||||
|             uses_instance_id = true; |             uses_instance_id = true; | ||||||
| @ -130,18 +131,17 @@ Node ShaderIR::GetOutputAttribute(Attribute::Index index, u64 element, Node buff | |||||||
|         case 3: |         case 3: | ||||||
|             uses_vertex_id = true; |             uses_vertex_id = true; | ||||||
|             break; |             break; | ||||||
|         default: |  | ||||||
|             break; |  | ||||||
|         } |         } | ||||||
|     } |         break; | ||||||
|     if (index == Attribute::Index::ClipDistances0123 || |     case Attribute::Index::ClipDistances0123: | ||||||
|         index == Attribute::Index::ClipDistances4567) { |     case Attribute::Index::ClipDistances4567: { | ||||||
|         const auto clip_index = |         const auto clip_index = | ||||||
|             static_cast<u32>((index == Attribute::Index::ClipDistances4567 ? 1 : 0) + element); |             static_cast<u32>((index == Attribute::Index::ClipDistances4567 ? 1 : 0) + element); | ||||||
|         used_clip_distances.at(clip_index) = true; |         used_clip_distances.at(clip_index) = true; | ||||||
|  |         break; | ||||||
|  |     } | ||||||
|     } |     } | ||||||
|     used_output_attributes.insert(index); |     used_output_attributes.insert(index); | ||||||
| 
 |  | ||||||
|     return MakeNode<AbufNode>(index, static_cast<u32>(element), std::move(buffer)); |     return MakeNode<AbufNode>(index, static_cast<u32>(element), std::move(buffer)); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 ReinUsesLisp
						ReinUsesLisp