Matinee animated camera fails to render landscape

Hello Everyone,

Not sure if to post this under “Bug report” or “Rendering” so please excuse me if I’m wrong. My problem is as follows: I am trying to render my scene using an animated camera but unfortunately the landscape ends up messed up in the render. In the editor and In-Editor play-mode everything remains perfectly normal. Below are a few pictures to visualize the problem:

In-Editor, Starters content stone material applied (old landscape)

Rendered Video, Starters content stone material applied (old landscape) As you can see, parts of the landscape are missing and/or heavily deformed.

In-Editor Play mode - Starter content Grass material applied in the near view, further away towards the back-wall you can see the grey “hole” Material(new landscape)

Rendered Video - Starterscontent Grass material applied (new landscape)

As the old landscape gave me these problems I tried starting from scratch by creating a new landscape using the default settings. I applied the starters content Grass material and following the documentation I created a hole-material to be able to create caves.

What I have tried:

  • Landscape material with paintable textures and opacity mask (for holes) combined.
  • Separated material with only 1 texture (grass) and separated material for opacity mask (for holes).
  • Rendering in various resolutions, still the same issue.

Strange thing is this suddenly started to happen last week, after I have already worked in Engine version 4.7.6 for a while. Has this happened to anybody else? If so (or not), what would you suggest me to do? Any advice is welcome!
Thanks in advance :slight_smile:

It should also be noticed that the shadow-quality in the video-render is also considerably lower than in the Editor or In-Editor Play views:

In-Editor, clean and nice pre-baked lighting quality from IES lights

Rendered video, smudgy and low-res shadow quality

I don’t know if this is caused by a new error, or by the same problem as with the landscape.

Hi Thomas -

Let me address the IES Texturing for your lights first. Static Lights cannot accurately use the IES textures, the quality of the light mask drops tremendously. The best thing you can do (and I am using V3 as a reference here) is to take your lights and change them to Stationary and decrease their attenuation radius to 300. I checked most of you lights in the hallway and these settings should allow you to get the IES quality you are looking for. One notable exception is the ceiling lights which use 2 point lights for the double spread, for those you will need to remove one point light and change the IES texture to one that accurately replicates the double spread you are looking for, otherwise you will need to reduce the attenuation radius much much smaller. I did not try to buildlights after checking these changes but if it appears too dark I would suggest adding a low intensity sky light to help fill in the darkness.

For the Matinee Issue not rendering out your landscape, the is not happening in V3, so What has changed between those versions? Have you altered the Landscape Material in anyway? Also has anything changed with the Matinee setup or camera setup?

Thank You

Eric Ketchum

Hi Eric,

Thanks for your response! I have been trying a couple of things and you are right that it is still working in the V3 version I sent you. By trying to reverse-engineer the issue I have come across a bunch of inconsistencies that I am now trying to capture in a video. For today, so far, it is working by taking V3 and migrating my updated meshes and textures. If this still works by the end of the day I would only have to update my lights and camera’s and everything will be good. Something that is noticeable so far is that the landscape and some assets appear messed up at the very start of the render but change to their correct shape and dimensions after about 5 frames. I would guess this didn’t happen in the ‘‘faulty’’ renders or the delay is so long it just doesn’t happen yet in the length of the render… At the moment trying to discover what causes this, I assume this is not supposed to happen. I will update you on that one and post the video once its done.

Regarding the lights, that’s kinda strange since untill this issue occured working with static IES lights have always worked without a problem. I understand they would work better in real-time and will use that if the ‘‘problem’’ still occurs after above-mentioned attempts to fix the scene.

Thanks for the food for thought so to speak and will accept your answer when these experiments are finished!

A quick thought - Check you Engine Scalability Settings in the Editor and the Project Config ini files, if you have a variable which sets the Texture Quality down at runtime that can cause issues if you are using displacement maps on your landscape at all.

Eric

Hi Eric,
Sorry for the late reply, college deadlines came creeping up so it became very busy all of a sudden. Was just playing around with the scalability settings and noticed indeed that those settings change the rendering fidelity of the terrain. I have only one configuration file in the folder ProjectName → Config, the file is named “DefaultEngine”, can you confirm if this is correct or should there be more files? There is only a boolean value for TextureStreaming in there which is already set to True. I’ll look around in the folders to see if I can find more and will run a test render later this day :slight_smile: Thanks for your response!

Edit - also found a config file '‘Scalability" in “Intermediate → Config → CoalescedSourceConfigs” but not sure if I should change anything in there. Sorry, still a bit new in these fields :’)

Edit 2 - In the engine its definitely the Texture quality in “Engine Scalability Settings” which for some reason gets tuned down when rendering a Matinee video. This would also explain the low quality lightmaps textures I was talking about earlier. Is there maybe a Matinee setting I’m overlooking that defines its rendering quality? Otherwise, could you provide a bit more info on the ini files, which one to find/what to change exactly? Many thanks in advance. The project is due this Friday but would like to render out the final video maybe this evening or tomorrow :slight_smile:

Hey -

First I would try to render our the Matinee via the option which closes the Editor while it renders. As long as you setup your console command to QUIT after the Cinematic Finishes everything should render out exactly as you want. While you try that I will dig up the console variables so that you can hard set the maximum quality for your project.

Thank You

Eric Ketchum

Also - If you have not done this already, make sure that you attach your Player Character to the Camera because distance settings are based on Player Character location and not just current camera location (you may have already done this, but I wanted to put that out there just in case.)

