Announcement

Collapse
No announcement yet.

Maximum Resolution to Render 1-High Res Still Image?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Maximum Resolution to Render 1-High Res Still Image?

    What's actually the limit / maximum pixel resolution to render one high-resolution image?

    thanks for any info,
    appreciate it!

    #2
    From an engine standpoint? As in how much can you super sample?
    performance starts breaking at 8k.

    Since a still shot has no performance I don't see why that couldn't be exceeded for this use case.
    The question is more as to how this is getting output.

    here is an example
    https://docs.unrealengine.com/en-US/...ots/index.html

    The bultin system multiplies your screen res X4 and makes a composite by rendering a few bits at a time...

    So a highres screenshot at 4k would easily exceed 8k by a ton...

    Comment


      #3
      Depends on how much GPU memory you have, needs to be enough to load everything in the image along with the rendered image itself.

      Comment


        #4
        Originally posted by darthviper107 View Post
        Depends on how much GPU memory you have, needs to be enough to load everything in the image along with the rendered image itself.
        Even a 1060 can handle a maxed out level at 1fps though. Assuming best practices (appropriate pool size, salability etc.) were followed when building things, shouldn't it just render as expected regardless and end up just taking a lot longer in time?
        Even if you were to do this manually yourself - set up a render2d, pan it around the scene and capture as you go writing from 1 temp to a buffer - it would require a lot before the memory of the buffer exceeds the GFX.
        IF instead of writing to a temporary buffer you write down the image tiles directly you can also circumvent that making the hard disk the limitation on size - possibly. what for? no idea :P

        Basically what I'm suggesting is that if you capture 1,000 images of 256x256 which each cost 4GB of vram to render one at a time, you can still render a 256*1000 res file on pretty much any system (with 4gb of vram).
        Last edited by MostHost LA; 02-12-2020, 02:12 AM.

        Comment


          #5
          Originally posted by MostHost LA View Post
          IF instead of writing to a temporary buffer you write down the image tiles directly you can also circumvent that making the hard disk the limitation on size - possibly. what for? no idea :P

          Basically what I'm suggesting is that if you capture 1,000 images of 256x256 which each cost 4GB of vram to render one at a time, you can still render a 256*1000 res file on pretty much any system (with 4gb of vram).
          I could name you a reason: Creating High-Res shots of any resolution with sample numbers (for raytracing stuff and whatever requires samples etc), that are beyond good and evil and would melt every graphic card, as soon as you type the numbers in . it would allow some kind of offline render, where the full picture is not rendered per tick or fps, but just one small fraction, and then the next small fraction is rendered in the next frame and stitched together. Like they did with the clouds in Horizon: zero dawn. There they said, the most part of the scenerey was rendered in realtime, but the clouds were so heavy hitters, that they would break the fps. Therefore they built it that way, that only one part of the clouds was rendered per frame, then in the next frame, another part was rendered. I think, they used 16 steps -> 16 frames for one complete cloud actualisation instead of one complete cloud every frame, which would have broken the fps.

          I mean, the smaller the rendered picture is, the higher you can go with all quality settings and still be able to run the program without crashing it or roasting your comp in the process. So your suggestion with 1000 small pictures, that combined create one big high quality picture, i am pretty sure, there are enough people, that would love this ability.
          Especially, if you build it in a way, that it automatically create the high res picture. I thought about this possibility too, and i would be very interested, if something like this is possible here ^.^
          Last edited by Suthriel; 02-12-2020, 03:25 PM.

          Comment


            #6
            Originally posted by MostHost LA View Post
            Even a 1060 can handle a maxed out level at 1fps though. Assuming best practices (appropriate pool size, salability etc.) were followed when building things, shouldn't it just render as expected regardless and end up just taking a lot longer in time?
            Even if you were to do this manually yourself - set up a render2d, pan it around the scene and capture as you go writing from 1 temp to a buffer - it would require a lot before the memory of the buffer exceeds the GFX.
            IF instead of writing to a temporary buffer you write down the image tiles directly you can also circumvent that making the hard disk the limitation on size - possibly. what for? no idea :P

            Basically what I'm suggesting is that if you capture 1,000 images of 256x256 which each cost 4GB of vram to render one at a time, you can still render a 256*1000 res file on pretty much any system (with 4gb of vram).
            It's not about time, it's about memory. If you're rendering a large image it's going to take up more memory on the GPU, it has to temporarily store it there while it renders before it can do anything with it to save to the hard drive. The render image is going to be pretty large due to the extra passes it does internally to make the image and that it's going to be uncompressed.

            Highresshot used to render the image in pieces but I don't think it does that anymore because you get problems when image processing is done on individual pieces rather than the whole thing. You can get edges that don't match.
            Last edited by darthviper107; 02-13-2020, 09:50 AM.

            Comment


              #7
              hmmm. yeah.. all good points. Just wondering what you do for Stills, I mean high res stills if a client is requesting 30.000 pixels by 30.0000 pixels.
              Most likely.. not doable, right?

              Comment


                #8
                Try it. The link I shared has commands for custom sizing. See what the engine can do itself on your setup.

                If it doesn't work you can try the scene render approach. You just have to remove vignetting from the PP first. And oversample each shot by 30% so that you can stitch it together without problems. (Obvisouly wind nodes or anything moving needs to be stopped).

                Again, so long as each individual shot can render with your gfx and you save the file out you won't have issues.

                I would create a bluetility script to pan the camera the preset amounts and capture the still. Then save the render texture manually, and click the bluetility to have it move and capture the next tile.

                Afterwards assemble in photoshop. The panoramic stitching will probably help with that.

                Comment


                  #9
                  Originally posted by MostHost LA View Post
                  I would create a bluetility script to pan the camera the preset amounts and capture the still. Then save the render texture manually, and click the bluetility to have it move and capture the next tile.
                  Not sure, if panning the camera is helpful in such a case, because of focal points and disortions caused by the camera lenses. Programs like Cinema 4D have a camera/film offset function for this scenario, in which the camera itself is never moved, the perspective etc. never changes

                  Here from the manual about this exact scenario:

                  https://help.maxon.net/us/index.html...JECTPROPERTIES

                  Film Offset X [-∞..+∞%]
                  Film Offset Y [-∞..+∞%]




                  Suppose the Cinema 4D camera worked like a traditional film camera, with images being recorded onto photographic film one after the other. Now imagine if additional image information could be recorded by moving this film along the X and Y axis (beyond the strip of film in the example). This is exactly what these parameters do. Cinema 4D takes this one step further in that it does not restrict itself to the size of the filmstrip.

                  So what use is all this?
                  1. First, it lets you shift the part of the image displayed without changing the perspective.

                    This is especially useful for adjusting views in architectural visualizations. Perspective, linear direction and linear angles are not affected.
                  2. Second, the 16,000 x 16,000 and 128,000 x 128,000 pixel render limitation has been eliminated.

                  A special trick makes it possible to render images to any given size. This is how it works: Animate Film Offset X and Film Offset Y in steps of 100% for each image. Split the scene into separate parts that will be rendered sequentially. Choose an image format as your output format (don’t choose video).

                  Once you are done rendering, you will have several images (none of which may exceed a resolution of 16,000 x 16,000 or 128000 x 128000 pixels) that you can then piece together in an image editor.

                  Example:




                  For the example, the scene was been split into four pictures. The camera’s Film Offset X and Film Offset Y were animated over four frames as follows.
                  • First frame: Film Offset X / Y = 0% / 0%
                  • Second frame: Film Offset X / Y = 100% / 0%
                  • Third frame: Film Offset X / Y = 100% / -100%
                  • Fourth frame: Film Offset X / Y = 0% -100%

                  The result is four separate images that you can piece together in an image editor.

                  Comment


                    #10
                    Makes sense panning is what we do normally with orthographic view. On a perspective shot it would be a bit different.
                    perhaps tilting would be best. Would be something to try out.

                    Comment


                      #11
                      Originally posted by BernhardRieder View Post
                      hmmm. yeah.. all good points. Just wondering what you do for Stills, I mean high res stills if a client is requesting 30.000 pixels by 30.0000 pixels.
                      Most likely.. not doable, right?
                      The client probably doesn't know what they're talking about

                      Comment


                        #12
                        https://docs.unrealengine.com/en-US/...iew/index.html perhaps?
                        CEO of Prydetech

                        https://www.artstation.com/ixicalibur

                        Originally posted by ixicalibur
                        Here you go, this is a link to every tutorial you could ever need plus instructions to access all the collective knowledge of mankind: [Super massive awesome link that every amazing game developer uses to instantly learn to be super awesome at making stuff]

                        Comment


                          #13
                          Originally posted by darthviper107 View Post

                          The client probably doesn't know what they're talking about
                          We do a lot of such large Prints. Those are 8meter wall prints where you can go close by.

                          Comment


                            #14
                            As far as photography goes the 30,000 is peanuts. Especially at 72dpi.
                            at 300 dpi it becomes something a little more noteworthy.

                            Comment


                              #15
                              Originally posted by oglu View Post

                              We do a lot of such large Prints. Those are 8meter wall prints where you can go close by.
                              Yeah, but you don't need to have the image at that actual resolution, you render it smaller and scale it up.

                              Comment

                              Working...
                              X