PERF.TEXSTR002

Stream Mip Maps is set on textures, but Texture Streaming is off

Info Performance One-click fix (Pro)

Texture streaming in Unity is two switches, and both have to be on. Per texture, Stream Mip Maps in the importer marks the asset as a candidate. Globally, Texture Streaming in the active Quality Settings level turns the system on. Set the first without the second and you get a project that looks migrated and streams nothing.

What the scan looks at

The count of texture importers with Stream Mip Maps enabled, checked against QualitySettings.streamingMipmapsActive for the active quality level. The rule fires only when there is at least one flagged texture and the global switch is off.

Why it costs you

Nothing, directly — that’s what makes it insidious. The flags carry no runtime cost while streaming is off, so there’s no symptom to chase. What it costs is the memory you thought you’d already saved: someone did the per-texture pass, the global switch never got flipped (or a later quality-level edit dropped it), and the project has been shipping the full mip chains ever since.

This is also the state a partially reverted optimization leaves behind, which is why it’s worth a finding of its own rather than being folded into PERF.TEXSTR001.

How to fix it by hand

Either finish the job or undo it — both are fine, drifting is not:

  • Finish it: Project Settings ▸ Quality ▸ enable Texture Streaming on every level you ship, set a Memory Budget, then play through and watch for pop-in on fast camera moves.
  • Undo it: if streaming was abandoned deliberately, clear the Stream Mip Maps flags so the next person doesn’t read them as intent.

Note that Quality Settings are per level. Enabling streaming on Ultra while shipping Medium on mobile reproduces the same bug with extra steps.

What PerfLint does about it

Pro can enable Texture Streaming across all quality levels in one action, with a confirmation that states what’s about to change. Clearing the flags instead is left manual — the tool shouldn’t guess that you meant to abandon streaming.

Check your own project. The scan is free, runs entirely on your machine, and reports this rule with the exact assets that trip it — nothing is uploaded.

Install the free scanner See a sample report


Last reviewed · All rules