Krakatoa
RSS< Twitter< etc

Lighting And Shading - Krakatoa For Maya

Work In Progress, Last Edited on 2012/12/21 @3:45 pm PST

Introduction

An important part of the Volumetric Rendering process is the illumination of the particles using dynamic light sources and the calculation of the Scatter color and its distribution into the scene. This also includes the computation of shadows from particles onto particles, particles onto matte geometry and matte geometry onto particles.

Lighting

Krakatoa can illuminate particles and cast shadows using dynamic light sources. In fact, shadow casting cannot be turned off since it is an integral part of the volumetric rendering process.

The current version of Krakatoa MY supports only Spot, Point and Direct lights.

Spot Lights

This is the preferred lighting tool for dynamic illumination of Krakatoa particles in both Particle and Voxel rendering modes.

The Spot light will illuminate and calculate shadows only inside the cone's Range.

Try to keep the light as close to the particles as possible to ensure the shadow quality is high enough. Krakatoa uses Attenuation map buffers and just like with regular Shadow Maps, far away lights and large cones can cause lower quality shadows. By default, an Attenuation Map size of 512 will be used. If necessary, increase the size of the Shadow Map to produce more shadow detail.

Point Lights

Point lights have the benefit of casting light and shadows in all directions. 

Point lights are NOT supported in Voxel rendering mode!

Direct Lights

Direct lights in Krakatoa are implemented quite differently from their Maya counterparts. Krakatoa Direct lights are not infinite, they require a range (producing a light cylinder) in which they illuminate the particles and cast shadows. This is once again because Volumetric rendering makes no sense without shadow castng.

TBC

Hidden Lights

Complying with the standard Maya workflows, hidden lights will not render in Krakatoa MY.

Note that this is not the case for Krakatoa MX in 3ds Max where hidden lights are still considered active unless turned off explicitly with their On property.

 

Phase Functions (Shading Modes)

Isotropic

The incoming light is scattered uniformly in all directions, independent of the particle, light and camera orientation in space.

Phong Surface

Scatters light dependent on the angle between the light source's direction, the particle normal and the viewing direction according to the Phong specular model.

Note that the Phong model describes surface behavior but in Krakatoa every particle, even deep under the surface, will be shaded using this surface shading method. When using low densities, the results might appear unrealistic, producing "shiny volumes".

This mode provides SpecularPower and SpecularLevel controls.

Henyey-Greenstein

Scatters light dependent on the angle between the light and the viewing direction.

Provides a Phase Eccentricity control.

When Phase Eccentricity is set to 0.0, the phase funtion will behave the same as Isotropic.

Schlick

Scatters light dependent on the angle between the light and the viewing direction.

Provides a Phase Eccentricity control.

When Phase Eccentricity is set to 0.0, the phase funtion will behave the same as Isotropic.

Similar to Henyey-Greenstein, but positive Phase Eccentricity values produce results like negative values in Henyey-Greenstein.

Kajiya-Kai Hair 

This phase function is part of the Krakatoa core renderer, but makes little sense in the current implementation of Krakatoa MY since there is no support for Maya Hair or Curve conversion to particles yet.

Marschner Hair

This phase function is part of the Krakatoa core renderer, but makes little sense in the current implementation of Krakatoa MY since there is no support for Maya Hair or Curve conversion to particles yet.