Difference between revisions of "Vertex Lightmaps"

From Bakery GPU Lightmapper: Wiki
Jump to navigation Jump to search
(Created page with "Objects can be baked on per-vertex level instead of having textures, if they or their parent have a Lightmap Group Selector component with a...")
 
Line 1: Line 1:
Objects can be baked on per-vertex level instead of having textures, if they or their parent have a [[Manual#Lightmap Group Selector|Lightmap Group Selector component]] with a Lightmap Group asset set to Vertex mode.
+
Objects can be baked on per-vertex level instead of having textures, if they or their parent have a [[Manual#Bakery_Lightmap_Group_Selector|Lightmap Group Selector component]] with a Lightmap Group asset set to Vertex mode.
  
 
Vertex lightmaps are compatible with shadowmasks, as well as Dominant Direction and SH modes.
 
Vertex lightmaps are compatible with shadowmasks, as well as Dominant Direction and SH modes.

Revision as of 09:00, 30 May 2019

Objects can be baked on per-vertex level instead of having textures, if they or their parent have a Lightmap Group Selector component with a Lightmap Group asset set to Vertex mode.

Vertex lightmaps are compatible with shadowmasks, as well as Dominant Direction and SH modes.

Bulbgraph.png It is recommended to disable vertex compression for TEXCOORD2 and TEXCOORD3 in Player Settings if you use directional vertex lightmaps.

There are pros and cons using vertex baking.

Pros:

  • No UVs needed. Suitable for complex geometry that is impossible to unwrap well.
  • No space wasted - padding and empty spaces in the lightmap are not a problem.

Cons:

  • Obviously vertex interpolation is less subtle than texel interpolation.
  • Normal texture compression techniques do not apply.
  • Modified shader needed (Bakery includes such shaders).
  • Denoising is not applied.

The data is stored in following vertex attributes:

  • Mesh.colors stores the color lightmap (or first coefficient of the SH lightmap).
  • Mesh.uv2 can store packed dominant direction, shadowmask and part of SH data.
  • Mesh.uv3 can store additional SH data.