I was a bit worried to only be able to see Orion but if I make stars bigger I can spot other constellations:
Regarding numeric approximations and placing stars at large distances, I failed to use homogeneous coordinates to do so.
I mean instead of entering a star as a point (r*cos(de)*cos(ra), r*cos(de)*sin(ra), r*sin(de), 1) I thought entering it as (cos(de)*cos(ra), cos(de)*sin(ra), sin(de), 1/r) and go to the limit 1/r -> 0 would do.
I also used this as a projection matrix (here I'll show only the z, w part):
-1 -1
-1 1
because it turns a point at z=-1, w=0 (point infinitely far in the -z direction) to z=1,w=1, and a point at z=0, w=1 to z=-1,w=1.
I used
this reference to get how projection matrices and Normalized Device Coordinates work.
I thought this would work, but not quite. I still get the expected result for r up to 1e6 or something. But if use 1/r = 0 I don't see any star anymore.
If you understand why, please tell.
http://grondilu.github.io/oolite/test-coriolis.html
EDIT: Oh I got it. The plane z=1 in the NDC is actually not drawn. So I must put stars
just before it, for instance with this projection matrix:
-0.9999 -1
-1 1
And then I see the stars:
With this projection matrix I can actually set up an infinite frustrum :
Then I'll decide which object to draw and with how precise a model from the javascript, not the shaders.