Shovel Knight: Treasure Trove

Shovel Knight: Treasure Trove

View Stats:
Alo81 Jul 3, 2014 @ 1:11pm
Developers: We need a non-stretched scaling option. Here's why!
To keep it simple, here is the reason why, and I'll go into detail beneath.

Check out this image
http://fc06.deviantart.net/fs70/f/2014/184/7/f/rendering_comparison_by_aloo81-d7p36ma.png

The game is always rendering at 400x240, and then scaling up appropriately. It explains why screenshots taken at 1080p always seem to look slightly blurred, and has those odd edges on it. I knew it looked off and now i finally understand why, and how to fix it.

So, I learned that the best way to play the game with those perfectly crisp, hard lined edges is to play at any multiple of 400x240.

For example,

  • 400x240
  • 800x480
  • 1200x720
  • 1600x960
  • 2000x1200
  • 2400x1440

I'm gonna give some comparison screenshots, of actually playing at what should be the specified res compared to the nearest common resolution.

1200x720

http://fc09.deviantart.net/fs71/f/2014/184/3/a/shovelknight_2014_07_03_14_47_55_54_by_aloo81-d7p31ud.jpg

1280x720

http://fc06.deviantart.net/fs71/f/2014/184/8/b/shovelknight_2014_07_03_14_48_25_72_by_aloo81-d7p31u1.jpg

There's a pretty huge difference in clarity between the two, and it seems like it would be best to play the game in a 720p, 900p, or 1440p display and scale it appropriately.

Here is the best way to display it perfectly on a 1080p display.

You have to click to view full size to appropriately see the difference.
1600x960

[IMG]http://fc01.deviantart.net/fs71/f/2014/184/9/4/shovelknight_2014_07_03_14_50_13_45_by_aloo81-d7p31tt.jpg[/img]

http://fc00.deviantart.net/fs70/f/2014/184/9/2/shovelknight_2014_07_03_14_50_26_72_by_aloo81-d7p31tj.jpg

If anyone else wants to have perfect pixel scaling and has an Nvidia GPU, you can do it this way.

Nvidia Control Panel
Adjust Desktop Size and Position
Scaling Mode: No Scaling, Perform scaling on: GPU
----------------------------------------------------------------------------------------------
Change Resolution
Customize
Create Custom Resolution
Horizontal Pixels: *Closest horizontal from list above, Vertical Pixels: *Closest example from list above*

Save and apply all of the above.

Now you can select that resolution, and play the game in borderless fullscreen. You'll get pixel perfect 1:1 scaling, and it'll look sharp, clean, and crisp.

The above is a really unfortunate thing to have to do in order to view the game as it's intended.

That's why I hope you developers can add in an option to scale and letterbox the visuals appropriately, so that there will never be forced to have stretching or inapporpriate scaling again!

A letterboxed game with the hard, crisp edges is much better than a stretched one, I hope this option can be added in a future patch!
Last edited by Alo81; Jul 3, 2014 @ 1:24pm
Originally posted by Ian:
Hey all,
Thanks for letting us know you'd like to see this feature happen.
Another developer on the team decided to take a look at it between bugfixes. We're still working on the final steps, adding it to the menu, and testing. But if you wanted to check it out, you can do so in the Beta branch!

1. Right click on Shovel Knight: Treasure Trove in your library and select Properties.
2. Go to Beta branch with the password pixelperfecttest
3. Add the launch option -ppscale
4. Start the game, it will maintain a 1:1 pixel scale within the bounds of the game's current resolution.
< >
Showing 16-30 of 41 comments
Alo81 Mar 25, 2015 @ 4:52pm 
Originally posted by ShaneC:
In addition to better built-in scaling options I'd also really like to add the option for PC gamers to mod our scaling/post processing bits so all sorts of cool filters could be added!
I would be stoked if this made it in for the Plague Knight campaign update.

Also, fwiw, GeDoSaTo has a great suite of post processing options, and if the game were made compatible with it we could have that perfect combination.

Rendered at 400x240, scaled up to 1600x960 using GeDo, then CRT shader applied on top. This would allow the scanlines to always line up accurately because the scrolling would always move by 1 in-game pixel rather than by 1 screen pixel like it currently does.

I would love to get something like Timothy Lottes CRT shader working appropriately on Shovel Knight

http://timothylottes.blogspot.com/2014/08/scanlines.html
blejd Jul 12, 2016 @ 3:48pm 
Seeing that there's still no built in fix for this, here's a clean and easy way of getting a pixel-perfect scaling on 1080p:
• open c:\Users\YOUR_NAME\AppData\Roaming\Yacht Club Games\Shovel Knight\render.bin in a text editor
• change the line with multiplier to:
screenSizeMultiplier=0.833333
(0.83333 * 1920 = 1600)

