At one point it used triangles for the large splats, and still compute shaders for the small ones due to quad overdraw. I'm not sure if the final version stuck with that or went all compute, but quad complexity is also why nanite does compute shaders for small triangles and traditional rasterization for the larger ones.
But it's a bit difficult to find the exact reason since profilers won't really tell you a concrete bottleneck when drawing vast amounts of tiny tris.
Media Molecule (LittleBigPlanet) spent over 8 years creating Dreams, which would never have happened without Sony's funding, but the tragedy was this brilliant high-end authoring tool being forced onto a games console interface and controller. Sadly, most of my peers in the high-end 2D, 3D, compositing and animation tools design community totally missed learning from Dreams. Even now, there are still innovative UX approaches in Dreams that could be adapted into tools like Blender.
Things like triangle splatting are useful if you have to integrate into an engine that only support triangles. But with modern graphics pipelines, you can implement Gaussians quite efficiently, including newer techniques like Gaussian point splatting that can scale up seamlessly to enormous scenes:
* Video: https://www.youtube.com/watch?v=2AWv_nIfp-U
* Paper: https://jorisar.nl/gaussian_point_splatting/gaussian_point_s...
To be clear, I'm not proficient in it's use, just watched a few videos about it's theory when it was initially announced
But again, I've really only super superficial understanding of this, I just understood it like that back then
runs on a phone: https://storage.googleapis.com/jax3d-public/projects/mobilen...
[0] https://trianglesplatting.github.io/