Laggy map, profiler file available.. please help me understand

what do u mean by multiple test versions of old textures? Not quite sure i understand that. Isnt it streaming only textures that are used in the scene?

Also is there a way to adjust the stream distance for textures in static meshes? I have a large background city with lots of textures that can be lowered, but what if u got closer to it? lod bias will keep it blurry…

I noticed some of my textures are a mile away yet they are streaming in at high resolutions… for example i am taking some stuff from infiltrator demo for background and optimizing it. i used the liststreamingtextures command and one of the top ones on the list is a 1024 texture… actually the texture is 2048 but its currently streamed in at 1024. Why ? Its a mile away. My entire scene has not enough memory with everything going blurry, but that little thing is at 1024??? The background buildings area all combined into 1 big peice for less draw calls. if that means anything

Is tehre away to make the static mesh stream differently then other meshes? it requires less resolution since its the background.

I also noticed that liststreamingtextures is putting in some pretty high res textures in places where… well they should just not exist… I mean theres this one texture for a book… thats located across the map through many enclosed spaces… where my camera has been idle standing still in a hall way for like 20 -30 seconds… even though it still frozen at streaming 500 textures… when theres no way im using that many… But my point is that one texture is all the way across the map yet its still streaming? Im not understanding this. Can you help me understand why and what to do?

The scene never actually stops streaming ever either… it seems like its constantly stream 400 -900 constnatly… even if i stand still in a small closed off room with not much in terms of textures in it.

type investigatetexture and then a unique part of the texture name. it will tell you how many uses and the nearest use and what size is wanted etc.

I ran it and it did the command, but lists nothing… like i can see the green text seeing that it was done, but no results.

edit * never mind had to enter the full name apparently.

LogContentStreaming: Texture: Texture2D /Game/UnrealMarket/InfiltratorDemo/Env/Infil1_City_Decos/Texture/T_Infil1_Deco_CityBannersA_D.T_Infil1_Deco_CityBannersA_D
LogContentStreaming: Texture group: TEXTUREGROUP_World
LogContentStreaming: Stream logic: Forced
LogContentStreaming: Last rendertime: 189.164 seconds ago
LogContentStreaming: Force all mips: bForceMiplevelsToBeResident
LogContentStreaming: Current size: 1024x2048
LogContentStreaming: Wanted size: 1024x2048
LogContentStreaming: size: 1024x2048
LogContentStreaming: Priority: 100.857
LogContentStreaming: Boost factor: 1.0
LogContentStreaming: Allowed mips: 12-12
LogContentStreaming: Global mip bias: 0
LogContentStreaming: View0: Position=(-4789,-2831,113) ScreenSize=1207.000000 Boost=1.000000
LogContentStreaming: Static: Wanted=1024x2048, Distance=18731.6, TexelFactor=814.17, Radius=407.1, Position=(13755,-329,947)
LogContentStreaming: Static: Wanted=1024x2048, Distance=71962.0, TexelFactor=926.32, Radius=75087.4, Position=(27071,48832,-38542) [all mips]

Those are my results… and it is not in view… Its apart of the background city mesh that is huge, but its a small small part in it… and again its no where near in view… its in exterior behind like 2 buildings… and im inside one of the buildings hallways… cant even see if it i were to turn the camera …

Also here is a screenshot of the import settings.

What do i do?

Yes, that tells us that you are fill rate limited. A GTX 590 is not what it used to be for high-end games.
When you are fill rate limited, number of draw calls doesn’t matter so much. Number of queries matters a little bit, mainly because they use fill rate (not because of the count.)

To reduce fill rate requirements:

  • run in lower resolution
  • use less blending/particles/water/transparency
  • turn off various kinds of post-process eye candy (bloom, motion blur, SSAO, …)
  • make sure all textures have MIP maps
  • use bi- or tri-linear filtering rather than anisotropic filtering

All the suggestions related to mesh count and material count are not important when your problem is being fill rate limited.

Thanks, I already got through that problem for the most part. Now its the texture streaming and everything being blurry as hell that is the problem.

From what i gather in my previous screenshot that city that is WAY in the background… is being streamed at full for every single texture it issues… at least if im reading these results correctly. So the question is why? The entire is 1 large peice in 1 direction of the map. It does not wrap around the map or anything… I mean its a huge model, but still its far away… It does encompass a large section of the screen (Not when im indoors obviously even though it still wants those textures while im indoors.) So the question is why are those textures coming in at full no matter what? Please help me fix this…

LogContentStreaming: ,Priority,Current,Wanted,Largest Resident,Current Size (KB),Wanted Size (KB), Size (KB),Largest Resident Size (KB),Streaming Type,Last Rendered,BoostFactor,Name

When using that command those numbers for current, wanted, , and largest… are all the same size and all the higest resolution teh texture goes to… this looks like its the case for every single texture in my map… what gives? Am i reading this right…?

Nevermind that… not everything is streaming at highest… but a huge number of textures are for no reason… since they are no where in view…

I just attached an image that literally has me floating underneath the entire level… staring DOWN into nothingness… at most u see a skysphere.

Why even after a few minutes of nothingness with the camera stationary… is it streaming over 500 textures…???. that number does not lower… it just stays streaming…

What kinda system you have again? I had a 1st gen I3 that kicked nutt in anything graphical but the area of Unreal,lol. What are the spec of your cpu. That matters so

That computer is an i7 3.5 ghz with gtx 590

The texture you checked is using streaming method Forced. That means it will always be streamed in no matter what. Are you checking ‘neverstream’ or ’ False global mips resident’ or something like that? According to the texelsize it should want a smaller size than that once you remove the forced streaming.

No i am not… look at the attachment screenshot…

&stc=1&d=1443719435

Those are the settings :confused: Any ideas? Did i just uncover a massive bug with the editor in my project? lol

anything in blueprint that may be doing it? it used to be possible to force streaming in blueprints as well but I have no idea if that is possible anymore. That seems very odd if not. Something is causing your textures to not stream. Looks like you migrated a bunch of infiltrator content right?

I would investigate more textures and see if there is a pattern.

I am using no blueprints other then the fps epic … and some for godrays from epic… but im looking at it and i ran liststreamingtextures again… and now that one says its not forced … still streamed at super high resolution though from a mile away… and now several others are set to forced… which… no … they are not according to my import settings!!

Only thing i changed was i deleted my saved folder and my Intermediate folder… just to test if that would fix it… and no it did not …

*update… as i moved around as swithced my camera position… the original texture switched it self back to forced!!! according to liststreamingtextures.

*update 2 : and correction there are some blueprints from things in the asset store like the building and street set… none of the blueprints would reference stuff out of the infiltrator demo though.

Oh and to answer your question yes i migrated some infiltrator demo stuff and did merge asset tool to create one mesh… there are a few buildings here and there that were original models from infiltrator, but not many. Also its doing this with textures that arent in the infiltrator demo as well.

Did you ever do stat streaming to see the overall memory consumption? maybe its just some odd thing where you actually are not out of memory so the editor decides to keep things in memory and not stream them. Obviously something is going wrong though if that is the case and you constantly see streaming textures.

Yea ive tried stat streaming check out the screenshot. And honestly this streaming blur problems happen weather its high medium or low settings for textures.

For comparison sake here are 2 more streaming screenshots in different areas with less in view.