Instancing

Hi all,

I need to use Unity, would be very great if Unity reconizes instances to optimize scene file sizes and system resources.

Unity does??

Thanks.

By instancing, you mean “instancing of draw calls to the graphics card”, or something else?

If you refer to “instancing” as in “all those characters are the same and should use the same texture, same animations, same mesh etc.”, then yes, Unity does support instancing. Basically all assets (textures, meshes, animations, sounds, …) are shared, unless you make explicit duplications yourself.

Yes, specifically if the scene has several objects that share vertex positions and/or UV coordinates, does Unity detect it?

Yes, if several objects use the same mesh, then, well, they use the same mesh.

and what happens if there are several meshes that have the same vertex positions but different UV coordinates, Will Unity share the vertex positions, or will treat each mesh individually?

They will use separate vertex position arrays. That’s how the data is supplied for graphics hardware anyway.

But then again, meshes usually is not the most memory intensive data.

In the data file of the game, if the vertex position arrays are actually the same, then they are very likely to compress very well. I.e. further copies of the same data are likely to compress to almost no space. Compression is done by Unity for web player data files, and for standalone games is likely done by whatever you make the game installer with.

Ok, thanks!