David Marcec 
								
							 
						 
						
							
							
							
							
								
							
							
								112a0b8d6d 
								
							 
						 
						
							
							
								
								added braces for conditions  
							
							
							
						 
						
							2018-08-05 11:36:55 +10:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									David Marcec 
								
							 
						 
						
							
							
							
							
								
							
							
								45078c8b24 
								
							 
						 
						
							
							
								
								fix the attrib format for ints  
							
							
							
						 
						
							2018-08-05 11:29:21 +10:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								a43ae368d3 
								
							 
						 
						
							
							
								
								Merge pull request  #919  from lioncash/sign  
							
							... 
							
							
							
							gl_shader_manager: Amend sign differences in an assertion comparison in SetShaderUniformBlockBinding() 
							
						 
						
							2018-08-04 14:29:59 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								32901799b5 
								
							 
						 
						
							
							
								
								gl_shader_manager: Invert conditional in SetShaderUniformBlockBinding()  
							
							... 
							
							
							
							This lets us indent the majority of the code and places the error case
first. 
							
						 
						
							2018-08-04 02:57:11 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								c043a5c930 
								
							 
						 
						
							
							
								
								gl_shader_manager: Amend sign differences in an assertion comparison in SetShaderUniformBlockBinding()  
							
							... 
							
							
							
							Ensures both operands have the same sign in the comparison.
While we're at it, we can get rid of the redundant casting of ub_size to
an int. This type will always be trivial and alias a built-in type (not
doing so would break backwards compatibility at a standard level). 
							
						 
						
							2018-08-04 02:55:03 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								69bbe31ca8 
								
							 
						 
						
							
							
								
								renderer_base: Make Rasterizer() return the rasterizer by reference  
							
							... 
							
							
							
							All calling code assumes that the rasterizer will be in a valid state,
which is a totally fine assumption. The only way the rasterizer wouldn't
be is if initialization is done incorrectly or fails, which is checked
against in System::Init(). 
							
						 
						
							2018-08-04 02:36:58 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								49dc22f84e 
								
							 
						 
						
							
							
								
								video_core: Eliminate the g_renderer global variable  
							
							... 
							
							
							
							We move the initialization of the renderer to the core class, while
keeping the creation of it and any other specifics in video_core. This
way we can ensure that the renderer is initialized and doesn't give
unfettered access to the renderer. This also makes dependencies on types
more explicit.
For example, the GPU class doesn't need to depend on the
existence of a renderer, it only needs to care about whether or not it
has a rasterizer, but since it was accessing the global variable, it was
also making the renderer a part of its dependency chain. By adjusting
the interface, we can get rid of this dependency. 
							
						 
						
							2018-08-04 02:36:57 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								bf006dd1d4 
								
							 
						 
						
							
							
								
								Merge pull request  #911  from lioncash/prototype  
							
							... 
							
							
							
							video_core: Remove unimplemented Start() function prototype 
							
						 
						
							2018-08-04 02:18:38 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								46db65403f 
								
							 
						 
						
							
							
								
								Merge pull request  #910  from lioncash/unused  
							
							... 
							
							
							
							gl_shader_decompiler: Remove unused variable in GenerateDeclarations() 
							
						 
						
							2018-08-03 15:54:11 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								02cdd82efc 
								
							 
						 
						
							
							
								
								video_core: Remove unimplemented Start() function prototype  
							
							... 
							
							
							
							Given this has no definition, we can just remove it entirely. 
							
						 
						
							2018-08-03 12:48:14 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								c155adb42a 
								
							 
						 
						
							
							
								
								gl_shader_decompiler: Remove unused variable in GenerateDeclarations()  
							
							... 
							
							
							
							This variable was being incremented, but we were never actually using
