Subv 
							
						 
					 
					
						
						
							
						
						f2d4d5c219 
					 
					
						
						
							
							SwRasterizer: Corrected the light LUT lookups.  
						
						 
						
						
						
						
					 
					
						2017-07-11 19:39:15 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Subv 
							
						 
					 
					
						
						
							
						
						80b6fc592e 
					 
					
						
						
							
							SwRasterizer: Fixed the lighting lut lookup function.  
						
						 
						
						
						
						
					 
					
						2017-07-11 19:39:15 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Subv 
							
						 
					 
					
						
						
							
						
						10b0bea060 
					 
					
						
						
							
							SwRasterizer: Calculate fresnel for fragment lighting.  
						
						 
						
						
						
						
					 
					
						2017-07-11 19:39:15 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Subv 
							
						 
					 
					
						
						
							
						
						46b8c8e1da 
					 
					
						
						
							
							SwRasterizer: Calculate specular_1 for fragment lighting.  
						
						 
						
						
						
						
					 
					
						2017-07-11 19:39:15 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Subv 
							
						 
					 
					
						
						
							
						
						be25e78b07 
					 
					
						
						
							
							SwRasterizer: Calculate specular_0 for fragment lighting.  
						
						 
						
						
						
						
					 
					
						2017-07-11 19:39:15 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Subv 
							
						 
					 
					
						
						
							
						
						b2f472a2b1 
					 
					
						
						
							
							SwRasterizer: Implement primary fragment color.  
						
						 
						
						
						
						
					 
					
						2017-07-11 19:39:15 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						8978ecb09c 
					 
					
						
						
							
							gl_rasterizer: use texture buffer for fog LUT  
						
						 
						
						
						
						
					 
					
						2017-06-22 20:41:00 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						f1e377f57e 
					 
					
						
						
							
							gl_rasterizer: create the texture before applying the state  
						
						 
						
						... 
						
						
						
						this is a rebasing error from #2792 . It doesn't affect much though, because the later more Apply() call fixes/hides it 
						
						
					 
					
						2017-06-22 17:47:46 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						457659fe01 
					 
					
						
						
							
							gl_state: reset 1d textures  
						
						 
						
						
						
						
					 
					
						2017-06-21 23:13:06 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						42f7ca7412 
					 
					
						
						
							
							gl_rasterizer: fix glGetUniformLocation type  
						
						 
						
						
						
						
					 
					
						2017-06-21 23:13:06 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						be9e952bdc 
					 
					
						
						
							
							gl_rasterizer: manage texture ids in one place  
						
						 
						
						
						
						
					 
					
						2017-06-21 23:13:06 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						ab60414122 
					 
					
						
						
							
							gl_rasterizer/lighting: fix LUT interpolation  
						
						 
						
						
						
						
					 
					
						2017-06-21 23:13:06 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						d0888f8548 
					 
					
						
						
							
							Merge pull request  #2776  from wwylele/geo-factor  
						
						 
						
						... 
						
						
						
						Fragment lighting: implement geometric factor 
						
						
					 
					
						2017-06-18 14:18:48 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						5a454173a8 
					 
					
						
						
							
							gl_rasterizer/lighting: use the formula from the paper for germetic factor  
						
						 
						
						
						
						
					 
					
						2017-06-18 10:29:02 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						f6715f98f5 
					 
					
						
						
							
							Stop using reserved operator names (and/or/xor) with Xbyak  
						
						 
						
						... 
						
						
						
						Also has the Dynarmic upgrade with the same change 
						
						
					 
					
						2017-06-17 12:20:22 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						7052d43a67 
					 
					
						
						
							
							gl_rasterizer/lighting: implement geometric factor  
						
						 
						
						
						
						
					 
					
						2017-06-15 14:59:01 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						da1bec121a 
					 
					
						
						
							
							Merge pull request  #2762  from wwylele/light-cp-tangent  
						
						 
						
						... 
						
						
						
						Fragment lighting: implement lut input 5 (CP) and tangent mapping 
						
						
					 
					
						2017-06-14 20:08:26 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						5fe5ccac42 
					 
					
						
						
							
							Merge pull request  #2743  from wwylele/wrap-fix  
						
						 
						
						... 
						
						
						
						pica/rasterizer: implement/stub texture wrap mode 4-7 
						
						
					 
					
						2017-06-13 21:28:12 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						791cd14c8d 
					 
					
						
						
							
							Merge pull request  #2767  from yuriks/quaternion-flip-comment  
						
						 
						
						... 
						
						
						
						OpenGL: Update comment on AreQuaternionsOpposite with new information 
						
						
					 
					
						2017-06-12 16:31:55 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						972548e3ee 
					 
					
						
						
							
							gl_rasterizer/lighting: Implement tangent mapping  
						
						 
						
						
						
						
					 
					
						2017-06-11 21:30:53 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						40b7d0bf3f 
					 
					
						
						
							
							gl_rasterizer/lighting: implement lut input 5 (CP)  
						
						 
						
						
						
						
					 
					
						2017-06-11 21:30:53 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Sebastian Valle 
							
						 
					 
					
						
						
							
						
						39c7c1f580 
					 
					
						
						
							
							Merge pull request  #2727  from wwylele/spot-light  
						
						 
						
						... 
						
						
						
						Fragment lighting: implement spot light 
						
						
					 
					
						2017-06-11 18:23:47 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						ba01a8302a 
					 
					
						
						
							
							OpenGL: Update comment on AreQuaternionsOpposite with new information  
						
						 
						
						... 
						
						
						
						While debugging the software renderer implementation, it was noticed
