• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
Question by Pangamini · Aug 21, 2013 at 02:14 PM · mesh color

Mesh duplication under the hood: What's duplicated?

When i use Instantiate(myMesh) or retrieve meshFilter.mesh (not sharedMesh), a copy of the mesh is created. I use duplicate meshes for per-vertex damage modelling and i only change colors buffer. My question is, what is really duplicated in the memory? Are all other hardware buffers shared? Or are they duplicated the moment i duplicate the mesh object?

Comment

People who like this

0 Show 0
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

2 Replies

  • Sort: 
avatar image
Best Answer

Answer by Joyrider · Aug 21, 2013 at 02:26 PM

In memory, it duplicates everything that is used to build the mesh (i.e. what you see as the mesh asset in Unity > subMeshList, triangleList, vertexList, UVs, ...). All the rest will stay the same, and won't thus be duplicated. It will a.o. still use the same material as the original mesh.

Comment
Bunny83
aldonaletto

People who like this

2 Show 4 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Pangamini · Aug 21, 2013 at 02:36 PM 0
Share

Is it possible to somehow spare memory and only replace vertex colors buffer when rendering?

avatar image Joyrider · Aug 21, 2013 at 02:39 PM 0
Share

And for that I'd refer you to Paulius Liekis' answer ;) All data related to a mesh comes as a bundle.

avatar image Pangamini · Aug 21, 2013 at 02:41 PM 0
Share

But the data is stored twice, for CPU and GPU access right?

avatar image Joyrider · Aug 21, 2013 at 02:50 PM 0
Share

Nope, both accès the data from the same place and it is usually stored in VRAM, but not necessarily, it depends on usage (static or dynamic meshes) and cpu flags, and handled by the driver. In some cases it is stored in RAM and then sent to GPU upon request, making all your mesh data be transfered through the bus. One of those cases is if you lack free VRAM. Transfers in the opposite direction happen too of course.

avatar image

Answer by Paulius-Liekis · Aug 21, 2013 at 02:30 PM

Whole mesh will be duplicated since in runtime memory vertex data has to be grouped together, i.e. it's not separate streams.

Comment
Eric5h5
Bunny83

People who like this

2 Show 0 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Unity Answers is in Read-Only mode

Unity Answers content will be migrated to a new Community platform and we are aiming to launch a public beta by June 9. Please note, Unity Answers is now in read-only so we can prepare for the final data migration.

For more information and updates, please read our full announcement thread in the Unity Forum.

Follow this Question

Answers Answers and Comments

17 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Combine the meshes of primitives so that they share the same material instance? 0 Answers

change color of the selected triangles inside human chest 1 Answer

Vertex-colored mesh blends one texture blurry 1 Answer

How to get the colors of the vertices in a mesh? [or average color of a triangle] 1 Answer

Adjust mesh vertex colors based on distance 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges