P0_A9
P0-A9: Part 858: Solar System Mechanics
I have mostly finished the day/night system.
It was quite difficult, and I had to fix some tricky bugs, but I am extremely pleased with how it turned out.
All planets now have a gradual day/night cycle, that varies for each planet.
This day length is synced with the planet surface, so that when the player lands, the sun position and light settings are all consistent.
It is also synced with the server time, so it is consistent between runs as well.
This adds a lot of realism to the project.
I have also made some improvements to the surface to space transition by improving the light transitions from “space” to “surface” as the user passes through the atmosphere.









P0-A9: Part 857: Solar System Mechanics, Improvements
I have made some more improvements to the project, such as adding other network players to the ship radar systems, so that they can be intercepted, etc.
The next major goal is to add a day/night cycle to the planets in the solar system. I already have a day/night cycle on the planet surface itself, but the sun position and rotation is static in space.
I need to not only add the day/night cycle, but I need to make sure that it syncs with the planetside day/night cycle, so that landing on the day side and night side is consistent at all time.
I have also added realistic longitude and lattitude values for all of the planets, in the future, I intend to use this to add realistic region to be used for weather, climate, etc.

P0-A9: Part 856: Debugging, Improvements
I have made some optimisations to the graphics and performance of the simulation.
I have discovered that the grass system is responsible for a significant performance impact. In some cases, turning off the grass doubled the frame rate.
To solve this, I have added a new graphics options gui which allows users to specify the density and view distance of the grass. In this way, users can adjust the detail of the grass to match their system’s capabilities.
In future, of course, I will need to add far more options for customisation.







P0-A9: Part 854: Orbital Mechanics, Multiplayer
The player intercept code is now basically working.
Players can join up regardless of distance and velocity, and the system stores the position information correctly over the server.
There are still some additions and tests that I want to run on this, but it basically works.
Orbital mechanics also works for all players, however the position and velocity values are not properly synced, since I am using update() rather than fixedupdate(), so different framerates will effectively change the speeds that ships are moving at.
I will eventually switch to using fixedupdate, but I am having a few issues with this at the moment.

P0-A9: Part 853: Orbital Mechanics, Multiplayer
The next goal with the project is to add the ability for network players to intercept each other in the world.
This is quite difficult, since there are, first of all, vast distances and velocities involved, and second of all, there is a complex floating origin system that shifts the world according to player movement.
I want players to be able to move to the location of another player in the world, as well as follow that player even if they are moving at high speed.
The initial testing is going well, but this is a complex issue.








P0-A9: Part 852: Orbital Mechanics
I have improved upon the orbital mechanics concept, and I now have a system that is quite functional.
Large ships can now be pulled under the force of gravity, and I have also added a gui that allows players to enter various types of orbit, including circular and geostationary.
This system also works persistently, so the players position is saved correctly to the server as they orbit.
I have also tested the orbit system on other planets (at long distances from the origin) and it works.
I still have some work to do with this system, but it is close to being working.






P0-A9: Part 851: Orbital Mechanics
The next part of the project is to add realistic (or at least, semi-realistic) orbital mechanics so that capital ships can not only experience gravity, but also enter orbit around planets, singularities, and other stellar phenomena.
Currently, shuttles and smaller ships (and players) use rigidbody physics to experience gravity, however larger capital ships (Ships with walkable interiors) don’t.
The problem is that the ship needs to remain in position at the origin, so, to orbit a planet, the world needs to move around the ship, not the other way around.
I have come up with a concept for this, and so far, it seems to work well.
With no frame of reference, it is actually impossible to tell that it is the planet that is moving, not the ship.




P0-A9: Part 850: Multiplayer
I have finished the internal messaging system in the project.
It is quite simplistic, but works well.
I have also made several more improvements to the GUI’s and user input, and I have added various tags that the user can user to quickly add their current position and zone to the messages that they are sending, to make it easier to find other players.
The next goal in the project is to add the ability for the players ship to orbit planets in a realisitic manner.






