Skip to content

ItsMeThom-zz/FinalYearProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FinalYearProject

Procedural Generation of a first person adventure in Unity3d.

Code for my final year project, titled "Procedural Content Generation in Game Design & Development"

Unity 2018.2 based first person action-rpg.

Some of the features:

  • Procedural generation of landmasses (10km^2 map area, in infinite chunk based world)

    • Threaded chunk-based rendering around the player to load/unload the world as they move.
    • Biomes using K-Nearest-Neighbour sampling to determine biome types from temperature/moiusture/heightmaps
    • Chainable builder pattern for noise generation to allow combiniations of noise layers and types to produce different kinds of features
    • Poisson disc-sampling implementation for distribution of trees, and vegetation.
    • Higher-order Terrain features (Shapes the terrain into a single large island while retaining landmase)
  • Procedural music generation and dynamic-situation music

    • Hand-rolled sampler and sequencer implementation
    • Markov-chain based song structures (Chorus-> bridge-> chorus2 etc)
    • Melody and Chord progression generation based on musical theory engine.
    • Dynamic audioscape adjustment: Calm music in overworld seamlessly transitions into combat music and back without discord.
  • Procedural Dungeon generation

    • Generative-Grammar based dungeon generation, handmade prefab engine to define dungeon rooms with grammar rules and have them resolve into unqiue but coherent layouts at runtime, ensuring all areas are reachable.
  • Procedrual Weapon/Item generation

  • Behavior Tree based AI and a custom pathfinding graph implementation

TODOs: Some areas are in need of refactor and rewriting, as they were added in time for deadlines. Code needs to be updated to latest unity version More tests need to be written

About

Procedural Generation of a first person adventure in Unity3d.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published