Increase Non-Streaming Texture Pool Size?

Is there a way to increase Non-Streaming Texture PoolSize. Texture memory in our game is over 1000mb and because of that some of the Texture are not being loaded. So is there a way to increase the memory PoolSize?

Thanks,

The really strange thing is that my GPU has 6 GB VRAM, but texture pool size limits itself to 1000 MB without any obvious reason…

Using the ‘r.Streaming.PoolSize’ console command can increase or decrease your texture pool size based on what is needed for your project.

For example ‘r.Streaming.PoolSize 4000’

@sypro The editor does not detect your hardware and base the poolsize off of this. The default setting is 1000 mb which is why we allow users to change this.

Thank you, that did work. I just wonder, why this doesn’t happen automatically…
AFAIK it’s not possible to determine to amount of available VRAM via Blueprint and then set the texture pool according to that (60-70%?)

If UE4 could handly this by it’s own, this would solve the majority of such problems. Any chance that there will be an auto-setting in the future?

Thank you.

If you would like, you can create a new answerhub post with this feature request, as well as a brief explanation as to why you think it would be helpful to give the request a greater chance of becoming a feature.

I am going to resolve this issue for tracking purposes so others experiencing this issue can find a helpful solution.

Thank you,

In which .ini file should this setting be applied?

To answer myself, [/Script/Engine.RendererSettings] in DefaultEngine.ini seems to have done it.

I’m struggling with some basics, but the solution described here seems relevant, thanks for confirming. In play mode a red warning comes up, “Texture Streaming Pool over 170 mb”, I assume my default is set to 1000, needs to be increased to 4000 mb, yes?

I lack the foundation to know just how this works, thanks for some explicit steps. I found and opened into Notepad DefaultEngine.ini, but I don’t see within it [/Script/Engine.RendererSettings]. The closest thing is [/Script/EngineSettings.GameMapsSettings]. Thanks for clarifying where the cursor goes, what code is dropped in, and if I simply save the file to have it called up within that engine build.

Many thanks.

Hey BenjvC,

So in order to edit this setting, simply open the project you are receiving that message with, and bring up the console command (~) tilde key.

Then type ‘r.Streaming PoolSize ####’

In your case, you wouldn’t need to go all the way up to 4000 MB, but instead go up to something like 1200 to see if that clears the issue. If the max number you are seeing is 170 MB, then increasing it from 1000 MB (default) to 1200 MB will cover those textures that are not fitting within the pool memory size.

Also, you want to edit the settings per project, which means you won’t be going into the engine version folder, but your actual projects folder (Unreal Projects), and open YourProjectName\Config\DefaultEngine.ini.

It is there you will see these settings…

Let me know if you still need help.

Thanks,

Andre

Andrew, many thanks for your time. So, this can be done from Console within the Editor, great. You say I want to be editing these settings per project, which I figured meant within .uproject file in Editor as described, but then you point to the ini residing, not in the engine folder, rather my project folder according to the outlined path. Is that simply to show me where this ini lives and what it looks like after editing?

Okay, seems I got this working now, but am unclear about what you point to in the DefaultEngine.ini within my project folder. I opened it into Notebook after making the changes in Editor and see the relevant block you highlighted, but I expected to see “r.Streaming.Textures 1200” somewhere in there, but don’t. Did I follow you?

BTW, in case others read this, you wrote ‘r.Streaming Textures ####’, leaving the period out between words. I didn’t realize that mattered until using the period, which brought up the green hints in Console.

Thanks.

Benjy

The console variable needs to be placed within the notepad itself if you want it to be a default setting upon startup for that particular project.

Yeah sorry about that. I didn’t realize I had left a space between Streaming and Textures, which should be a period. You should take a look at our documentation on console commands. Any commands that begin with ‘r.’ deal with rendering, and usually when you begin typing, you get the hints and suggestions so you don’t have to type out the full thing every time.

Cheers,

Oh, so you might try things in console in the Editor to see what makes the project happy, could even build and submit at that stage and have it implemented, but if you intend on quitting and starting up again and intend that function to be saved, you implement it in Notepad, makes sense now. I take it the command can go anywhere within that block you outlined, no particular order, just needs to show up. Many thanks, Andrew.