Hi, checklist coming up in 3…2…1…

  1. Matinee via option that closes Editor did not result in any changes.
  2. Quit after cinematic finishes is now implemented in Level BluePrint (thanks, almost forgot about that!) but also, no differences in the render after having it do a full run of the scene.
  3. At the moment I only have a Matinee driven camera in the level and a PlayerStart. I have attached the player start to the Matinee camera in my Level Blue Print and once I play In-Editor I can see the values of the engine spawned “PlayerCamera” change along the speed of the Matinee camera movement of the Matinee camera. I assume this is what you meant? Ran another render after this one but still no success.

additionally I came along some project settings in Target Hardware and changed these to “Desktop/Console” and “Maximum Quality” in the hope that that would fix anything but unfortunately no. I’ll go search the web for those console variables as well, maybe somebody left them in another topic. If you have found them I would be very happy to see them! :slight_smile:

Cheers,

Thomas

  • Edit - Just found out that there is also a Config folder in the Engine installation folder, before I was only looking at the one in my project. I’ll go through these files and see if I can find anything. Not too sure though if I should make any changes on that level though, I’ll await your reply.

Good morning everyone :stuck_out_tongue:
It was already past 2 so decided to leave it for the night. I had played with the scalability ini files in the project ‘‘intermediate’’ folder but it gets reset on every launch. Tried overiding it by creating a new one in the config folder but didn’t work (as actually expected).
This morning I came across this following thread:

where an user suggests to override the engine settings. Since I am planning on doing a fresh Unreal install after this project (and 4.8 coming up) I see no problem in setting everything possible to max settings. All I need for now is a pretty render :slight_smile: I have copied all maximum values to the other settings.

As soon as lighting is build I will run another render and see what happens. I’ll let you know Asap!

  • After Render Edit -
    the Scalability.ini in the project “Intermediate\Config\CoalescedSourceConfigs” folder has now changed to match the one I edited in the Unreal 4.7 installation folder but there are no visible changes in both the Matinee render output as well as “Play in new process”. Any thoughts on what I need to adjust to get the engine to always apply max settings?

Hi Thomas -

Sorry for my delay getting back in touch with you. You will want to go to the following page:

Scalability Reference for Unreal Engine | Unreal Engine 5.3 Documentation

And then open the Editor’s ConsoleVariables.ini file which is in the Engine Install Location in the Engine’s Base Config Folder.

You can add the r.[Name] Varaibles based on the page above. So for instance if you want to max out the Post Process Quality add the following to the ConsoleVaraibales.ini:

r.MotionBlurQuality=4

r.BlurGBuffer=-1

r.AmbientOcclusionLevels=3

r.AmbientOcclusionRadiusScale=1.0

r.DepthOfFieldQuality=2

r.RenderTargetPoolMin=400

r.LensFlareQuality=2

r.SceneColorFringeQuality=1

r.EyeAdaptationQuality=2

r.BloomQuality=5

r.FastBlurThreshold=7

r.Upscale.Quality=3

r.TonemapperQuality=1

You will want to do that for all of settings on the Scalability Page.

You may also want to in the Editor Settings Icon, in the Engine Scalability Dropdown select Epic and uncheck Monitor Performance (I would try this first then set the Console Variables.

Thank You

Eric Ketchum

Dear Eric,

Thanks for your time and response, much appreciated! Was looking at that exact page this morning, but had no clue what really to do with it, now I do. I have tried what you mentioned (console variables, in-engine scalability etc.) but still no positive results… Very strange. Just deleted and re-installed the engine (4.7) all fresh to make sure it would not be some old forgotten setting that is messing with me but no. The textures and meshes that were created by me work and render fine, its only the starter-content, landscape and the lightmaps that render at a lower resolution.

I came across this thread:

And hoped that it might have something to do with the engine detecting that my 2gb GPU would not be sufficient. Setting the PoolSizeVRAM percentage to 100 also doesn’t change anything.

Now I am going to try to adjust the “TEXTUREGROUP” MinLODSizes to see if forcing things to render at a higher minimum resolution makes any difference.
At the moment also installing the 4.8 preview 4 to try with a copy of the project if that makes any difference.
Will let you know if anything works out!

  • Edit - Nope, unfortunately. No results except for longer loading times. Currently checking to see if I can send you the project like last time. If you have any time tomorrow to have a look you would be my hero. Tomorrow is the last day I can work on it before putting it on a cd in the evening and deliver it friday morning, so any fix would do. I’ll send you a forum message.

Hi Thomas -

First Open a fresh version of your project with no additions to console variables or settings in the project or engine. Next, double check to make sure that your Engine Scalability Settings under the Settings icon are set all to EPIC.

Next, Open your level blueprint. Select the camera which moves through your matinee and call a reference to it in your Level BluePrint and take its output and place it into the Parent Actor of the Attach to Actor Node. Call a reference to your Player Character and take its output and place it into the Target of the Attach to Actor Node.

Finally, Open your Matinee and Create a Movie. In the Options make sure that your are checking Disable Texture Streaming.

Depending on your settings for Size of Movie etc., this will probably take a while to render out, but it should give you no problems.

Thank You

Eric Ketchum

It works! Holy wow man. You just saved my graduation project! I really had no clue that would fix it, couldn’t have figured this out myself. Thanks a ton! You made my day haha.

Hello you two,
I have to admit that I had the same problems as thompsongast and I’m so glad that I stumbled upon this thread. I had checked so many things and was really
desperate due to my deadline being tomorrow. I think attaching the player to the matinee camera in the level blueprint did the trick and I wanted to thank you for solving (accidentaly) my problem, too

Glad to hear out it worked out for you! :slight_smile: