MEL "Space City and Satellites"
Mel Matrix and UIs
February 18th, 2016
Project Overview
This is a project from class VSFX 705 - Programming Concept for VSFX.
In this project,I created two an UI window with two tabs. First one is for satellites setting, and other one is for space city setting.
Inspiration
Humans are now spread across all corners of the globe, but what’s the next step? We could soon have huge habitats floating around the planet by the end of the century.
About 6,600 satellites have been launched. The latest estimates are that 3,600 remain in orbit. Of those, about 1,000 are operational; the rest have lived out their useful lives and are part of the space debris. Approximately 500 operational satellites are in low-Earth orbit, 50 are in medium-Earth orbit (at 20,000 km), the rest are in geostationary orbit (at 36,000 km).
Final Render Images
Earth and Satellites Animation
User Interface
UI For Earth and Satellites
UI For SpaceCity
Earth and Satellites Break Down
Static UI
For the satellite setting. In this tab, you can set the satellites number, the size of satellites and the type of the satellites. I made three kinds of satellites for you to choose. Also, you can set the size and type of the orbits. In this tab, satellites number is using int slider, satellites scale and orbit scale are using float sliders, satellites type is using a radio button and orbit type is using options menu. After setting this up, you can click the create button to create satellites base on the orbit. also, you can delete all objects you created and reset the value of settings.
For spacecity setting, you can pre-set the values of space city, then create it. Because the space city has multiple parts, for flexibility, I separated each parts in control setting so that you can change expediently. It has 5 parts: main body buildings, ring buildings, bridge buildings, top antennas, ring antennas.
Dynamic UI
For the satellite setting. after you create the objects. you can drag the "Satellites Scale" slider to change satellites' size. It will dynamic changing size.
For spacecity setting, you can change the size of buildings and antennas in each parts by changing the "Scale Size" sliders.
Source Code for UI
Main Procedure
Dynamic Control
Reset Button
Source Code for Animation
Earth and Satellites Break Down
For the earth and satellites, I built some geometries in Maya by my own. And then apply the code onto the surface of object.
I created a sphere to be the earth.
The sphere outside earth is to simulate orbits of satellites. And I turned the visibility off, so that it doesn't show up when it rendered.
Then I created three kinds of simple satellite models. And made simple texture on those satellites.
The code for satellites. Duplicated the satellites onto the orbits surface.
Space City Break Down
For the space city, I created 2 geometries in Maya by my own.
The basic sharp of the space city
The antenna object
The code for space city building.
The code for antennas round the space city.
Conclusion
This is my first time to use Mel script in Maya. It is a very interesting experience that I can create some complicated scene in procedural way. Before I have learned Mel, usually I place some model objects on something's surface by my own. But now, I can easily do it using Mel scripts. That is very powerful tool for no only animators, but any other workers who relative Maya. I am look forward to next project, and willing to learn more about Mel.