What would be faster : Code (CSharp): object.GetComponent<Player>().hp; or: Code (CSharp): Player.SingletonPlayer._S.HP;
Speed? Speed isn't something I'd compare Singleton to GetComponent on. It's a matter of design rather than speed. Technically speaking, as long as SingeltonPlayer, and _S, were actual fields, it'd be faster because you're just accessing a field. Where as GetComponent needs to find the component on the object. But you could locally cache the GetComponent instance and have the same exact speed. Singleton has NOTHING to do with the speed of accessing something. And instead about enforcing a single instance of a class.
Which is faster, a submarine or a car? There is an answer, but the real question for picking between the vechiles is are you driving on land, or under the water? Choose the best tool for the problem at hand. Singletons and GetComponent both solve different jobs.