VladSerhiienko / GPU-Planetary-Rendering

GPU atmosphertic scattering and planet generation in Unity 3D

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Unity Planet Rendering

A full scale planetary rendering in Unity 3D. Using precomputed atmospheric scattering as an image effect. Generating large planets with GPU noise, using compute shaders.

Atmosphere Scattering Based on Eric Bruneton's Precomputed Atmospheric Scattering

Instructions

The main scene is called PlanetSphereTest. The camera Controls are as follows:

  • E/Q - row camera
  • W/A/S/D - move camera
  • Mouse Scroll - Increase/Decrease camera speed
  • Space - Show/Hide mouse
  • C - Take Screenshot at Double the Screen Resolution
  • X - Exit Application

Updated to Unity 2019.2.8f1

Requirements

  • A GPU with compute shader capability
  • A GPU with async GPU reading capability

Screenshots

Screenshot1 Screenshot2 Screenshot3 Screenshot4 Screenshot5 Screenshot6

About

GPU atmosphertic scattering and planet generation in Unity 3D


Languages

Language:C# 73.6%Language:HLSL 20.5%Language:ShaderLab 5.9%