Search Unity

Games Planet Outpost - Universe Sandbox

Discussion in 'Projects In Progress' started by jamesnw, Oct 27, 2022.

  1. jamesnw

    jamesnw

    Joined:
    Mar 23, 2013
    Posts:
    51
    Game Title: Planet Outpost
    Type: 4X style 3D game.
    Summary: You'll be an android exploring space and establishing an outpost base, which you can move to other planets as required. You'll have to protect it from a wave of nanites (small robots), which can take different forms. The environment will be a universe simulation sandbox, with pseudo realistic physics, and will eventually be blockchain game focused as a P2E game (play to earn tokens in the game).
    Video Progress: https://www.youtube.com/channel/UC39qcpnrWnh9qvBPzwvO-Kg
    Current features: Basic voxel engine, not threaded.
    To do next: Use Burst and jobs to rebuild the engine. (WIP)

    Introduction
    Hi everyone, I've been working over the last few years, on and off, to develop a universe simulator much like the typical sandbox-style games. You remember those right? ;)



    In the beginning I created a very fast geosphere mesh generator (see videos) and was able to generate a planet (low quality as a test).









    But a mesh wasn't good enough as I wanted destructible terrain, so I decided to create a voxel engine. Yes, I know, seems everyone and their grandmother wants to make their own voxel engine for a simulation game these days, but wanting to and being able to do are two different things, right? :D I think I can pull this off, though due to life I had this on hiatus for a couple years (I think many people went on pause these last couple years lol). Now I'm back and just finished the voxel engine I started some time ago. Well, the basic parts of it anyhow. Here is a video introducing it, and some code explanations:



    I'm in the process of rebuilding it now for burst. As it is, single threaded (main thread), I can render about 1 million voxels in about 2-3 seconds, and voxel merging acts like a compression that greatly reduces space. So far it works beautifully, but in order to make a good sandbox-style game and have the planets large enough (not huge, just large enough) I think using Burst+Jobs will do the trick good enough. I did consider compute buffers, but the need to move data back to the CPU for what I need is a big hit, and not being able to keep it 100% GPU side for what I want means I'll try burst instead, also since it's an easier way to go for a prototype. I'm aiming for planet sizes of 100x100x100 up to 1000x1000x1000 compressed using an octree style system I made. I know doing a true sandbox style game at that scale will be a challenge - especially if I can get multiplayer networking in place. I'll continue to post updates here as I progress. :)
     
    Last edited: Oct 28, 2022
    CodeSmile likes this.
  2. jamesnw

    jamesnw

    Joined:
    Mar 23, 2013
    Posts:
    51
    Update: trying out a particle engine. Thinking of making it sandbox-style. So far I have particles with gravity and an octree 100% GPU side. ;)