Fellow game developers, @ilan, @melonZgz, @Informatix, @andymc, I raise your attention to this thread. 
Inspired by the game "No Man's Sky", where an entire Universe of fully populated galaxies is procedurally generated, I challenged myself to acheive a similar result, at least mathematically.
Using B4J, I quickly drafted what I want to turn into a B4X library one day.
An entire universe is generated, based on a given number (using RndSeed).
Changing this number generates an entirely new universe.
Below two examples. "Matrix" and "World".
The Matrix example shows how things work under the hood.
The red squares are objects in the rendered the universe "slice" (of customizable size) that's available for the game engine/logic/cycle.
The green circle represents the center of the universe (0, 0)
The blue square represents the user's viewport (a.k.a. what the player sees).
More details on post #5.
The World example, shows how things could look like in an actual game.
More on No Man's Sky procedural generation algorithms:
https://archives.nucl.ai/recording/building-a-galaxy-procedural-generation-in-no-mans-sky/
Source code available on request.
Inspired by the game "No Man's Sky", where an entire Universe of fully populated galaxies is procedurally generated, I challenged myself to acheive a similar result, at least mathematically.
The main feature of No Man's Sky is that its virtual universe, including the stars, planets, lifeforms, ecosystems, and the behaviour of the space-bound factions, is created through procedural generation using deterministic algorithms and random number generators. A single seed number is used to create these features via mathematical computation, thus eliminating the need to create each of these features by hand. This enables the game to have a massively open nature: Hello Games has estimated that with their 64-bit seed number, their virtual universe includes over 18 quintillion planets.
Using B4J, I quickly drafted what I want to turn into a B4X library one day.
An entire universe is generated, based on a given number (using RndSeed).
Changing this number generates an entirely new universe.
Below two examples. "Matrix" and "World".
The Matrix example shows how things work under the hood.
The red squares are objects in the rendered the universe "slice" (of customizable size) that's available for the game engine/logic/cycle.
The green circle represents the center of the universe (0, 0)
The blue square represents the user's viewport (a.k.a. what the player sees).
More details on post #5.
The World example, shows how things could look like in an actual game.
More on No Man's Sky procedural generation algorithms:
https://archives.nucl.ai/recording/building-a-galaxy-procedural-generation-in-no-mans-sky/
Source code available on request.
Attachments
Last edited: