I believe this is a practical, rather than an openGL question 
This is where I think a little math kicks in. If you find a function that correctly describes the maximum “height” of stars, given the distance of the centre, you have your bounds, and you can generate some random stars. A Gauss curve looks like a good start.
In my example, the XY plane is flat, and the Z coordinate is the height
for 100 stars, do the following:
{
x = random number between -1 and 1
y = random number between -1 and 1
if you want more stars in the centre, you could do x = x*x and y = y*y a couple times
d = distance off center = Math.sqrt(x*x + y*y)
z = random number between - Math.E^(-(d^2)) and + Math.E^(-(d^2))
}
now you have a set of stars, with coordinates between -1 and +1 for x,y and z. There will be a bias for the centre of the galaxy, and near the centre, the galaxy will be “thicker”. The only part I’m not sure how to do easily is the spirals. Perhaps you’ll need to venture into polar functions for that?
The other way would be to fire up your favorite 3D editor, and manually place as many vertices as you would like stars in your galaxy. Since you place them manually, you can make sure there are more vertices (=stars) in the middle, and the total of the galaxy gets this nice flying saucer-shaped … shape :
If you export it to Alias/Wavefront .obj format, you’ll find it’s a text file and it’s VERY easy to parse.