User Tools

Site Tools


Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
mapping:cawe:lighting [2007-11-08 22:23]
Carsten Augmented the text
mapping:cawe:lighting [2008-04-24 13:36]
Carsten Minor revision
Line 1: Line 1:
 ====== About Lights and Shadows ====== ====== About Lights and Shadows ======
  
-FIXME  This page is currently ​under construction :!: +FIXME  This page is still under construction :!: 
  
 One of the key questions that mappers frequently raise is how to define and place light sources. One of the key questions that mappers frequently raise is how to define and place light sources.
Line 18: Line 18:
 Radiosity methods compute lighting based on a physical model, and it is the nature of the underlying mathematics that characterizes the features of the technique. Radiosity methods compute lighting based on a physical model, and it is the nature of the underlying mathematics that characterizes the features of the technique.
  
-The big downside of Radiosity is that it requires a preprocessing step. This preprocessing step can be computationally very expensive and thus taking ​a long time to complete. It is implemented in a special tool called "​CaLight",​ which is one of the map compilers that are covered in sections [[mapping:​compiling_new]] and [[mapping:​compiling]].+The big downside of Radiosity is that it requires a preprocessing step. This preprocessing step can be computationally very expensive and thus take a long time to complete. It is implemented in a special tool called "​CaLight",​ which is one of the map compilers that are covered in sections [[mapping:​compiling_new]] and [[mapping:​compiling]].
  
 The fact that Radiosity is slow to precompute also means that it cannot work with dynamic objects: Radiosity takes walls and any other static object into account, but anything that moves will not influence the Radiosity-based lighting result. The fact that Radiosity is slow to precompute also means that it cannot work with dynamic objects: Radiosity takes walls and any other static object into account, but anything that moves will not influence the Radiosity-based lighting result.
Line 24: Line 24:
 Good news about Radiosity-based lighting is that once the preprocessing step it complete, it is //fast//. Independently of the number of light sources or complexity of the scene, Radiosity-based lighting provides very good performance at run-time during the game. It is therefore a natural choice for large-scale base lighting of any level. Good news about Radiosity-based lighting is that once the preprocessing step it complete, it is //fast//. Independently of the number of light sources or complexity of the scene, Radiosity-based lighting provides very good performance at run-time during the game. It is therefore a natural choice for large-scale base lighting of any level.
  
-Even better, Radiosity lighting results looks stunningly good. No matter what hardware vendors tell you about their latest products, no matter what game developers tell you about dynamic lighting (as I too do, see below), none of these techniques can beat the realism of lighting generated by Radiosity methods. Based on an accurate physical model, the natural propagation and appearance of lights and shadows is unique to Radiosity methods.+Even better, Radiosity lighting results looks stunningly good. No matter what hardware vendors tell you about their latest products, no matter what game developers tell you about dynamic lighting (as I do, too; see below), none of these techniques can beat the realism of lighting generated by Radiosity methods. Based on an accurate physical model, the natural propagation and appearance of lights and shadows is unique to Radiosity methods.
  
 The Radiosity method also handles //area light sources// without special measures, but as a natural part of the algorithm. Area light sources are an important key feature, because they are the main contributors to a realistic lights and shadows distribution with diffuse reflections and soft shadows. The Radiosity method also handles //area light sources// without special measures, but as a natural part of the algorithm. Area light sources are an important key feature, because they are the main contributors to a realistic lights and shadows distribution with diffuse reflections and soft shadows.
Line 38: Line 38:
 That means that a surface becomes an area light source when it has a material applied to it which in turn is defined to emit Radiosity light. That means that a surface becomes an area light source when it has a material applied to it which in turn is defined to emit Radiosity light.
  
-  * In order to place an area light source, use the [[mapping:​cawe:​editingtools:​editfaceprops|Edit ​Face Properties]] tool to apply an appropriately defined material to the desired brush or Bezier patch surface. You can learn which materials cast Radiosity area light by clicking on them once in the [[mapping:​cawe:​materialbrowser|Material Browser]]. The bar at the bottom will show "​Radiant Exitance"​ information on the selected material, if any.\\ Tip: Filter for materials with the string "​light"​ in their name. This heightens the chance to find a relevant material quickly.+  * In order to place an area light source, use the [[mapping:​cawe:​editingtools:​editfaceprops|Edit ​Surfaces]] tool to apply an appropriately defined material to the desired brush or Bezier patch surface. You can learn which materials cast Radiosity area light by clicking on them once in the [[mapping:​cawe:​materialbrowser|Material Browser]]. The bar at the bottom will show "​Radiant Exitance"​ information on the selected material, if any.\\ Tip: Filter for materials with the string "​light"​ in their name. This heightens the chance to find a relevant material quickly.
   * In order to change the definition of a new or existing material to emit light, make sure that the ''​meta_radiantExitance''​ keyword is employed. Please refer to the Material Systems [[matsys:​cmat_manual:​keywordreference]] for more details.\\ Note that the effect of changing the definition of an //​existing//​ material is //global//. That is, if the material is used elsewhere (in another map), also the other map will be affected when CaLight is run next.   * In order to change the definition of a new or existing material to emit light, make sure that the ''​meta_radiantExitance''​ keyword is employed. Please refer to the Material Systems [[matsys:​cmat_manual:​keywordreference]] for more details.\\ Note that the effect of changing the definition of an //​existing//​ material is //global//. That is, if the material is used elsewhere (in another map), also the other map will be affected when CaLight is run next.
  
Line 65: Line 65:
  
 These properties have many implications for the practical use of dynamic lighting: These properties have many implications for the practical use of dynamic lighting:
-Dynamic lighting is fast, flexible, dynamic, ​instantaneously, yields good results and is well supported and accelerated in hardware.+Dynamic lighting is fast, flexible, dynamic, ​instantaneous, yields good results and is well supported and accelerated in hardware.
  
-Even though dynamic lighting looks not quite as real as the Radiosity method, this is often not a problem, because lighting that looks dramatically good is often preferred over the boring natural. Moreover, dynamic lighting avoids the computational complexity that comes with the Radiosity method. Therefore, dynamic lighting is an important component of the Ca3D-Engine.+Even though dynamic lighting looks not quite as real as the Radiosity method, this is often not a problem, because lighting that looks dramatically good is often preferred over the "boring natural". Moreover, dynamic lighting avoids the computational complexity that comes with the Radiosity method. Therefore, dynamic lighting is an important component of the Ca3D-Engine.
  
 ==== Point light sources ==== ==== Point light sources ====
Line 84: Line 84:
 ===== See Also ===== ===== See Also =====
  
-  * [[http://​www.ca3d-engine.de/​download.php?​view.5|Methods for Real-Time Lighting]] -- Diploma Thesis by Carsten Fuchs.+  * [[http://​www.ca3d-engine.de/e107/​download.php?​view.5|Methods for Real-Time Lighting]] -- Diploma Thesis by Carsten Fuchs.
mapping/cawe/lighting.txt ยท Last modified: 2013-01-07 12:07 (external edit)