Skip to content

Instantly share code, notes, and snippets.

@tcrowson
Last active May 12, 2026 00:22
Show Gist options
  • Select an option

  • Save tcrowson/5d033817c63cf6cf27f3703e2df9462b to your computer and use it in GitHub Desktop.

Select an option

Save tcrowson/5d033817c63cf6cf27f3703e2df9462b to your computer and use it in GitHub Desktop.
Karma LPE Syntax Reference

Karma LPE AOV Syntax Reference

Syntax examples for various Karma-compatible LPE-derived RenderVars...

AOV Name LPE Syntax
C (color/beauty) C.*
diffuse (total) C<RD>.*L
diffuse_direct C<RD>L
diffuse_indirect C<RD>.+L
diffuse_albedo CDA
diffuse_unshadowed unoccluded;C<RD>.*L
diffuse_direct_unshadowed unoccluded;C<RD>L
diffuse_indirect_unshadowed unoccluded;C<RD>.+L
specular (total) C<RG>.*L
specular_direct C<RG>L
specular_indirect C<RG>.+L
specular_albedo C<RG>A
specular_occlusion shadow;C<RG>*L
coat C<...'coat'>.*L
volume (total) CV.*L
volume_direct CVL
volume_indirect CV.+L
sss (total) C<TD>.*L
emission (total) C.*O
emission_direct CO
emission_indirect C.+O
lightsources CL
shadow shadow;C.*[LO]
transmission C<TG>.*L
transmission_albedo C<TG>A
transmission_full C<TG>.*[<L.><O>]
transmitted_diff C<TG>.*<RD>.*L
transmitted_diff_albedo C<TG>*DA
transmitted_diff_dir C<TG>.<RD>.*L
transmitted_diff_indir C<TG>..+<RD>.*L
transmitted_spec C<TG>+<RG>.*L
transmitted_spec_dir C<TG>+<RG>L
transmitted_spec_indir C<TG>*.<RG>.L
transmitted_emission C<TG>.*<O>
transmitted_emission_dir C<TG>.<O>
transmitted_emission_indir C<TG>..+O
transmitted_sss C<TG>.<TD>L
transmitted_vol C<TG>.V.*L
transmitted_vol_dir C<TG>.VL
transmitted_vol_indir C<TG>.V.+L
transmitted_lightsources C<TG>.L
holdout_full holdout;C.*[LO]
holdout_shadow holdouts;shadow;CDL
holdout_diffuse holdouts;CD.+L
holdout_emission holdouts;C.O
holdout_specular holdouts;C<RG>.+L
holdout_specular_occlusion holdouts;shadow;CGL

Karma LightGroup LPE AOV Syntax Reference

For LightGroups, we need to account for the light tags. This list is not exhaustive. More per-light AOVs can be generated by adapting this with other examples above.

lpetag = the arbitrary lightgroup identifier defined on your light-contributing prims.

AOV Name LPE Syntax
lpetag_full C.*<L.'lpetag'>
lpetag_diffuse C<RD>.*<L.'lpetag'>
lpetag_diffuse_direct C<RD><L.'lpetag'>
lpetag_diffuse_indirect C<RD>.+<L.'lpetag'>
lpetag_specular C<RG>.*[<L.'lpetag'>]
lpetag_specular_direct C<RG>[<L.'lpetag'>]
lpetag_specular_indirect C<RG>.+[<L.'lpetag'>]
lpetag_sss C<TD>.*[<L.'lpetag'>]
lpetag_transmission C<TG>.*[<L.'lpetag'>]
lpetag_volume CV.*[<L.'lpetag'>]
lpetag_volume_direct CV[<L.'lpetag'>]
lpetag_volume_indirect CV.+[<L.'lpetag'>]
lpetag_shadow shadow;C.*[<L.'lpetag'>O]
lpetag_source C[<L.'lpetag'>]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment