Advanced

Real-Time Rendering of Volumetric Clouds

Olajos, Rikard LU (2016) In LU-CS-EX 2016-42 EDA920 20161
Department of Computer Science
Abstract
Rendering volumetric clouds is a compute-intensive process which makes it difficult to use in real-time applications. At the same time, the need for volumetric clouds is evident as game developers look for new places to increase the realism of their games. Skyboxes and flat textures work well in 3D scenes where the camera is expected to be far away from the clouds and not move over large distances. But in open world games where the position of the camera cannot be assumed, skyboxes give a static impression and flat texture can give artefacts.

This thesis explores different techniques to save computational time when implementing volumetric clouds for real-time rendering. We start from a realistic implementation and from there propose... (More)
Rendering volumetric clouds is a compute-intensive process which makes it difficult to use in real-time applications. At the same time, the need for volumetric clouds is evident as game developers look for new places to increase the realism of their games. Skyboxes and flat textures work well in 3D scenes where the camera is expected to be far away from the clouds and not move over large distances. But in open world games where the position of the camera cannot be assumed, skyboxes give a static impression and flat texture can give artefacts.

This thesis explores different techniques to save computational time when implementing volumetric clouds for real-time rendering. We start from a realistic implementation and from there propose different approximations and methods to see which performance gains can be accomplished, and at what costs.

Our implementation presents a way of forming cloud textures that uses a mixture of precalculation and real-time calculations, and allows for easy configurations and flexibility in creating different cloudscapes. For the cloud rendering, we present a way to preprocess the cloud texture and create a low resolution structure which saves a lot of rendering time. (Less)
Please use this url to cite or link to this publication:
author
Olajos, Rikard LU
supervisor
organization
alternative title
Ray Marching Noise Based 3D Textures
course
EDA920 20161
year
type
H3 - Professional qualifications (4 Years - )
subject
keywords
Clouds, Real-time rendering, Volumetric ray marching, Cellular noise, Deferred shading
publication/series
LU-CS-EX 2016-42
report number
LU-CS-EX 2016-42
ISSN
1650-2884
language
English
id
8893256
date added to LUP
2016-10-11 09:51:51
date last changed
2016-10-11 09:51:51
@misc{8893256,
  abstract     = {Rendering volumetric clouds is a compute-intensive process which makes it difficult to use in real-time applications. At the same time, the need for volumetric clouds is evident as game developers look for new places to increase the realism of their games. Skyboxes and flat textures work well in 3D scenes where the camera is expected to be far away from the clouds and not move over large distances. But in open world games where the position of the camera cannot be assumed, skyboxes give a static impression and flat texture can give artefacts.

This thesis explores different techniques to save computational time when implementing volumetric clouds for real-time rendering. We start from a realistic implementation and from there propose different approximations and methods to see which performance gains can be accomplished, and at what costs.

Our implementation presents a way of forming cloud textures that uses a mixture of precalculation and real-time calculations, and allows for easy configurations and flexibility in creating different cloudscapes. For the cloud rendering, we present a way to preprocess the cloud texture and create a low resolution structure which saves a lot of rendering time.},
  author       = {Olajos, Rikard},
  issn         = {1650-2884},
  keyword      = {Clouds,Real-time rendering,Volumetric ray marching,Cellular noise,Deferred shading},
  language     = {eng},
  note         = {Student Paper},
  series       = {LU-CS-EX 2016-42},
  title        = {Real-Time Rendering of Volumetric Clouds},
  year         = {2016},
}