A snapshot from my day: me, hunched up on the floor, leaning against the wall of the 4th floor CCT lounge, tears streaming down my face, saying, "It's just a bitmap. I just want to map it to a square. THEY'RE EVEN THE SAME SIZE. It's just... it's a bitmap! That's all it is..."
Yes, real tears. I'm realized now that there must be a level of hell where people do nothing but OpenGL in C and Visual Studio 2005 with nothing but Google to help them. Telling quote of the day: nearing the very end, I ran into an interesting compiler error and realized that I'd replaced several periods with commas. I literally squealed with delight. "A syntax error! Something I can fix!" Needless to say, every other problem I ran into was environment-based.
The good part: I wasn't alone. waitingonhope and Elliot were there to comfort and assist me by turns, and as a result, I accomplished one of the most difficult programming feats I've ever done.
I sure wish I could say I programmed this solar system. Not even a chance. We were GIVEN that much code. So what I spent three full days on? Not the solar system. I spent that much time on the button panel to the left. And at least another three days on getting the planet zoom figured out.
So here's the basic deal: you get a nice solar system that you can zoom in and out of (currently it is zoomed a bit outish), which actually spins and rotates and does whatall a solar system is supposed to do. It's a bit primitive, sure, but hey, it's free!
And when you clicky on the buttons along the left edge, you get close-ups of the planets. Voila!
Mercury and Venus:
Earth and Mars (is it common to want Earth to be the outermost of the small planets? I don't know why, but I'm always switching these two and it seems to bug me on a primal level that Mars is further from the sun than we are):
Jupiter and Saturn, and yes, the wee white flecks you see are in fact moons, and no, we didn't include all of them:
Uranus and Neptune, who were the prettiest couple in Sailor Moon:
And Pluto. I still think it's a planet.
Also, there is a right-click menu with nifty options such as changing your viewing angle. You can also pick which planet you want from here, which is what I was originally doing before I finally got the buttons figured out:
Changing the viewing angle works a bit like zooming in and out, except it also deforms space. Slightly. In nifty ways. Here's a shot of Pluto from a viewing angle of 120 degrees:
As you can see, the other planets have gone... TO LUDICROUS SPEED!
Now, I would so love to let you have this program and run it on your own. And in fact, here's a link to the files. But the sadness is, I've tested this on three folks so far and none of them have been able to run it. I'm pretty sure you need glut libraries and all sorts of stuff to do so. (Note: I've also just been informed that I should build the project in Release mode. Guess what? I get errors when I do that. This in no way differs from anything experienced over the last three days.)
But at least there's pics.