Mesh Read/Write

How the Check Works

The CheckMeshReadWrite scans the model assets in your project (.fbx, .obj and other imported models) and reports any that have Read/Write Enabled turned on in their import settings. When Read/Write is enabled, Unity keeps a second, CPU-side copy of the mesh data in memory in addition to the copy on the GPU. This roughly doubles the runtime memory footprint of the mesh, even though most projects never read the mesh data from scripts.

When to Use This Check

  • Reduce Memory Usage: Find models that unnecessarily keep an extra copy of their geometry in memory and reclaim that space.
  • Optimize for Constrained Platforms: Especially useful for mobile and other memory-limited targets where every megabyte counts.

This check reports its findings with an Info severity by default, because a readable mesh is not an error – it is only wasteful when you don’t actually need it. You can change the severity per profile in the Verification window.

How to fix errors like this

Unless you access the mesh data from code at runtime (for example to read vertices, bake meshes, or generate colliders procedurally), you should disable Read/Write. The system offers an automatic fix labelled Disable Read/Write, which turns off the Read/Write Enabled option on the model importer and reimports the asset for you. You can also do this manually by selecting the model, unchecking Read/Write Enabled in the Model import settings, and clicking Apply.

Was this page helpful?