Display ~100,000 "points" without destroying performance

You add a SINGLE Instanced static mesh component, then your loop should run an Add instance on it over and over. What you’re doing is essentially the same as 100,000 individual static meshes, since you’re generating a new instanced mesh component before making the instance!

An ISMC is like a mesh template that you can produce transformed copies of in a single draw call. You want ONE ISMC, many instances.

But since each ISMC is a single draw call, rendering all the points as one MIGHT be less-than-optimal since off-screen points can’t be culled. Adding 36 draw calls is a pretty minor performance hit, so I suggested doing a single ISMC for each 10° interval of hits, but I’d proof-of-concept it using a single ISMC pushing all the instances before messing with that setup.

As for the visual impact, use a single VERY small cube as the mesh; looks like you’re using a large mesh for what should be a point. I’d also go ahead and make a simple unlit green material to use for debugging; later on we can work out a distance-based coloration but it’s better to use a simple material rather than the WorldGrid default which is actually quite a conplex material and would cost a lot to render across 800,000 verts…