I might be barking up the wrong tree here, but I see two things.
-
How come you’re only use ‘element index 0’ if each character has multiple materials? Don’t you have to change the index to access each slot?
-
I notice you have multiple characters, but only one place to store corresponding materials in the game instance. Surely you should have an array of character material settings in the game instance.
-
( The other second thing ). The game instance will be no good if they quit the game and come back later. You’ll need to use the save game for that. Just mentioning it…