Nice and crisp: http://i.imgur.com/R6Uy5KA.png
Alo81 Jul 12, 2016 @ 6:57pm 
Originally posted by 81403:
Seeing that there's still no built in fix for this, here's a clean and easy way of getting a pixel-perfect scaling on 1080p:
• open c:\Users\YOUR_NAME\AppData\Roaming\Yacht Club Games\Shovel Knight\render.bin in a text editor
• change the line with multiplier to:
screenSizeMultiplier=0.833333
(0.83333 * 1920 = 1600)

Nice and crisp: http://i.imgur.com/R6Uy5KA.png

Awesome work dude! this'll be great when I play the next campaigns!
Originally posted by thegigamaster:
Hey Alo81!

You got pretty close to figuring out what the actual scaling method is - not bad! Maybe one day we'll detail it futher in a blog post. We as a team decided this non pixel perfect scaling method was the best way to go after looking at a lot of options. To sum up the decision, I think most people would say the difference is inperceivable and being able to play at any resolution and scale is unbelievably more convient. In fact, I actually can't notice any blurring or clarity issues in the screenshots you've posted. But I'm not the best at picking these things out :P.

That said, yes, we will likely be adding scaling options in the future. They were actually present during the development, but were removed due to testing reasons (we didn't have enough time to make sure they worked on every PC). Sorry we weren't able to have the support ready for launch, but hopefully we can make it up to you!

Hope you're still having fun with the game and it didn't hamper your experience at all!
Mr. Dev guy, the blurry behavior when scaling often-times comes down to drivers and the gfx hardware (beyond game-engine specific intended - and sometimes unintended behaviors). So each gfx chip and driver setup (not to mention OS), might behave just a bit differently. No issues here on 1920x1080 on a 40" screen. I love the game through and through but it kicks me in the rear! Hoping for a sequel!
Wallaton Jul 18, 2016 @ 12:28am 
Maybe you developers can use this awesome pixel art upscaling shader? https://www.allegro.cc/forums/thread/612318
ZXPlectrum Jul 26, 2016 @ 4:01pm 
Originally posted by 81403:
Seeing that there's still no built in fix for this, here's a clean and easy way of getting a pixel-perfect scaling on 1080p:
• open c:\Users\YOUR_NAME\AppData\Roaming\Yacht Club Games\Shovel Knight\render.bin in a text editor
• change the line with multiplier to:
screenSizeMultiplier=0.833333
(0.83333 * 1920 = 1600)

Nice and crisp: http://i.imgur.com/R6Uy5KA.png

Excellent - thanks for posting this. This should have been an option in all retail versions, excluding the 3DS version.
khaz Mar 2, 2017 @ 8:04am 
Playing this fantastic old school platformer on an old school CRT monitor, I feel like I'm missing out. It's great to have all these filter options to emulate the look of a CRT, but if when trying to achieve this look on an actual CRT is more difficult, then I think something is wrong.

My main problem is that the resolution to pick in the options is a rendering resolution, upscaled to the OS desktop resolution. It's a great solution of everybody with monitors displaying only a native resolution, but for monitors that can display several resolutions without losing definition (like a CRT), it would be much better to allow to display the original resolution or any desired rendering resolution, without any more upscaling.

Right now my best option is to lower my desktop resolution to 800x600 then start the game. Playing at 1600x1200, while avoiding blur thanks to the integer scaling, feels way too crisp, like playing an emulator on an HD TV. And only high end monitors can achieve such a high resolution.

I would love to be able to play your game at 400x480 (400x240, line-doubled like a DOS game), and I know some scan line lovers would fancy an option to hide the doubled lines. I wouldn't, but you know, options. I'm pretty sure some crazy retrovideophiles who have plugged their computer on an SD CRT TV would also be delighted with a native resolution option.
Last edited by khaz; Mar 2, 2017 @ 8:13am
SageX85 Mar 2, 2017 @ 10:18am 
Originally posted by khaz:
Playing this fantastic old school platformer on an old school CRT monitor, I feel like I'm missing out. It's great to have all these filter options to emulate the look of a CRT, but if when trying to achieve this look on an actual CRT is more difficult, then I think something is wrong.

My main problem is that the resolution to pick in the options is a rendering resolution, upscaled to the OS desktop resolution. It's a great solution of everybody with monitors displaying only a native resolution, but for monitors that can display several resolutions without losing definition (like a CRT), it would be much better to allow to display the original resolution or any desired rendering resolution, without any more upscaling.

Right now my best option is to lower my desktop resolution to 800x600 then start the game. Playing at 1600x1200, while avoiding blur thanks to the integer scaling, feels way too crisp, like playing an emulator on an HD TV. And only high end monitors can achieve such a high resolution.

I would love to be able to play your game at 400x480 (400x240, line-doubled like a DOS game), and I know some scan line lovers would fancy an option to hide the doubled lines. I wouldn't, but you know, options. I'm pretty sure some crazy retrovideophiles who have plugged their computer on an SD CRT TV would also be delighted with a native resolution option.


If you want to emulate a SD CRT, you must aim to imitate its good quirks, not the bad ones (curvature, moire).

Convergence. A CRT will NEVER have perfect convergence, you might know it as chromatic aberration.

The glass in the screen will make it a little blurry, gaussian blurry.

The scanlines shouldnt be obvious, the light from the cathodic ray would create a bloom that dimishes the black lines a lot so you would only see them if you got real close to the screen.

And finally the dithering shouldnt be obvious, the pixels shouldnt look squared but softly meshed together, almost being circles, with a shader this is tied to the blurryness

This is the closest i've get, but it lacks the sharpness of a CRT TV:

http://screenshotcomparison.com/comparison/196758/picture:1
khaz Mar 2, 2017 @ 5:17pm 
Oh yes, getting old-school visuals takes more than just adding black lines on your upscaled square pixels. Filters are the only way to roughly approximate it when using a flat panel monitor.

Using the real deal is infinitely simpler and gives the expected result without fiddling at all. Except with this game :(
blejd Apr 6, 2017 @ 9:38am 
Specter of Torment uses a little different config files, so here's an updated guide.

Edit this file: C:\Users\YOUR_NAME\AppData\Roaming\Yacht Club Games\Shovel Knight\render.bin and set the screenSizeMultiplier value according to your resolution.

1080p:
screenSizeMultiplier=X3F555550

1440p:
screenSizeMultiplier=X3F700000

2160p:
screenSizeMultiplier=X3F555550
Pauolo Apr 12, 2017 @ 7:52am 
Very late response, but I stumbled on this post when looking for a way to play the game without blurring the pixels. Thanks for the guide. :)
Skulll9000 Aug 14, 2018 @ 7:20pm 
Originally posted by blejd:
Specter of Torment uses a little different config files, so here's an updated guide.

Edit this file: C:\Users\YOUR_NAME\AppData\Roaming\Yacht Club Games\Shovel Knight\render.bin and set the screenSizeMultiplier value according to your resolution.

1080p:
screenSizeMultiplier=X3F555550

1440p:
screenSizeMultiplier=X3F700000

2160p:
screenSizeMultiplier=X3F555550
Hey blejd, how did you get those numbers? On a 1366x768 monitor.
Last edited by Skulll9000; Aug 14, 2018 @ 7:32pm
blejd Aug 15, 2018 @ 12:38pm 
Originally posted by Skulll9000:
Hey blejd, how did you get those numbers? On a 1366x768 monitor.

If I remember this correctly, you need to figure out what's the nearest lower multiple of 400, in your case 1200, then get the multiplier like so: 1200/1366 = 0.87847731 and finally convert this value to an IEEE-754 float value, which is 0x3f60e3e4. So X3F60E3E4 should work for you.
Last edited by blejd; Aug 15, 2018 @ 12:38pm
Skulll9000 Aug 16, 2018 @ 11:08am 
Quick reply, thank you very much!

Edit: Changing the screen size multiplier didn't actually work for me, but I still very much appreciate the reply. However, I did get still it to work another way, so I thought I'd post how it in case it helps someone else:
1. Right-click -> Graphics Properties... -> Advanced Mode -> Custom Resolution
2. I created a custom resolution of 1200x720, with the refresh rate and color depth my monitor normally has. (You can check by going to "General Settings").
3. Go to "General Settings", and select your custom resolution.
4. Then, for "scaling", select "center image".

OP's solution didn't work for me even though I had an Nvidia card, since the option was missing Nvidia Control Panel, but this worked because I guess my intel card apparently handles my monitor scaling.

Animated comparison gif: https://imgur.com/a/GLlXHSj
Last edited by Skulll9000; Aug 29, 2018 @ 8:37pm
AmethystViper Sep 9, 2018 @ 12:18pm 
This is something I hope becomes a feature in the upcoming patches because I would love to have pixel perfect scaling on 1920x1080 without the unfortunate blurring effect caused by the base resolution of the at 400x224. I can deal with pillarboxes on the sides but it's the letterboxing on the top and bottom parts of the screen that's annoying with this fix and a game like this should be able to be cropped without the letterboxing.
Last edited by AmethystViper; Sep 9, 2018 @ 12:19pm
< >
Showing 16-30 of 41 comments
Per page: 1530 50

Date Posted: Jul 3, 2014 @ 1:11pm
Posts: 41