Making a 3D space shooter, how would i go about it?

So I am new to unreal engine and I want to make a game like star citizen/now mans sky how would I go about creating this? Would I need to create my own engine? What coding language would I need to use procedural generation?

I’ve not ventured there yet, but unrealengine 4 has procedural capabilities:

https://docs.unrealengine.com/latest/INT/Search/index.html?q=procedural&x=0&y=0

So NMS at least can be done already, but not without a great deal of modification, and I’m definitely not sure BP’s could do all of it, prob not,but on that I would defer to the coding experts around here.

The rest is just time and talent, and of course coding expertise, blah blah.

Bioware used unrealengine 3 to make their Mass effect 3 game, and that’s an excellent example of what an amazing team could do, but I’m sure not the only excellent example.

TIme and talent could do anything, and what Unreal on its own may be lacking, a ‘coder’ of a great deal of knowledge could do would make anything in the realm of computer design and current hardware, possible.

The answer therefore is a resounding YES.

GL :wink:
nl
\

Procedural generation is doable in blueprints for sure. Its actuslly the multiplayer thats a big blocker for making these sorts of games (floating point precision and the difficulty of setting up level streaming for an MMO.

Thereare many ways to “fake” a similar style, but doing it straight up 1,000,000,000,000,000 cubic KM of space like starcitizen does is a no go.

Hello,
I don’t pretend to bring answers, but, as I ventured along this path a few years ago, here are some caveats I encountered :

  • first, will you need seemless space to ground transitions or similar features ? if yes, it’s very difficult to effectively get this done. It’s simpler to resort to some narrativ trick to separate those area. Generating a procedural planet is not a problem anymore (see spherical ROAM or cube-mapped quadtrees. There’s even the marketplace for this), but the problem is the precision of float => if flying from space to ground, you’ll travel 100k km, and you’ll need a mm precision. float can’t do this directly. You could use some matrix trick (to internally handled objects in the coordinate system of the observer), but it won’t be enough. You’ll need more tricks. In the end, if it’s not a strong gameplay requirement, avoid this… If your experience is about stunning visuals of exoplanet exploration, it may be a requirement, but if it’s about mass effect-like exploration, you don’t need it!
  • When flying in space or on planet ground: the scale is critical to give the impression of the deepness of space (see the X series for what I consider a good experience about this). LOD will be your friend, as well as level streaming in UE4 (which is brillant and powerfull). For big objects, spawning over large area, you will need some coded lod system, to use static meshes near, instanced mesh far, and imposter very far. For far away object, not reachable in standard time with “local-space thrusters”, make it background.
  • If you need to fly real time from planet to planet (for example to reach this planet-I-see-in-the-background), using some FasterThanLight travel, you’ll need some “scale compression”, like in Freelancer for example => difficult. Again, I would suggest not to try to represent the whole universe using lod for distant stars : separate world by areas (for exemple : 1 persistent level for a stellar system), and load region on demand, with some specific transition for long distance travel, using gates, or some transitional effect like in Freelancer (like if travelling in a hyperspace dimension, with its own constraints, not really affected by the events in the standard space, they are used for background during those transitions). Distances between stars is an average of 5 Lightyears…
  • The voxel approach : some titles proposed a very convincing approach that allow procedural generation for endless space experience, like in minecraft but without the cubic style : the voxel representation of the world (see Space Engineers game for example). This technology is promising but it’s not part of unreal => huge dev ahead… You can take a look at the Voxel Farm suit, for example. It can be integrated in unreal, and some title use it (Landmark for example, not relying on UE4).

Finally, keep in mind that generating interesting content procedurally is very difficult : this is the most critical part on a gameplay point of view. Procedural generation of geometry is really effective. When it comes about generating gameplay element procedurally, it become a difficulty. You may take advantage of some tools like Dungeon architect (see on this forum).

Regards,