1. Starship EVO
  2. News

Starship EVO News

[New build - DEFAULT] 22w21a: Terrain Improvements

A follow-up on the terrain build.
Both performance and look have been greatly improved.

New Features:
  • Terrain computation is much faster (from 30ms jobs to 3-4 ms)
  • Job scheduling is also smarter. It will be noticeable when flying near terrain.
  • Terrain loading is also optimized, for reduced FPS impact when moving near terrain.
  • New textures added for rock, ground and ore.
  • The new shader uses separate color gradient to prepare for a wider range of asteroids look / biome (for upcoming planet)
  • Terrain will tesselate up close: the terrain will loom much higher resolution. It helps massively especially for rocks.
  • Iron ore vein are being spawned.
  • Terrain shadow added


Known issues:
  • A lot of shadow artifact when new LOD are being loaded.
  • A few issues with the border between different LOD. The current tech is not working well with tesselation, so it will be changed.


Thanks for playing!

[New build - EXPERIMENTAL] 22w19a: New Terrain and Asteroids

The asteroid technology has been completely overhauled thanks a brand new planetary terrain technology.
This terrain tech will be extended to Space Habitat and planets in upcoming updates.

It is a massive update as so many tech behind the scene has to be implemented or improved to deal with the amount of asteroids drawn.
Beside the new features the new terrain/asteroids use a different approach: it is way more generic and also leverage fully on other tech instead of being completely bespoke.
It was quite tricky to pull off as it stresses and push to the limit so many area of the game technology which had to be improved.
In the end it is a great thing as this will benefit other sections of the game beside terrain!

=> Please note that the system size has been reduced, so any player entities will unfortunately have to be repositioned if necessary.

[previewyoutube][/previewyoutube]

New Terrain Technology:
  • Feature LOD: as you move closer finer detailed terrain patches will fade-in.
  • Terrain deformation: You can deform the terrain with weapons (for now, a proper mining feature will be introduced later)
  • Fully integrated with the existing brick entity rendering technology, which means GPU culling and minimum CPU impact.
  • Fully integrated with the existing physics technology, can be multi-thread for minimum CPU impact.
  • Texture and terrain shape are very much wip and will be improved in a later update.
  • Still a bit laggy if you zoom in fast onto terrain. It was already heavily optimized but still needs more work.


Asteroid Technology:
  • Asteroids are now visible from much further away, the transition between sprite and actual geometry being much smoother and believable.
  • Flying close the asteroid impact FPS much less compared to before (computations are multi-threaded)
  • A few much larger asteroid are being spawned (several km wide)
  • Generic asteroids (the smaller one, which are from a set of precomputed) also have a two levels LOD (on top of the builtin terrain LODs)
  • Current asteroid are gray rock but will be more varied in the future, and the icy ones will also come back.


Other Improvements:
  • Culling data was optimized, resulting in less memory allocated on the GPU (saving 100mb ++) and less hiccup
  • Culling data transfer to GPU improved, resulting in less hiccup during ship loading or warping.
  • Transform data transfer to GPU was optimized, with expensive TRS matrix computations done on a Compute Shader, which reduce CPU load
  • World physics query was also improved, which reduce CPU load when many entity are scattered through the world.
  • Particle Data CPU cost improved.


Next up, proper mining!

Mining and new Planetary Technology preview

Let's dig into the work done of the upcoming terrain technology!

The new terrain will:
  • unify asteroids, space habitat and planets under the same tech
  • be fully deformable, which means mining and terrain sculpting to make ground bases.
  • be integrated into the brick entity rendering system for better performance (GPU culling and batching for the tech savvy)
  • be integrated to the collision system too, for better performance.

At first this new tech will replace the current asteroids, introducing mining. Then a bit later it will replace the current space habitats terrain, while planets will take a bit longer to be introduced as they require more work to generate good looking and varied terrain.

New Asteroids:
The new asteroids will be more varied and will features several ore to be mined.
Some larger big asteroids are also spawn on top of the usual field of asteroids.

Here is a preview of mining (just terrain deforming for now, I will add vfx and better mining experience).
I havent spent much time on the look for things for now and have instead focused on the technology, so no worry it will look much better!
[previewyoutube][/previewyoutube] .

The technology uses an octree: an asteroid (and later a planet or habitat) first render a single chunk of geometry at a low resolution. Once the player gets closer that chunks gets subdivided into 8 smaller chunks of half the size. This continue as the player gets closer up until the minimum size of 1m per voxel has been reached.
Several challenges arise, like how to stich the gap between the geometry of two chunks at a different resolutions. You also needs to deal with the transition and blend between the geometry of the two resolutions when a node gets subdivided.

You can see the whole thing in action here. Please not how the geometry gets subdivided as you get closer:
[previewyoutube][/previewyoutube]

Tech wise it has been very challenging as several systems are now dealing with tens of thousands entities rather than a few thousands like before. It is a good news for the long term as it will also improve performance overall and allow ships with many many children entities / doors to run better.


Stay tuned, and thanks for supporting the game!
Francois

[New build - DEFAULT] 22w14a: Brick Entity Rendering Distance

Brick Entities can now render very far away.
This means that your very large ship can be visible from a greater distance (almost infinite).
A lot of improvement to the rendering tech where done to not impact negatively performance, so please report any regression of the graphic side!

Most importantly it opens to road to replace the current space habitat with brick entities which will yield massive performance gains,
make the code base simpler and add more variety. Stay tuned!

A word on decals: decals wont render further than 1000km away (which is quite far away).
But there is still some clipping issues to be fixed, especially with large stretched and flat decals.

Thanks for playing!

[New build - DEFAULT] 22w12a: The Fuel Saga #4: A New Harvest

A new fuel harvesting gameplay mechanic has been added.
Gas clouds will spawn close to the sun and are harvestable by the player for refuel.
To do do link (with pipes of course) a Fuel Scoop to a tank and fly inside the gas cloud.

Gas Cloud Feature:
  • You need to get close to the sun to find them.
  • Expand or retract depending on a much fuel is stored inside the cloud.
  • Built using the latest particle system technology.
  • Will be visible far away through a LOD system.
  • Largest cloud can be selected as tracking target, so you can check how much fuel is left.


Fuel Scoop:
  • Can be set to harvest or Expel in case you need to dump fuel.
  • In case of expel a new gas cloud will be created if necessary.
  • Can be toggled On or Off.
  • It has three signal events for all your logic needs : [Is harvesting], [Is Expelling] and [Is Inside Gas Cloud]
  • Has a harvest and expel particle effect.
  • All built using DOTS technology, so it should be super fast!


Other features:
  • HUD Fuel fuel widget has been improved.


[previewyoutube][/previewyoutube]

WIP:
- Fuel rate will likely require more tuning as it might be too slow.
- The gas clouds pops-in a bit abruptly. This will be fixed once the size of the world will be reduced (that will be necessary for other reasons too).

Community Feedback:
I want to conclude this post by asking you some feedback!
I am considering implementing multi-fuel.
The basic fuel will always be available at every star and compatible with both engine and reactor, but higher tier fuel would be more rare and would provide power / range bonus for either engine or reactor, requiring more complex design to be exploited fully.
A tank could only store one type of fuel at a time.
This could be interesting and add depth for advanced players, but I fear it might be too cumbersome.

Thanks a lot for playing!
Francois