Andrew, hello again, verified my command line for increased Streaming PoolSize was saved properly, but no chance to test until now that I’ve attempted to package, which failed for yet newer issues, which I’d also love to discuss. Anyway, while searching through the Output log for errors I noted the following:

‘LogConsoleManager:Warning: Console variable ‘r.Streaming.PoolSize’ wasn’t set (‘Scalability’ has a lower priority than ‘ProjectSetting’)’

Does this indicate I’m a) not getting the increased memory allotted as intended?, and b) is there a setting missing for raising priority of Scalability above whatever ProjectSetting?

Big thanks!

It sounds like your ‘Engine Scalability’ settings are not set to ‘Epic’ which is preventing your console variable from saving. In your viewport you will see a settings menu located on the toolbar.

Hello Andrew, I’m still getting the same Warning, had ensured the Engine Scalability Setting was set to Epic down the line. I’m encountering way bigger issues at the same time, taking suggestions from two staff, joeGraf and Adam Davis, if you know them, but to no avail. Might these issues be related?, which is why I bring them up here. I’m getting other yellow Warnings “…Unable to find package for cooking…”, the case in four items, one BP and four Maps, and the real show stopper, a red Error, Missing UE4Game binary. I’ve also lost Gamepad functionality in play mode while following the various instructions. Two weeks of getting nowhere, then going backwards, isn’t the point of the exercise ;^) big thanks if you can help me move forward again.

Have you created AnswerHub posts for the issues you mentioned, aside from the one I am assisting you with?

The best way for us to track and help you resolve your issues are to combine the issues related to packaging together, and other like issues together.

I have a few questions to help me narrow down what could be the cause of the issue.

  • Since the creation of the project, have you upgraded your projects engine version?
  • What steps are you taking when packaging your project?
  • What is your targeted platform when packaging? (i.e. Windows, Mac, or Mobile).
  • Have you ran the ‘Fix up Redirectors in Folder’ option on your Content Browser?

Thanks,

Hi Andrew, and thanks.

Since the creation of the project, have you upgraded your projects engine version?

I first upgraded to 4.10.01, then downloaded source code from Git Hub, successfully built a revised engine, and launched my project in that engine into Editor. I say “successful” in that just this morning I tested this engine in a new First Person Shooter project, packaged exe, added ‘-emulatestereo’ command line to the shortcut, and affirmed my stereo settings were correct and made it through in the exe via this revised engine. The problem is when I launch my project into this same engine version, again first built using 4.10.01, then revised via Visual Studio 2013, I get the red Error Missing UE4Game binary. It’s something particular to this project.

What steps are you taking when packaging your project?/What is your targeted platform when packaging? (i.e. Windows, Mac, or Mobile).

I build the lighting in Production quality, make sure all BPs are saved, levels saved, play mode functions good, fill in a few things in Project Settings, then package for Windows (64-bit), watch the Output Log.

Have you ran the ‘Fix up Redirectors in Folder’ option on your Content Browser?

Thanks for that tip, I’ve just found that right-clicking into empty space within a folder in Content Browser. Does this need to be done within each folder or is the routine global?

Let’s table the PoolSize issue, the loss of Gamepad control issue, some other stuff, will be most relieved to get past the packaging problem.

Thanks, again!

The problem is when I launch my project into this same engine version, again first built using 4.10.01, then revised via Visual Studio 2013, I get the red Error Missing UE4Game binary. It’s something particular to this project.

The revisions you are making to the Engine, is this the -emulatestereo command or are you doing more than this?

I would try recompiling the UE4 Game within Visual Studio to see if that helps resolve your issue.

Thanks for that tip, I’ve just found that right-clicking into empty space within a folder in Content Browser. Does this need to be done within each folder or is the routine global?

You will want to run this command whenever you move or copy an asset to/from a different folder. You can run this on your ‘Content’ folder which should fix up redirectors for all folders within the Content folder.

I was able to find some information on the same approach you are taking, and although the post is a bit older, the information within should still apply to your case.

Enable Split Screen without Occulus or Multiplayer

Let me know if you have further questions or need additional assistance.

Thanks,

hi i am having the texture streaming problem. i tried the r.streamingtexturepoolsize #### and it works but only for that run…the next time i start up the project it returns to 1000mb…am i forgetting something?