logo80lv
Articlesclick_arrow
Research
Talentsclick_arrow
Events
Workshops
Aboutclick_arrow
profile_loginLogIn

An Upcoming Open-source Framework For Layer-Based Infinite Procgen

LayerProcGen is a framework for Unity and any C#-compatible engines for implementing layer-based procedural generation facilitating a structured way to organize generation processes and how they depend on each other.

According to Rune, Game Developer and procedural generation enthusiast, LayerProcGen is best described as a tool for providing a structured way to organize generation processes and how they depend on each other and doesn't include any procedural generation algorithms on its own.

Essentially, this framework makes it possible to build many different chunk-based procedural data layers with dependencies between each other. It automatically generates dependent on chunks when they are needed by chunks in other layers, or by top-level requirements.

You implement your own data layers, and you can use whichever generation techniques you want there, as long as they are suitable for generation in chunks. LayerProcGen can be used for 2D or 3D worlds, but 3D worlds can only extend infinitely in two dimensions, similar to Minecraft.

Image Credits: Runevision, LayerProcGen

Image Credits: Runevision, LayerProcGen

Image Credits: Runevision, LayerProcGen

While the infinity referred to is infinite for all intents and purposes, it's limited by the range of 32-bit integer numbers since generation will typically be based on integer-based world space coordinates.

Rune describes the central feature of LayerProcGen as supporting contextual generation while staying deterministic. Procedural operations can be performed across chunk boundaries, producing seamless results for context-based operations. This is possible by dividing the generation into multiple layers and keeping a strict separation between the input and output of each layer.

It should be noted that LayerProcGen is not a terrain generation tool, but it's an example of what the framework can be used for. Rune has used LayerProcGen in his own game called The Big Forest:

Although only tested in Unity, LayerProcGen is designed to run in any C#-compatible engine, since its core framework doesn't depend on any Unity assemblies or API.

LayerProcGen is scheduled to be released later this year. If you make any changes or improvements to the framework, you must share those for free with the community. However, the rest of the source code is not licensed, meaning you're free to make commercial projects that use LayerProcGen.

Check out the documentation here and follow Rune on X/Twitter, where he often shares WIPs and updates on LayerProcGen, and highly encourages other procedural generation enthusiasts to share their thoughts and suggestions on this project.

Don't forget to join our 80 Level Talent platform and our Telegram channel, follow us on InstagramTwitter, and LinkedIn, where we share breakdowns, the latest news, awesome artworks, and more. 

Save yourself endless time and technical hurdles in the material editor with this pack of Prop Master Materials for UE4!

Error
(2000-0001)

Join discussion

Comments 0

    You might also like

    Xbox Support Accidentally Reveals Oblivion Remaster's Release Date

    By Azura, by Azura, by Azura!

    Rumor: Possible Release Date for Grand Theft Auto 6 Revealed

    A video game store from Uruguay appears to have disclosed the launch date for the gaming industry's most anticipated title.

    Breaking: Unity Suddenly Lays Off Numerous Developers With a 5 AM Email

    Apparently, the entire Unity Behavior team was cut, alongside many other employees.
    • Cartoon Water Shader
      by Adam Homoki

      Cartoon Water Shader is an easy to use highly stylized water material, and river tool with many features. Demo scenes also included!

    • Face Details VDM Brush
      by Nicolas Swijngedau

      Great to speed up your character creation or to quickly age your humans!

    We need your consent

    We use cookies on this website to make your browsing experience better. By using the site you agree to our use of cookies.Learn more

    ×