• Stars
    star
    354
  • Rank 120,042 (Top 3 %)
  • Language HLSL
  • License
    BSD 3-Clause "New...
  • Created about 7 years ago
  • Updated almost 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A Unity port of Brunetons improved atmospheric scattering

Brunetons-Improved-Atmospheric-Scattering

This is a port to Unity of a updated and improved version of Brunetons atmospheric scatter published in 2017. The original was published in 2008 so is a bit old now.

The new version contains the follow improvements.

  • More descriptive function and variable names and extensive comments.

  • Improved texture coordinate mapping which removes the horizon artifact in the previous version.

  • Provides a option to store the single Mie scatter in the alpha channel (Rayleigh is in the rgb) or in the rgb of a separate texture.

  • Provides a example of how to combine with light shafts.

  • Converts the spectral radiance values to RGB luminance values as described in A Qualitative and Quantitative Evaluation of 8 Clear Sky Models (section 14.3)

  • Or precomputes luminance values instead of spectral radiance values, as described in Real-time Spectral Scattering in Large-scale Natural Participating Media (section 4.4). The precomputation phase is then slower than with the above option, but uses the same amount of GPU memory.

  • Adds support for the ozone layer, and for custom density profiles for air molecules and aerosols.

The demo uses a image effect shader as a example of how to use the scattering. The sphere rendered and its light shafts are hard coded into the shader as its just a example. Some work would be needed to convert this into a practical implementation

AtmosphericScatter0

AtmosphericScatter1

AtmosphericScatter2

AtmosphericScatter3

AtmosphericScatter4

List of atmoshere projects

Brunetons-Improved-Atmospheric-Scattering
Brunetons-Atmospheric-Scatter
GPU-GEMS-Atmospheric-Scatter
Proland-To-Unity

More Repositories

1

Ceto

Ceto: Ocean system for Unity
C#
1,015
star
2

PBD-Fluid-in-Unity

A PBD fluid in unity running on the GPU
C#
724
star
3

Marching-Cubes

Marching cubes in Unity
C#
462
star
4

Terrain-Topology-Algorithms

Terrain topology algorithms in Unity
C#
430
star
5

Hull-Delaunay-Voronoi

Hull, Delaunay and Voronoi algorithms in Unity
C#
411
star
6

Position-Based-Dynamics

Position based dynamics in Unity
C#
299
star
7

Marching-Cubes-On-The-GPU

A implementation of the marching cubes algorithm on the GPU in Unity.
C#
291
star
8

GPU-GEMS-3D-Fluid-Simulation

3D fluid simulation on the in Unity
C#
278
star
9

Phillips-Ocean

A ocean using Phillips spectrum in Unity
C#
272
star
10

GPU-GEMS-2D-Fluid-Simulation

2D fluid simulation in Unity
C#
247
star
11

Mesh-Voxelization

Mesh voxelization in Unity
C#
231
star
12

CGALDotNet

C# wrapper for CGAL
C#
198
star
13

Interactive-Erosion

Interactive erosion in Unity
C#
170
star
14

2D-Deformable-body-in-Unity

A 2D Deformable body simulation in Unity using FEM
C#
142
star
15

Procedural-Noise

Simple examples of noise algorithms in Unity
C#
136
star
16

Brunetons-Ocean

Brunetons ocean in Unity
C#
127
star
17

Tiled-Directional-Flow

A shader to control the direction water flows based on a flow map in Unity.
ShaderLab
118
star
18

Proland-To-Unity

A port of Proland to Unity
C#
112
star
19

GPU-GEMS-Atmospheric-Scatter

Atmoshperic scatter in Unity
GLSL
73
star
20

AperiodicTexturing

A periodical texturing in Unity
C#
66
star
21

CGALDotNetUnity

CGALDotNet examples in Unity
C#
60
star
22

Brunetons-Atmospheric-Scatter

Brunetons procomputed atmospheric scatting in Unity
C#
55
star
23

GPU-Voronoi-Noise

GPU Voronoi noise in Unity
HLSL
48
star
24

CyclonePhysicsEngine

C# port of the Cylcone physics engine
C#
47
star
25

Wireframe-Shader

A wireframe material in Unity using the geometry shader.
ShaderLab
47
star
26

Simple-Procedural-Terrain

A simple example of how to create a Unity terrain from code using procedural noise.
C#
45
star
27

GPU-GEMS-NBody-Simulation

A NBody simulation in Unity
C#
43
star
28

GPU-GEMS-Improved-Perlin-Noise

Perlin noise on the GPU in Unity
GLSL
42
star
29

CGALDotNetGeometry

Geometry objects under MIT licence for CGALDotNet project
C#
28
star
30

ImageProcessing

A collection of code for processing images
C#
22
star
31

XAtlasDotNet

A c# wrapper around xatlas used to unwrap mesh uv’s.
C++
14
star
32

Common

Common code library
C#
9
star
33

OpenCLDotNet

A C# wrapper around OpenCL
C#
2
star