it. 
							
						 
						
							2018-08-03 12:18:31 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								300a4e3d79 
								
							 
						 
						
							
							
								
								gl_shader_manager: Make ProgramManager's GetCurrentProgramStage() a const member function  
							
							... 
							
							
							
							This function doesn't modify class state, so it can be made const. 
							
						 
						
							2018-08-03 12:08:17 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								299975e4a8 
								
							 
						 
						
							
							
								
								Merge pull request  #892  from lioncash/global  
							
							... 
							
							
							
							video_core: Make global EmuWindow instance part of the base renderer … 
							
						 
						
							2018-08-03 00:31:32 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								309b596a21 
								
							 
						 
						
							
							
								
								Merge pull request  #901  from lioncash/ref  
							
							... 
							
							
							
							gl_shader_manager: Take ShaderSetup instances by const reference in UseProgrammableVertexShader() and UseProgrammableFragmentShader() 
							
						 
						
							2018-08-02 23:00:56 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								b57d279b57 
								
							 
						 
						
							
							
								
								Merge pull request  #902  from lioncash/array  
							
							... 
							
							
							
							gl_state: Make texture_units a std::array 
							
						 
						
							2018-08-02 14:57:42 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									greggameplayer 
								
							 
						 
						
							
							
							
							
								
							
							
								6abb522f98 
								
							 
						 
						
							
							
								
								Implement RGB32F PixelFormat ( #886 ) (used by Go Vacation)  
							
							
							
						 
						
							2018-08-02 14:56:38 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								68150d3d79 
								
							 
						 
						
							
							
								
								gl_state: Make texture_units a std::array  
							
							... 
							
							
							
							Gets rid of the use of a raw C array. 
							
						 
						
							2018-08-02 11:19:58 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								807d0cf4f2 
								
							 
						 
						
							
							
								
								gl_shader_manager: Take ShaderSetup instances by const reference in UseProgrammableVertexShader() and UseProgrammableFragmentShader()  
							
							... 
							
							
							
							Avoids performing unnecessary copies of 65560 byte sized ShaderSetup
instances, considering it's only used as part of lookup and not
modified.
Given the parameters were already const, it's likely taking these
parameters by reference was intended but the ampersand was forgotten. 
							
						 
						
							2018-08-02 11:09:46 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								153a00ebc0 
								
							 
						 
						
							
							
								
								video_core: Make global EmuWindow instance part of the base renderer class  
							
							... 
							
							
							
							Makes the global a member of the RendererBase class. We also change this
to be a reference. Passing any form of null pointer to these functions
is incorrect entirely, especially given the code itself assumes that the
pointer would always be in a valid state.
This also makes it easier to follow the lifecycle of instances being
used, as we explicitly interact the renderer with the rasterizer, rather
than it just operating on a global pointer. 
							
						 
						
							2018-08-01 21:40:30 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Unknown 
								
							 
						 
						
							
							
							
							
								
							
							
								6b77105b3d 
								
							 
						 
						
							
							
								
								Implement R32_FLOAT RenderTargetFormat  
							
							
							
						 
						
							2018-08-01 15:31:42 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								a19afb37b2 
								
							 
						 
						
							
							
								
								Merge pull request  #869  from Subv/ubsan  
							
							... 
							
							
							
							Corrected a few error cases detected by asan/ubsan 
							
						 
						
							2018-07-31 09:24:13 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								3aebf087c1 
								
							 
						 
						
							
							
								
								MacroInterpreter: Avoid left shifting negative values.  
							
							... 
							
							
							
							The branch target is signed, so multiply by 4 instead of left shifting by 2 
							
						 
						
							2018-07-30 20:38:24 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								e13c2efcd2 
								
							 
						 
						
							
							
								
								Merge pull request  #808  from lioncash/mem-dedup  
							
							... 
							
							
							
							video_core/memory_manager: Avoid repeated unnecessary page slot lookups 
							
						 
						
							2018-07-26 11:50:27 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								b994374b5c 
								
							 
						 
						
							
							
								
								GPU: Allow using R16F as a render target format.  
							
							
							
						 
						
							2018-07-26 08:52:21 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Unknown 
								
							 
						 
						
							
							
							
							
								
							
							
								aad2bf10a8 
								
							 
						 
						
							
							
								
								Implement R16_G16  
							
							... 
							
							
							
							correct trailing white spaces
Delete tabs
correct placement
Add RG16F & RG16UI & RG16I & RG16S PixelFormats
Return correct data according to changes done previously
correct PixelFormat declaration
correct coding style error
correct coding style error part 2
correct RG16S Declaration error
correct alignment 
							
						 
						
							2018-07-26 02:01:29 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								87e0a45124 
								
							 
						 
						
							
							
								
								Merge pull request  #819  from Subv/srgb  
							
							... 
							
							
							
							GPU: Use the right texture format for sRGBA framebuffers. 
							
						 
						
							2018-07-25 14:47:26 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								a99c559c69 
								
							 
						 
						
							
							
								
								GPU: Use the right texture format for sRGBA framebuffers.  
							
							
							
						 
						
							2018-07-25 09:52:39 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								6c114256ca 
								
							 
						 
						
							
							
								
								GPU: Allow the use of Z24S8 as a texture format.  
							
							
							
						 
						
							2018-07-25 09:41:24 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								9c18b48352 
								
							 
						 
						
							
							
								
								Merge pull request  #816  from Subv/z32_s8  
							
							... 
							
							
							
							GPU: Implemented the Z32_S8_X24 depth buffer format. 
							
						 
						
							2018-07-25 07:37:00 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								e74efb1e46 
								
							 
						 
						
							
							
								
								Merge pull request  #815  from Subv/z32f_tex  
							
							... 
							
							
							
							GPU: Allow using Z32 as a texture format. 
							
						 
						
							2018-07-25 07:33:09 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								c4852be404 
								
							 
						 
						
							
							
								
								Merge pull request  #814  from Subv/rt_r8  
							
							... 
							
							
							
							GPU: Allow the usage of R8 as a render target format. 
							
						 
						
							2018-07-25 07:32:18 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								f4884e347b 
								
							 
						 
						
							
							
								
								Merge pull request  #809  from lioncash/rasterizer  
							
							... 
							
							
							
							gl_rasterizer: Minor cleanup 
							
						 
						
							2018-07-24 19:31:34 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								467842a5aa 
								
							 
						 
						
							
							
								
								Merge pull request  #811  from Subv/code_address_assert  
							
							... 
							
							
							
							GPU: Remove the assert that required the CODE_ADDRESS to be 0. 
							
						 
						
							2018-07-24 19:31:09 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								b4ae8432b4 
								
							 
						 
						
							
							
								
								GPU: Implemented the Z32_S8_X24 depth buffer format.  
							
							
							
						 
						
							2018-07-24 20:41:40 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								72cb7ab18b 
								
							 
						 
						
							
							
								
								GPU: Allow using Z32 as a texture format.  
							
							
							
						 
						
							2018-07-24 19:54:23 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								1930980a26 
								
							 
						 
						
							
							
								
								GPU: Allow the usage of R8 as a render target format.  
							
							
							
						 
						
							2018-07-24 19:49:36 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								3b77420f15 
								
							 
						 
						
							
							
								
								GPU: Remove the assert that required the CODE_ADDRESS to be 0.  
							
							... 
							
							
							
							Games usually just leave it at 0 but nouveau sets it to something else. This already works fine, the assert is useless. 
							
						 
						
							2018-07-24 13:54:12 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								d10cc9c548 
								
							 
						 
						
							
							
								
								GPU: Implemented the R16 and R16F texture formats.  
							
							
							
						 
						
							2018-07-24 13:39:16 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								6bbabfe848 
								
							 
						 
						
							
							
								
								gl_rasterizer: Replace magic number with GL_INVALID_INDEX in SetupConstBuffers()  
							
							... 
							
							
							
							This is just the named constant that OpenGL provides, so we can use that
instead of using a literal -1 
							
						 
						
							2018-07-24 12:24:49 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								7300872843 
								
							 
						 
						
							
							
								
								gl_rasterizer: Use std::string_view instead of std::string when checking for extensions  
							
							... 
							
							
							
							We can avoid heap allocations here by just using a std::string_view
instead of performing unnecessary copying of the string data. 
							
						 
						
							2018-07-24 12:10:37 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								2aa1ec7f8d 
								
							 
						 
						
							
							
								
								gl_rasterizer: Use in-class member initializers where applicable  
							
							... 
							
							
							
							We can just assign to the members directly in these cases. 
							
						 
						
							2018-07-24 12:08:12 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								4cab632ba6 
								
							 
						 
						
							
							
								
								video_core/memory_manager: Replace a loop with std::array's fill() function in PageSlot()  
							
							... 
							
							
							
							We already have a function that does what this code was doing, so let's
use that instead. 
							
						 
						
							2018-07-24 11:56:30 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								38ad89a19b 
								
							 
						 
						
							
							
								
								video_core/memory_manager: Avoid repeated unnecessary page slot lookups  
							
							... 
							
							
							
							We don't need to keep calling the same function over and over again in a
loop, especially when the behavior is slightly non-trivial. We can just
keep a reference to the looked up location and do all the checking and
assignments based off it instead. 
							
						 
						
							2018-07-24 11:19:54 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								a0873add99 
								
							 
						 
						
							
							
								
								Merge pull request  #799  from Subv/tex_r32f  
							
							... 
							
							
							
							GPU: Implement texture format R32F. 
							
						 
						
							2018-07-24 04:46:07 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								2216f26593 
								
							 
						 
						
							
							
								
								Merge pull request  #796  from bunnei/gl-uint  
							
							... 
							
							
							
							maxwell_to_gl: Implement VertexAttribute::Type::UnsignedInt. 
							
						 
						
							2018-07-24 04:44:56 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								772c408826 
								
							 
						 
						
							
							
								
								gl_rasterizer: Implement texture border color.  
							
							
							
						 
						
							2018-07-23 23:34:42 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								a5062c345f 
								
							 
						 
						
							
							
								
								maxwell_to_gl: Implement Texture::WrapMode::Border.  
							
							
							
						 
						
							2018-07-23 23:34:41 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								3a80e8ab24 
								
							 
						 
						
							
							
								
								GPU: Implement texture format R32F.  
							
							
							
						 
						
							2018-07-23 22:21:31 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								c324ea103c 
								
							 
						 
						
							
							
								
								Merge pull request  #791  from bunnei/rg32f-rgba32f-bgra8  
							
							... 
							
							
							
							gl_rasterizer_cache: Implement formats BGRA8_UNORM/RGBA32_FLOAT/RG32_FLOAT 
							
						 
						
							2018-07-23 20:13:19 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								295d3104fb 
								
							 
						 
						
							
							
								
								maxwell_to_gl: Implement VertexAttribute::Type::UnsignedInt.  
							
							
							
						 
						
							2018-07-23 23:12:14 -04:00