Getting triangles of a single gameobject (one prefab instance, not all)

Finally I’ve found a question that does not seem to be covered yet here! :slight_smile:

Here it is:
I want to do a custom lighting by changing colors of faces that point to my light source. This is going to be some sort of “prebaked” lighting but without the overhead of additional textures and without some limitations of lightmapping.

In order to do this I determine the gameobjects close to the lightsource. Out of those objects I want to get the faces that point toward the lightsource.

My problem is that I can get the mesh, vertices, normals, etc. but only for all instances of the prefab (as it is shared). There does not seem to be a way to get for example only the triangles of a given (single) game object. Whenever I call gameObject.GetComponent().mesh.vertices I get the entire list of vertices (probably of all existing instances of my static prefab).

What I am looking for would be some sort of: gameobject.GetMeYourTriangleIndicesButNotThoseOfYourSiblingInstances().

After hours of research I start running out of ideas. Any help on this would be highly welcome!!!

as i understood you correct, you need

note, that submeshes are separated only in triangles, vertices are shared for all submeshes. so vertex used in one submesh can be used in another.