https://github.com/DXGatech/Voxel-survival-primitive-UE4
This is a large-scale UE4 project, made to demonstrate how a voxel game can be implemented with UE4 and Instanced Static Mesh Component
https://github.com/DXGatech/Voxel-survival-primitive-UE4
Last synced: 26 days ago
JSON representation
This is a large-scale UE4 project, made to demonstrate how a voxel game can be implemented with UE4 and Instanced Static Mesh Component
- Host: GitHub
- URL: https://github.com/DXGatech/Voxel-survival-primitive-UE4
- Owner: DXGatech
- License: gpl-3.0
- Created: 2017-06-20T14:08:55.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2018-01-08T10:55:41.000Z (over 7 years ago)
- Last Synced: 2024-11-04T13:03:23.750Z (6 months ago)
- Language: C++
- Homepage:
- Size: 47.5 MB
- Stars: 15
- Watchers: 6
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome_unreal_engine_4_-_5 - Voxel survival primitive
- awesome_unreal_engine_4_-_5 - Voxel survival primitive
README
# Voxel-survival-primitive-UE4
THIS PROJECT IS NO LONGER MAINTAINED, AS AN ADVANCED VERSION IS CREATED SEPARATELY.
Content:
***Voxel terrain generation***
heightmap-independent biomes(mountains, oceans, islands, swamp), rivers(short and long), surface overhang, foliages, heightmap-dependent biomes(grassland, desert, tundra)***Runtime effects***
Dynamic skybox with day/night cycle and weather effects# Endless terrain generation system
====================================
The terrain generation system uses SimplexNoise2D, which is an enhanced version of perlin noise, to generate seamless and tileable terrain.
A piece of pseudo code for the dual-chunk generation class:
```
for(chunkWidth = 0; chunkWidth <= 5; chunkWidth++){
for(chunkHeight = 0; chunkHeight <= 5; chunkHeight++){
UWorldSetWorldLocation(VoxelWorldLoc.X, VoxelWorldLoc.Y, USimplexNoise::SimplexNoise2D(VoxelWorldLoc.X, VoxelWorldLoc.y));
}
}
```
Note: For bp-code branches, which will likely be added in the future, all C++ classes are exposed to child blueprints, allowing artists to customize the procedural terrain without writing a single line of code OR editing the parent blueprint.# Features
====================================
We have implemented:
**basic artificial intelligence units**(templates for passive mobs);**biomes based on geographical factors** that are illustrated in any whittaker diagram;
**Procedural river generation**


block placing & breaking( **advanced manipulations like stretch and rotation included** );
**infinite terrain generation** based on the concept of chunk( mineraft style );
Custom foliages:
