Cool, thanks Zeracles. It took a look at your code and I was wondering about matlab. Does it have enumeration functionality? If it does it would be nice to get rid of the magic numbers (if structuretype==2 etc...) because I found I kept forgetting which structure was which. Also an idle question: what does the . in front of a mathematical operator do (e.g. .* and .^)? And. Priorities. Which is more important: presenting your results at a seminar or generating awesome Star Control maps? Thought so

I've updated the
Star Viewer slightly. It expects a CSV file (with headings now), you can find two examples in the Particles directory: Stars.csv and Structure.csv. Structure.csv is the 589 stars Zeracles just posted. Enjoy, it's not that big a change visually but there is a lot of code which has been updated for robustness and elegance (more on that later).
I've also thrown in Goober just for the hell of it. And he looks, um, well like Goober striding through a field stars really. You can disable him by deleting or renaming Goober.DRG. He's an old character a friend modelled to test skinned animation and looks like this (with the home grid):
And here's an extract from the Readme.txt for those who wanted to know what the controls are. I think of them as Descent style but I suspect not many people remember Descent anymore.
Controls
--------
Esc Quit
C cycles through cameras. Only the last camera is controllable.
WASD for normal movement.
QE roll left and right.
Mouse for Pitch and Yaw.
I to invert/un-invert Pitch.
Space rise.
Right-mouse fall.
Left-mouse or left-shift can be held for turbo movement.
F3 toggles rendering.
F4 Editor Mode
-- The following only in editor mode --
N Toggle normals
L Toggle lines
V Toggle vertices
G Toggle home grid
F Toggle faces
[ Shorter normals
] Longer normals
O Larger verticies
P Smaller verticies
Config.txt
----------
Resolution = XXX. Any valid resolution in the form 640x480 or DESKTOP to use the desktops resolution.
Windowed = XXX. TRUE or FALSE.
AspectRatio = XXX. Any valid aspect ratio in the form 4:3.
Mode = XXX. DX_HAL for hardware, DX_REF for software, DX_SW if you have an alternate software renderer installed.
Particles = XXX. A CSV file containing points. File must have headings: X,Y and optionally: Z,R,G,B,Radius,Intensity.
example:
Resolution = 640x480
Windowed = TRUE
AspectRatio = 4:3
Mode = DX_REF
Particles = Particles/Stars.csv
And then on the
programming front I've been gearing up again. Thanks in part to things winding down at the office and also to the
Barbarian: Anvil of Death remix which is awesome music to code to. Make sure you have loud responsive speakers and that your neighbours live far away. Also
Auf Wiedersehen Monty: Nuclear Fallout Edit if you can handle the bass. I couldn't because my mouse starts sliding around my desk

. I'm not really pimping remix kwed it's just that I haven't abused my sound system in ages so I'm happy.
Anyway, what I've actually done, code wise, is cleaned up my file routines. Some of them have been untouched since 2002 and it was time they moved from C to C++. Incidentally the oldest file in this project is from 1998 and handles window creation (in Windows
TM). I was an idiot back then, it's awful. I've also made a lot of progress on the GUI side, particularly with presenting text. It would have gone faster if I'd been a little less ambitious but now it'll allow for some wicked in game effects. It also, ah..., became a semantically sensitive code editor. Oops, that wasn't in the original design. The internal representation and interaction between 3D objects has also been overhauled and is much more useable now.
So things are still ticking over but I'm still in the world of frameworks. This good because it's shared with that other SC project; but bad because I don't have anything playable to show yet. Heh, I'm enjoying this

.