that this is actually exactly what the hardware does, upgrading the
status of this "hack" to being a proper implementation. And there was
much rejoicing. 
						
						
					 
					
						2017-06-10 01:55:17 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						28d1e73d2f 
					 
					
						
						
							
							pica/rasterizer: implement/stub texture wrap mode 4-7  
						
						 
						
						
						
						
					 
					
						2017-06-04 09:47:25 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								bunnei 
							
						 
					 
					
						
						
							
						
						54ea95cca7 
					 
					
						
						
							
							Merge pull request  #2721  from wwylele/texture-cube  
						
						 
						
						... 
						
						
						
						swrasterizer: implemented TextureCube 
						
						
					 
					
						2017-05-30 10:21:05 -04:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						10906dceec 
					 
					
						
						
							
							gl_rasterizer: implement spot light  
						
						 
						
						
						
						
					 
					
						2017-05-30 10:54:58 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						686cbf3ac6 
					 
					
						
						
							
							gl_rasterizer: sync spot light status  
						
						 
						
						
						
						
					 
					
						2017-05-30 10:54:58 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						b5addf8fb8 
					 
					
						
						
							
							pica: prepare registers for spotlight  
						
						 
						
						
						
						
					 
					
						2017-05-30 10:54:58 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						a4f88c7d7c 
					 
					
						
						
							
							Merge pull request  #2734  from yuriks/cmake-imported-libs  
						
						 
						
						... 
						
						
						
						CMake: Use CMake target properties for all libraries 
						
						
					 
					
						2017-05-29 15:12:21 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						0b9bb082c3 
					 
					
						
						
							
							swrasterizer: implement TextureCube  
						
						 
						
						
						
						
					 
					
						2017-05-29 22:28:48 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						077cc683e5 
					 
					
						
						
							
							pica: add registers for texture cube  
						
						 
						
						
						
						
					 
					
						2017-05-29 22:03:08 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						3df85a103a 
					 
					
						
						
							
							Merge pull request  #2729  from yuriks/quaternion-fix  
						
						 
						
						... 
						
						
						
						OpenGL: Improve accuracy of quaternion interpolation 
						
						
					 
					
						2017-05-28 01:24:06 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						d736cca848 
					 
					
						
						
							
							CMake: Create INTERFACE targets for microprofile and nihstro  
						
						 
						
						
						
						
					 
					
						2017-05-27 22:34:52 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						4660bc1c78 
					 
					
						
						
							
							CMake: Use IMPORTED target for libpng  
						
						 
						
						
						
						
					 
					
						2017-05-27 20:44:51 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						7b81903756 
					 
					
						
						
							
							CMake: Correct inter-module dependencies and library visibility  
						
						 
						
						... 
						
						
						
						Modules didn't correctly define their dependencies before, which relied
on the frontends implicitly including every module for linking to
succeed.
Also changed every target_link_libraries call to specify visibility of
dependencies to avoid leaking definitions to dependents when not
necessary. 
						
						
					 
					
						2017-05-27 18:41:24 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						eb10f25025 
					 
					
						
						
							
							Move screen size constants from video_core to core  
						
						 
						
						... 
						
						
						
						video_core didn't even properly use them, and they were the source of
