Help getting correct static instance mesh component from an Array?

I’m trying to solve the exact same problem and this is the only discussion I’ve found on this topic! I don’t really understand what you mean though, so clarification would be much appreciated.

In short, I’ve created a grid by adding instances of an instanced static mesh. I then save the vector and any other information I need in an array. When pressing the tile, I get the instance index which I used to grab the correct information from the array I created. From there I can now map/access everything I need and it’s all good.

However, I want to use two different materials, let’s say odd and even tiles. I’ve created 2 instanced static meshes to handle this and the grid is created fine. However, the odd and even tiles are indexed separately, ie first tile is 0, second also 0, third is 1, fourth also 1. This instance index is the only information I seem to have when clicking a tile, and unfortunately it’s not enough to determine which item it is in my array.

Your are saying to create a collision mesh. Can you explain what that means exactly? Keeping in mind I’m very new to this. I assume you mean that after adding each instance, I use the transform data and whatnot to create some sort of collision mesh which overlaps the individual tile I just created. I’m doing this in blueprints, and the only thing I could add which sounded similar was a collision box, but that takes an actor. Or are you saying to just spawn a mesh of the same type as my instanced mesh and I can then make it invisible (but still have collision)?

If you can just explain this last step in some more detail, preferably with the blueprint node I’m supposed to use, that would be fantastic. Also, if I spawn a “collision mesh” for every tile, would that impact performance? Or would it have an insignificant impact because it’s not actually visible/drawn? This is for mobile.

Thank you!