Announcement

Collapse
No announcement yet.

4.11 preview 7 Stereo Panoramic export works!

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

    4.11 preview 7 Stereo Panoramic export works!

    I've been trying to get the Kite & Lightning Stereo Panoramic export plugin working since the early 4.11 previews. In preview 7 it works! I thought others might be interested to see the results. Here's a visualization I made of my condo rendered out with SP.PanoramicQuality=average. It took around 30s per frame (left+right) on my GTX 980. There are some dark horizontal bands in the output, I haven't figured out if this is a rendering or stitching error - any ideas?



    I'm now trying a higher resolution export. I'll post results here.

    #2
    How do you use it? Can you give instructions please, I can't find them anywhere. Thanks in advance!

    Comment


      #3
      1. Install UE4 4.11 Preview 7
      2. Create a new project, enable the Stereo Panoramic Movie Capture plugin under Edit > Plugins > Movie Capture, restart the editor
      3. Go into play mode and enter the following commands:

      SP.OutputDir C:\ (sets the output directory)
      SP.PanoramicMovie 0 300 (make a movie, 300 frames long)

      You can also do a screenshot with SP.PanoramicScreenshot

      That's it - the result will be in C:\<current-date-time>\

      Other settings:

      Slice Controls
      SP.HorizontalAngularIncrement: The number of degrees per horizontal step. Must be a factor of 360.
      SP.VerticalAngularIncrement: The number of degrees per vertical step. Must be a factor of 180. <- decrease to around 30.0f if you're seeing dark horizontal bands in output (default is 90.0f)
      SP.CaptureHorizontalFOV: Horizontal FOV for scene capture component. Must be larger than SP.HorizontalAngularIncrement

      Atlas Controls
      SP.StepCaptureWidth: The final spherical atlas width
      SP.EyeSeparation: The separation of the stereo cameras
      SP.ForceAlpha: Force the alpha value to completely opaque

      Sampling Controls
      SP.CaptureSlicePixelWidth: Capture Slice Pixel Dimension
      SP.EnableBilerp: 0 - No Filtering 1- Bilinear Filter slice samples
      SP.SuperSamplingMethod: 0 - No Supersampling, 1 - Rotated Grid SS

      Debug Controls
      SP.ConcurrentCaptures: The number of scene captures to capture at the same time
      SP.GenerateDebugImages: 0 - No Debug Images\n1 - Save out each strip as it is generated\n2 - Save each entire slice
      SP.OutputDir: Output directory
      SP.ShouldOverrideInitialYaw: Override Initial Camera Yaw. Set to true if you don't want to use PlayerController View Dir <- true by default
      SP.ForcedInitialYaw: Yaw value for initial Camera view direction. Set ShouldOverrideInitialYaw to true to use this value <- set the yaw
      SP.FadeStereoToZeroAtSides: Fade stereo effect between left/right eye to zero at 90 degrees.
      Last edited by lebek; 03-14-2016, 08:35 AM.

      Comment


        #4
        The dark horizontal banding was mostly fixed by rendering at the (higher quality) default settings (i.e. don't set SP.PanoramicQuality=average). There was still some mild banding which I fixed by reducing SP.VerticalAngularIncrement.

        I'm recording a 60s 4K stereopano now, hopefully have it on YouTube tonight!

        Comment


          #5
          Originally posted by lebek View Post
          1. Install UE4 4.11 Preview 7
          2. Create a new project, enable the Stereo Panoramic Movie Capture plugin under Edit > Plugins > Movie Capture, restart the editor
          3. Go into play mode and enter the following commands:

          SP.OutputDir C:\ (sets the output directory)
          SP.PanoramicMovie 0 300 (make a movie, 300 frames long)

          You can also do a screenshot with SP.PanoramicScreenshot

          That's it - the result will be in C:\<current-date-time>\

          Other settings:

          Slice Controls
          SP.HorizontalAngularIncrement: The number of degrees per horizontal step. Must be a factor of 360.
          SP.VerticalAngularIncrement: The number of degrees per vertical step. Must be a factor of 180. <- decrease to around 30.0f if you're seeing dark horizontal bands in output (default is 90.0f)
          SP.CaptureHorizontalFOV: Horizontal FOV for scene capture component. Must be larger than SP.HorizontalAngularIncrement

          Atlas Controls
          SP.StepCaptureWidth: The final spherical atlas width
          SP.EyeSeparation: The separation of the stereo cameras
          SP.ForceAlpha: Force the alpha value to completely opaque

          Sampling Controls
          SP.CaptureSlicePixelWidth: Capture Slice Pixel Dimension
          SP.EnableBilerp: 0 - No Filtering 1- Bilinear Filter slice samples
          SP.SuperSamplingMethod: 0 - No Supersampling, 1 - Rotated Grid SS

          Debug Controls
          SP.ConcurrentCaptures: The number of scene captures to capture at the same time
          SP.GenerateDebugImages: 0 - No Debug Images\n1 - Save out each strip as it is generated\n2 - Save each entire slice
          SP.OutputDir: Output directory
          SP.ShouldOverrideInitialYaw: Override Initial Camera Yaw. Set to true if you don't want to use PlayerController View Dir <- true by default
          SP.ForcedInitialYaw: Yaw value for initial Camera view direction. Set ShouldOverrideInitialYaw to true to use this value <- set the yaw
          SP.FadeStereoToZeroAtSides: Fade stereo effect between left/right eye to zero at 90 degrees.
          You are the man Lebek!!

          Comment


            #6
            so I add these two commands -
            1. SP.OutputDir C:\
            2. SP.PanoramicMovie 0 300 (make a movie, 300 frames long)

            and the game pretty much freezes up and than just spits out a panormamic png and not a video

            any help?

            Comment


              #7
              Originally posted by polemos View Post
              so I add these two commands -
              1. SP.OutputDir C:\
              2. SP.PanoramicMovie 0 300 (make a movie, 300 frames long)

              and the game pretty much freezes up and than just spits out a panormamic png and not a video

              any help?
              Yes it outputs a sequence of PNG frames, then you need some other software to turn them into a movie (e.g. Premiere). For testing to make sure it's working you can set SP.PanoramicQuality preview before running the movie command - should speed things up a bit.

              In general it does cause the game to freeze up until capture is complete. You can setup a matinee to start immediately before you start recording.

              Comment


                #8
                I have a GTX TITAN Z it should be running this quickly but its not something is wrong, it totally locks my machine up, could it be the file directory I am rendering out to? since it is on a different drive or is my project need certain settings to utilize my graphics card? I am not sure.

                Comment


                  #9
                  Originally posted by polemos View Post
                  I have a GTX TITAN Z it should be running this quickly but its not something is wrong, it totally locks my machine up, could it be the file directory I am rendering out to? since it is on a different drive or is my project need certain settings to utilize my graphics card? I am not sure.
                  If I understand correctly, with default settings, each stereopano frame is constructed from 360*2*2 2d captures = 1440 2d captures. This is why I wasn't surprised by the performance issues. You could try increasing/decreasing SP.ConcurrentCaptures?

                  Made a new video (sorry not architecture this time):



                  Actually rendered at twice that resolution but turns out YouTube max res is 3840 x 2160 for VR videos.

                  Comment


                    #10
                    Thanks for that tutorial! Awesome work!

                    Do you know how to set the resolution of the output? Standard it provides 4096x2048 but this is really high. What can I do to set the resolution of all the png's? Is it limited to the SP.PanoramicQuality console command? And are there different sp.PanoramicQuality commands besides preview and average?
                    Last edited by jdijkman; 03-15-2016, 11:36 AM.

                    Comment


                      #11
                      Originally posted by jdijkman View Post
                      Thanks for that tutorial! Awesome work!

                      Do you know how to set the resolution of the output? Standard it provides 4096x2048 but this is really high. What can I do to set the resolution of all the png's? Is it limited to the SP.PanoramicQuality console command? And are there different sp.PanoramicQuality commands besides preview and average?
                      Here are all the PanoramicQuality options and meanings:

                      preview
                      HorizontalAngularIncrement = 5
                      VerticalAngularIncrement = 60
                      CaptureHorizontalFOV = 60
                      StepCaptureWidth = 720

                      average
                      HorizontalAngularIncrement = 2
                      VerticalAngularIncrement = 30
                      CaptureHorizontalFOV = 30
                      StepCaptureWidth = 1440

                      improved
                      HorizontalAngularIncrement = 0.5
                      VerticalAngularIncrement = 22.5
                      CaptureHorizontalFOV = 22.5
                      StepCaptureWidth = 1440

                      By default (i.e. if you don't set PanoramicQuality) it uses these settings:
                      HorizontalAngularIncrement = 1.0
                      VerticalAngularIncrement = 90.0
                      CaptureHorizontalFOV = 90.0
                      StepCaptureWidth = 4096

                      So StepCaptureWidth is what sets the output size.. but you might need to fiddle with other parameters to match whatever StepCaptureWidth you choose.

                      Hope that helps.

                      Comment


                        #12
                        Horizontal band near the Zenith?

                        Hi all,
                        Thank you Lebek, for the detailed and clear instructions on getting this working.
                        I've never used UE4 before, and so learning as I go along. I want to use UE4 to composite UE4 generated CG over recorded (equirectangular) video.

                        I fired up the test scene that comes with UE4 and added an example speedtree from their freepack.
                        The output looks nice (1 minute render per stereo frame on a Nvidia 980M chip)
                        However, can anyone tell me why the horizontal band / line just below the sun?

                        Best Regards.Click image for larger version

Name:	Left_00000.jpg
Views:	1
Size:	888.0 KB
ID:	1102533

                        Comment


                          #13
                          I've found the banding relates to SP.VerticalAngularIncrement (not sure why). Decrease it an banding decreases. It has to be a factor of 180, 20 or 30 might be a good starting point.

                          Comment


                            #14
                            Thanks Lebek.
                            I'll try that out. One question - what do you think would be a better way to "trigger" a recording - Should I find a way to write a keyboard input, say pressing "f2" to run a script which issues commands to set the output Dir, followed by number of frames to record, or is there already an easier way?

                            I tried using a "delay" of 30secs via a blueprint script, the reasoning being: I press the play button, and it gives me 30 seconds to hit the tilde key to bring up the console where I type SP.outputDir.... followed by tilde key again and SP.PanoramicMovie....
                            But the moment I enter the second command and hit enter, even the delay timer freezes as recording begins instantly.

                            So, figuring a keyboard press driven script might be the way to go. If it is, I'll start learning a bit of rudimentary Blueprinting.
                            (come to think of it, i didnt know one had to mess with blueprint just to get wind to blow grass...wasn't like this in CryEngine sandbox - but I guess I'll have to learn)

                            Comment


                              #15
                              It works fine. made up via blueprint calling all those console variables as needed while playing a matinee. Need to say that no frame sync resulting between them and got to manually slow down the matinee's fps movement channel to catch up capture rate.
                              The only thing i could not figure out was that at my "second eye" (the right capture) , all dynamic shadows , sky oclutions and SAO are completly gone ! tried everything but nothing solves this.
                              Has anyone experienced this issue ? Any clue how to fix it ?
                              Regards !

                              Comment

                              Working...
                              X