Search Unity

Question Unity Recorder render quality is too low

Discussion in 'Virtual Production' started by Yuenciel, Oct 30, 2022.

  1. Yuenciel

    Yuenciel

    Joined:
    Dec 20, 2018
    Posts:
    15
    I was planning to export turntables animations and models in unity using Unity Recorder from the Package Manager. However, I realized that rendering at 1080 or even 1440 wouldn't give me crisp results. To obtain the desired crisp renders, I had to bump the render resolution up to 8K. It renders out smoothly doesn't take too long either, but I believe this shouldn't be the solution to it.

    This was done in Unity 2019.4.0f1, using URP, and Unity Recorder version 2.4.0
    There's no enabled fog in the scene and I've also tried disabling post-process volume to no avail.

    Here's a render comparison between 1440p, 4K, and 8K side by side.
    Untitled-1.jpg
     
    Last edited: Oct 30, 2022
  2. akent99

    akent99

    Joined:
    Jan 14, 2018
    Posts:
    588
    What file format were you using? E.g. I find WebM renders better for me than MP4.

    Also, what are you then doing with the result? E.g. if you want to scale it afterwards to different sizes that are not quite 1:1, then having a higher resolution can result in better results after scaling as each final point is averaged from multiple points instead of one or two. (That is, scaling down to 13% will look better than scaling something to 87%)
     
  3. Yuenciel

    Yuenciel

    Joined:
    Dec 20, 2018
    Posts:
    15
    Hi, I exported them as JPEGs image sequences rather than going straight for videos. In my experiences, image sequences have always provided much clearer definition than mp4.

    I was planning to directly use the render for a normal showreel at 1080p, no changes to the aspect ratio and no scaling down or up either. But 1080p renders are much more visibly blurry (as you can see on my leftmost image), that led me to render out as 8K and scale it down to 1080p.

    Thus, I believe that it could be a problem if I am to implement unity for renders higher resolution renders. What if I had to do a 4K video, but directly rendering at 4K provides unsatisfying results just like how it happened here? Rendering at 16K and scaling down to 8K is definitely not the answer, I think... and 16K isn't even an option.
     
  4. vladala

    vladala

    Unity Technologies

    Joined:
    Mar 3, 2017
    Posts:
    189
    JPG's offer very low quality for a tiny file size.
    If quality is more of a concern, I would suggest you use PNG image sequences (compressed but lossless).
    Recorder 3 offers ProRes encoding, which is professional grade quality (might be compatible with unity 2019.4+)
    Recorder 4 offer high quality H264 / VPX encoding (I think minimum unity version is 2022.3+)
     
  5. Yuenciel

    Yuenciel

    Joined:
    Dec 20, 2018
    Posts:
    15
    Hi, thanks for the advice.
    Since the project was made in 2019.4.0f1, I dare not to try and upgrade it to the newest version and test the Recorder 4. Last time I did so ended up breaking the whole project, everything was unlinked etc etc.

    However, I went and tried the codec you mentioned (ProRes 422HQ), and compared the renders between the scaled down 4K, 1080 ProRes422HQ, and 1080 MP4. I could hardly find any difference between ProRes and MP4 renders, while on the other hand, the scaled down 4K has very noticeable differences (much more crisp).
    They are all rendered in the same scene and using the same post process settings, no tweaking the bloom or anything.

    I just wondered how the films unity produced could have such high fidelity and crisp visuals while mine is quite blurry.
     

    Attached Files:

  6. vladala

    vladala

    Unity Technologies

    Joined:
    Mar 3, 2017
    Posts:
    189
    I am really at a loss...
    If you were to record the gameView as ProRes, you should have close to zero visual degradation.
    The only thing that you fix by rendering higher res and downscaling is you get a nifty AntiAliasing effect.
     
  7. Yuenciel

    Yuenciel

    Joined:
    Dec 20, 2018
    Posts:
    15
    Yeah, I was also bewildered at the fact that MP4 and ProRes have little to no difference. I've been using ProRes for film production and it was always much better than MP4.
    Could it be that rendering at URP rather than HDRP causes the render to have much fewer details?
    Regarding the anti-aliasing effect, is there a way to render it so that I can achieve such effect? Maybe a script, or third-party plugin?
    Anyways, I really appreciate all the advice so far. Cheers!
     
  8. wwWwwwW1

    wwWwwwW1

    Joined:
    Oct 31, 2021
    Posts:
    769
    Hey, have you tried Texture Sampling with high Super Sampling Grid?

    2019's URP is weak in anti-aliasing compared to HDRP.

    Don't forget to output image sequences as PNGs, unless you would like to save some disk space.
    URPRecorder.jpg
     
    Yuenciel likes this.
  9. Yuenciel

    Yuenciel

    Joined:
    Dec 20, 2018
    Posts:
    15
    I just tried Texture Sampling with X16 supersampling, and it really provide the anti aliasing effect!
    Haven't really tried it on the same model though, but I compared renders from "Game View" vs "Texture Sampling X16".
    The anti-aliasing is noticeable, not much, but it is probably enough. Thanks !
     
    wwWwwwW1 likes this.