mirror of
				https://github.com/luanti-org/luanti.git
				synced 2025-11-03 16:55:24 +01:00 
			
		
		
		
	Improve undersampling settings
The setting now accepts values between 1 and 8 in the Advanced Settings menu. Values 0 and 1 now behave the same way (setting it to 1 won't disable MSAA anymore), so there's no need to expose 0 as a value. This closes #8939.
This commit is contained in:
		
				
					committed by
					
						
						SmallJoker
					
				
			
			
				
	
			
			
			
						parent
						
							e0a85fae01
						
					
				
				
					commit
					05a7da6279
				
			@@ -508,10 +508,11 @@ texture_min_size (Minimum texture size) int 64
 | 
			
		||||
#    when set to higher number than 0.
 | 
			
		||||
fsaa (FSAA) enum 0 0,1,2,4,8,16
 | 
			
		||||
 | 
			
		||||
#    Undersampling is similar to using lower screen resolution, but it applies
 | 
			
		||||
#    Undersampling is similar to using a lower screen resolution, but it applies
 | 
			
		||||
#    to the game world only, keeping the GUI intact.
 | 
			
		||||
#    It should give significant performance boost at the cost of less detailed image.
 | 
			
		||||
undersampling (Undersampling) enum 0 0,2,3,4
 | 
			
		||||
#    It should give a significant performance boost at the cost of less detailed image.
 | 
			
		||||
#    Higher values result in a less detailed image.
 | 
			
		||||
undersampling (Undersampling) int 1 1 8
 | 
			
		||||
 | 
			
		||||
[**Shaders]
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -35,7 +35,7 @@ RenderingCorePlain::RenderingCorePlain(
 | 
			
		||||
 | 
			
		||||
void RenderingCorePlain::initTextures()
 | 
			
		||||
{
 | 
			
		||||
	if (!scale)
 | 
			
		||||
	if (scale <= 1)
 | 
			
		||||
		return;
 | 
			
		||||
	v2u32 size{scaledown(scale, screensize.X), scaledown(scale, screensize.Y)};
 | 
			
		||||
	lowres = driver->addRenderTargetTexture(
 | 
			
		||||
@@ -44,21 +44,21 @@ void RenderingCorePlain::initTextures()
 | 
			
		||||
 | 
			
		||||
void RenderingCorePlain::clearTextures()
 | 
			
		||||
{
 | 
			
		||||
	if (!scale)
 | 
			
		||||
	if (scale <= 1)
 | 
			
		||||
		return;
 | 
			
		||||
	driver->removeTexture(lowres);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void RenderingCorePlain::beforeDraw()
 | 
			
		||||
{
 | 
			
		||||
	if (!scale)
 | 
			
		||||
	if (scale <= 1)
 | 
			
		||||
		return;
 | 
			
		||||
	driver->setRenderTarget(lowres, true, true, skycolor);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void RenderingCorePlain::upscale()
 | 
			
		||||
{
 | 
			
		||||
	if (!scale)
 | 
			
		||||
	if (scale <= 1)
 | 
			
		||||
		return;
 | 
			
		||||
	driver->setRenderTarget(0, true, true);
 | 
			
		||||
	v2u32 size{scaledown(scale, screensize.X), scaledown(scale, screensize.Y)};
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user