many otherwise-unnecessary dependencies from core to video_core. 
						
						
					 
					
						2017-05-27 18:41:24 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						6665557ff7 
					 
					
						
						
							
							OpenGL: Remove unused RendererOpenGL fields  
						
						 
						
						
						
						
					 
					
						2017-05-27 18:02:46 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						669ef82aee 
					 
					
						
						
							
							OpenGL: Improve accuracy of quaternion interpolation  
						
						 
						
						... 
						
						
						
						Current order of operations (rotate then normalize) seems to produce a
lot more distortion than normalizing and then rotating. This makes Citra
results match pretty closesly with hardware, and indicates that hardware
may also be using lerp instead of slerp to interpolate the quaternions. 
						
						
					 
					
						2017-05-27 00:13:41 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						90c8d09098 
					 
					
						
						
							
							gl_shader: refactor texture sampler into its own function  
						
						 
						
						
						
						
					 
					
						2017-05-27 01:56:22 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						bae3799bd5 
					 
					
						
						
							
							Merge pull request  #2697  from wwylele/proctex  
						
						 
						
						... 
						
						
						
						Implemented Procedural Texture (Texture Unit 3) 
						
						
					 
					
						2017-05-24 21:37:42 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						36526c63ef 
					 
					
						
						
							
							swrasterizer: add missing tc0_w and fragment lighting attribute processing  
						
						 
						
						
						
						
					 
					
						2017-05-21 09:09:15 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						4d62e75fb2 
					 
					
						
						
							
							gl_rasterizer: implement procedural texture  
						
						 
						
						
						
						
					 
					
						2017-05-20 13:50:50 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						ade45b5b99 
					 
					
						
						
							
							pica/swrasterizer: implement procedural texture  
						
						 
						
						
						
						
					 
					
						2017-05-20 13:50:50 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						393fee10a2 
					 
					
						
						
							
							pica: use correct register value for shader bool_uniforms  
						
						 
						
						... 
						
						
						
						variable value is not masked. the masked and combined register value should be used instead 
						
						
					 
					
						2017-05-17 22:14:09 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
							
						
						8d558777a6 
					 
					
						
						
							
							Merge pull request  #2703  from wwylele/pica-reg-revise  
						
						 
						
						... 
						
						
						
						pica: correct bit field length for some registers 
						
						
					 
					
						2017-05-16 10:00:37 -07:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						86ee1f6101 
					 
					
						
						
							
							pica: correct bit field length for some registers  
						
						 
						
						
						
						
					 
					
						2017-05-16 19:24:06 +03:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jannik Vogel 
							
						 
					 
					
						
						
							
						
						ba722be2ac 
					 
					
						
						
							
							Pica: Write GS registers  
						
						 
						
						... 
						
						
						
						This adds the handlers for the geometry shader register writes which will call the functions from the previous commit to update registers for the GS. 
						
						
					 
					
						2017-05-12 16:22:37 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jannik Vogel 
							
						 
					 
					
						
						
							
						
						3fd3775d35 
					 
					
						
						
							
							Pica: Write shader registers in functions  
						
						 
						
						... 
						
						
						
						The commit after this one adds GS register writes, so this moves the VS handlers into functions so they can be re-used and extended more easily. 
						
						
					 
					
						2017-05-12 16:22:37 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jannik Vogel 
							
						 
					 
					
						
						
							
						
						925724c990 
					 
					
						
						
							
							Pica: Set program code / swizzle data limit to 4096  
						
						 
						
						... 
						
						
						
						One of the later commits will enable writing to GS regs.
It turns out that on startup, most games will write 4096 GS program words.
The current limit of 1024 would hence result in 3072 (4096 - 1024) error messages:
```
HW.GPU <Error> video_core/shader/shader.cpp:WriteProgramCode:229: Invalid GS program offset 1024
```
New constants have been introduced to represent these limits.
The swizzle data size has also been raised. This matches the given field sizes of [GPUREG_SH_OPDESCS_INDEX](https://3dbrew.org/wiki/GPU/Internal_Registers#GPUREG_SH_OPDESCS_INDEX ) and [GPUREG_SH_CODETRANSFER_INDEX](https://www.3dbrew.org/wiki/GPU/Internal_Registers#GPUREG_SH_CODETRANSFER_INDEX ) (12 bit = [0; 4095]). 
						
						
					 
					
						2017-05-11 15:01:27 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								wwylele 
							
						 
					 
					
						
						
							
						
						039b293092 
					 
					
						
						
							
							pica: shader_dirty if texture2 coord changed  
						
						 
						
						
						
						
					 
					
						2017-05-05 15:35:17 +03:00