[dev update] Orbits Panel (WIP) – 3D Space Units Removal [DONE] – Action Menu Removal [DONE]

Status of the work for this 0.6.16 version:

  • fixing the memory leak in the creation of a 3D scene, due to bad code with the generation of satellites.
  • [WIP] adding a full and definitive implementation of Low and Geosynchronous Orbits, including changes in 3D and user’s interface.
  • [WIP] removing the 3D space units and replacing them by 2D counterparts (icons) + updating the Unified Management Interface to permit the player to see the list of its space units and to be able to set mission orders directly from it.
  • adding assets: 2D pictures, icons and new infrastructures.
  • 3D:
    • [WIP => DONE] all the code to load / generate 3D space units in the main view is removed.
    • [New: DONE] complete calculation of 3D coordinates of space units (even if there are no more 3D objects) when those are on low and geosynchronous orbits. Before there were given through the 3D objects presents in the main view, but now the positions are extrapolated by calculating their position on orbit (variable in low orbit, fixed and depending of the locked range of latitudes in geosynchronous orbit).
  • FARC Universe Generator (FUG):
    • [New: DONE] remove the radius switch for geosynchronous orbits. It is irrelevant by the nature of the formula used.
    • [New: DONE] low orbit calculations are now totally independent from geosynchronous orbit calculations. It uses now a simple proportional calculation.
    • [New: DONE] when an orbital object has a rotation period of zero (no rotation / like tidally locked), no geosynchronous orbit can exists, then no calculations are made for it. Such orbital object has only a low orbit.
    • [New: DONE] fix: prevent the case when a geosynchronous orbit is lower than the low orbit. No geosynchronous orbit exists in this case.
    • [New: DONE] fix: prevent a diameter of zero for asteroids.
    • [New: DONE] fix: mass calculation; prevent a zero value (especially for asteroids) to be returned.
    • [New: DONE] fix: escape velocity calculation; prevent a zero value to be returned.
    • [New: DONE] calculate the deltaV for low and geosynchronous orbits.
  • Interface / Action Menu:
    • [WIP => DONE] this element of interface is completely removed since it isn’t really satisfying. Its functions are being replaced by the the Planetary System List and a few OpenGL HUD buttons.
  • ┬áMissions / Colonization:
    • [WIP => DONE] change how the CMC_baseDistance is determined, since there is no more 3D presence of space units.
    • [WIP => DONE] take into account if the space unit(s) are in low or geosynchronous orbits.
  • Universe:
    • [WIP => DONE] overhaul of the data to list the space units in orbit, for each orbital object. Now it support fully the low and geosynchronous orbits, and the maximum number of space units in an orbit is no more limited (dynamic array).
    • [WIP => DONE] all the low orbit data are recalculated and updated with correct values (see FUG additions).
    • [New: DONE] satellite ‘satEpsilonEri8-5’ is removed, because it is unusable for exploration / colonization purpose in the game.
    • [New: DONE] add two data, each for one each type of orbit, to indicate the deltaV used at these orbits.

All the calculations and changes in the FUG above led to recalculations and mass changes in the XML file of the Universe to adjust each orbital object already in the game.

Finally I have been able to fully compile FARC, since the removal of the Action Menu and the 3D space units required a fair amount of work.
I have also a good amount fo bug after these changes, part of it because I need to complete data in the XML files.

Now I working completely on the interface, so on the Orbits and Planetary List panels (that will list all the orbital objects and the central star).