Giter Site home page Giter Site logo

cashgenue's Introduction

"# cashgen"

Infinite Procedural World Generator for UE 4.10

This initial release of the plugin has been pared back to the basic terrain generation element. It was previously built on UnrealLibNoise which provided a nice modular noise system but as it was LGPL I had to ditch it in favour of FastNoise (https://github.com/Auburns/FastNoise) which is MIT licensed so ready to use in your UE projects.

#Instructions

Copy the Cashgen plugin to your project's Plugins folder. The main class is WorldManager, there is an example map and level to demonstrate setup.

Configration is done in the SpawnWorld blueprint function. You must provide a Pawn reference for the world to be populated around. Some example configuration values to get you started :

##NoiseConfig

Noise Type = Simplex Fractal
Fractal Type = Ridged Multi
Octaves = 7
Frequency = 0.000004
Seed = 1234567
Lacunarity = 2.0
Gain = 0.5
Sample Factor = 1.0

##ZoneConfig X/Y Units = 32
Unit Size = 750
Amplitude = 30,000
Your choice of material
LOD0 = 100000
LOD1 = 250000
LOD2 = 250000
LOD3 = 250000

##Spawn Zones NumXZones = 25
NumYZones = 25
Max Threads = 1
Render Tokens = 4

The plugin previously included more advanced functions such as instanced foliage generation and biome masking. This will be re-introduced now that I have a cleaned up optimised base to start from. Here's some demos of the system in action :

Basic terrain, RidgedMulti and Billow Noise with a Perlin Noise mask: https://www.youtube.com/watch?v=O0udSNv8COA

With some marketplace assets configured in the biome spawning section: https://www.youtube.com/watch?v=p7PhpJCcipA

CashGen plugin is released under the MIT license (see LICENSE.TXT)

Feel free to contribute! This is and will remain an open-source project. In particular if anyone that's good on the materials side of things wants to improve my horrible coder-art efforts that would be great :)

Known issues/TODO :

  • Not sure if the tangents are correct
  • Flicker on LOD change (hope to update to 4.11 and use dithered transition
  • Implement noise modules and masking
  • Re-implement instanced mesh spawning with weightmap based configuration

cashgenue's People

Contributors

midgen avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.