Yali wrote:Nice! What about using some of the high res Riven screenshots like here:
Since the algorithm is kind of tweaked to get something acceptable from very detailed, low res input, the results are not as impressive with higher res images.
nick wrote:Hey Tobr!
This is fantastic. As you can probably imagine, we spend a lot of time debating over small patches of pixels from the original images, trying to figure out shape, texture or purpose. A tool like this, that can upscale the images in that kind of quality, could potentially be very valuable to us.
I can see how it could be of use to you! As I'm sure you understand, I would caution against relying too much on the output as some form of "truth", as our brains do a lot smarter image processing for us when we try to interpret the original images. The exception is in low contrast areas with heavy dithering, where it can reveal nuances and structures that were obscured by the dither pattern before. Take this example, a crop from inside the schoolhouse:
You can clearly see the shape of the cracks in the wall and color variations that are quite indistinct in the original. (I'm getting back to you guys on the email, promise)
Hmm... makes me wonder if it would help with the text on the prison door opener:
Now you're really at the limits of what can be expected from this!
I'm not sure this divulges anything you couldn't see before, but here goes:
Dario wrote:This looks pretty good , will you create a patch or something like it, so you can actually play Riven with the upscaled graphics ?
That would be awesome, but would be a pretty huge project (requiring expertise I don't have). I guess the most likely thing is to do it as a fork of Riven X or similar. Currently it takes some 10-15 seconds to process a single image, so it would probably take about 12 hours just to convert all the images in the game, and I'm not sure how to handle that as part of an install process! The algorithm is not optimized in any way though, and it's not out of the question that it would be possible to make it run in realtime. I'm also not sure what you would do about the video quality, as it would look even worse in comparison...
For kicks, here are some more examples. I kind of cherry picked the first ones I posted, so these might demonstrate some of the issues left to solve.