Рендереры не являются объектами GameObject.Они являются Компонентами.
GameObject - это контейнеры Компонентов - один GameObject содержит много Компонентов.
Эта строка недопустима (GameObjects не являются Компонентами!):
//Invalid!
var renderer = GetComponent<GameObject>();
Выне должен устанавливать свойство gameObject
компонента!Это не магически присоединит Компонент к новой игре. Объект:
//Don't do this!!
renderer.gameObject = someGameObject
Вместо:
Renderer rend = someGameObject.AddComponent<Mesh renderer>();