I’m a beginner in OpenGL and have choosen a 2 min to 5 min documentary about the evolution of the universe/life and nature against science as my semester project. I’m looking forward for help, as i’m facing difficulty in giving realistic effects to planets and galaxies. Anyone who can help me in this regard?
You mean, to do something like Celestia ? Be sure to check the guided tour to have an overview of possibilities.
Do you have to code it by yourself ? Do you have experience in programming (and C programming) ?
The documentary is based on proved and yet to prove theories and starts off with a black background and then I show a galaxy (like the galaxy M81) then I zoom in to our solar system (like the celestia ones with realistic effects), where Mars looks green and blue from far and Earth is brown and dry. An asteroid hits and life on Mars ends and I'm planning to show a DNA translating from Mars to Earth. Now both look vice versa from far. I zoom onto Earth and show a grass field with a river flowing by its side and if possible I'll show a tribal man. Following which I'll show construction of one suspension bridge and then as years go by, creepers grow all over it, cracks develop and it breaks down. Then we have a catastrophic fire sparked and it burns the bridge. After 15000+ years the Ice Age starts and I'll simulate that scene with the last remains of the bridge surrounded by ice bergs. After 10 million years I'll have it submerged in water. After 1 billion years when Sun has expanded and growing big towards Earth, the only surviving life on Earth is the Family of Ants and Insects, as they have the capability to adapt to extreme environments. Now its 5 billion years and Earth vaporizes as the dying Sun expands and engulfs Mercury and Venus. I need to show all these in motion one after the other, although I have the opengl functions with me, how to call the respective functions and where, is the problem. I need to code it in C which I'm well versed in. Even if I can get to know how to import images and wrap them or parts of the required code that i can incorporate that would be useful.
And you need the documentary to be interactive? If not use an authoring program like blender, maya, XSI o 3d max and create a video.
Blender is free.
This is overkill to program from scratch. As suggested above, make an animation with your favorite 3D tool, and render it as a video. This way you might get it done in that time with decent quality, assuming you have not much knowledge about how to use those tools atm.
If your instructor had this great idea that you should learn OpenGL by creating such an animation, he’s an idiot and doesn’t know what he is talking about. I have seen demos from teams of 3 people, with no prior OpenGL experience, that have worked one semester hard on it and they maybe got 1/10th to work of what you described.
I’d go one step further and say that this is impossible to implement in a reasonable timeframe (e.g. a semester), if you opt to use a 3d graphics API or engine.
I would actually suggest that you avoid 3d graphics completely. Find high quality images, illustrations and renderings of the subject matter. Use the homepage of NASA, google, cgsociety.org and any other method you can think to gather material. Then use a video editing program to create a storyboard, overlaying and translating these pictures against each other (this is how 50% of documentaries are done).
IMHO, this is the only way to implement this, if you are not a 3d artist. If you are a 3d artist, use a 3d modelling program and render your documentary.
In terms of effort, using 2d images is 1x, using 3d modelling is 100x and rendering through a 3d API is 10000x. I’m not kidding.
Thanks to all for that piece of advice else I’d be left with doing nothing at the last. One last thing I’d like to know is, whether the above mentioned graphics packages use opengl functions, (my google search’s answer is yes for Maya), if so which would be the best package to go in for this kind of a documentary and approx. what could be the time period to complete it?