Yesterday i read the question
and it gave me allot of thoughts about how i can save performance in my own project. There the camera is sourrounded by three types of simple objects. Pyramids, cubes and hedras based on some information. Every of this objects should be clickable, so i need an Mesh Collider, and have an color so it needs an Mesh renderer. Also every object right now has a 3Dimensional Label which is an additional Gameobject.
To save performance, right now i let the Labels in a certain distance dissapear. But i dont know if it is possible and just an utopic wish, i would show the objects the most of the time. And based on the information i use to instantiate them there could be arround, lets say 400000. If this is not possible, i would show as many objects, as fluently as possible.
Another things i did which i am not sure if it is good or not for the performance is. Becouse i need allot space to position them in the room, i increased the camera Far Clip Plane to 2000. Is this affecting the performance, or does it only deppeands how many objects are visible?
Another big performance hit, is the time i instantiate the objects. When i instantiate more then 2000 with a forloop, it got pretty laggy. So i thought about a system which kinda instantiate them equaly in a specific time range.
So i hope you can help me with this, and i wish i can create a stable application with this many Gameobjects. And here a picture so you can get a image from what i wanna do.
Edit, additional question:
I managed to set up different Cameras for different Details. But for my last Camera, which is for the Objects which are realy realy far away, i thought about something which simply draw single pixels on my screen.
I tried to using a GUITexture, where i draw every frame an updatet texture which has visible pixels based on the transform position of my object. But the constant pixel.apply() command made my whole Applikation extremly slow.
Is there a way to change a fullscreen Texture on Runtime without extremly performance loss?