Lightning Boy Shader 2.1 - User Guide
Lightning Boy Shader 2.1 - User Guide
1-UserGuide
WelcometotheLightningBoyShader2.1UserGuide!
ThisshaderwascreatedtoprovideBlenderartistsabetterwaytobuildtheirownstylized
materials.Manyoftheideasyou’llseehereoriginatefromourtoonshadertutorialseries.
TheywereexpandeduponwiththereleaseofLBS2.0,whichintroducedalayersystem,
drag-and-dropstylesandmoreintuitivemasking.WithLBS2.1,wedidacompleteoverhaulby
repackagingitintoanadd-on.Theshaderisnowfastertouse,lightsaremoreresponsive,and
multipleautomatedfunctionshavebeenadded,easilyaccessiblefromtheShaderEditor.
Thisuserguidewillexplaineverythingyouneedtoknowtogetstarted.Whilewedidourbestto
makethisguideascomprehensiveaspossible,wehighlyencourageyoutowatchourvideo
tutorialL
BS2.1:MakeAnyNPRStyle(Sketch,Toon,Outline,Hatch…),wherewegivean
overviewoftheshader,what’snewfromthepreviousversion,aswellassomehandytipsand
tricksonhowtoachievevariousstylizedeffects.
YoumightalsoenjoywatchingT oonShadedCharacterGuide-FromModelingtoFinalShading,
whereweexplainhowwemadeourcharactersforourprojectDinomancersusingthisshader.
ThisvideousesLBS2.0,soafewthingsareoutofdate,butforthemostpartallthenodesand
propertiesarestillthesame.
BLENDERCOMPATIBILITY
Beforeyoudivein,makesuretobeusingB
lender2.93.W
hilew
edoourbesttoadaptthe
shadertoworkwithnewBlenderversionsastheyrelease,usingBlender2.93isthebestwayto
ensureeverythingworksasintended.
1
LightningBoyShader2.1-UserGuide
HOWTOINSTALLTHEADD-ON
Toinstalltheadd-on,gotoEdit>Preferences>Add-ons,andclick[Install…].Usingthebrowser
windowthatappears,locatetheLightningBoyShaderzipfile.Then,findtheaddonusingthe
searchbarandcheckthelittlebox.ItwillnowbeactivatedwheneveryoustartBlender!
USINGTHEADD-ON
Alloftheadd-onoptionsarefoundintheS haderEditor.One
waytoaccessitistoextendthebottomtimelineupwardsand
changetheE ditorTypetoS haderEditorinthetopleft.Once
youhaveitopen,p ressN totogglethesidebarontheright.If
theadd-onisinstalledcorrectly,youshouldseeatabcalled
LBSwithsomebuttons.We’llonlylookattwoofthemfornow:
SetUpBaseSceneandB aseMaterial.Theotherswillbe
explainedattheendofthisguide( AdditionalOptions,p.22).
SetU
pB
aseS
cene
Wheneveryoustartanewscene,clickonSetUpBaseScene.
AcollectioncalledL ightningBoyShaderwillbeimported
containingusefullightsandobjects,yourC olorManagement
settingswillbeautomaticallyoptimized,andtheworld
materialwillchangesoitdoesn’tinterferewiththescene’s
lighting.Anyotherlightspresentinthescenewillalsobe
disabledastheyarenotcompatiblewiththisshader.
2
LightningBoyShader2.1-UserGuide
IfyouchangetheV iewportShadingtoR endered,inthe
toprightofyourscreen,you’llnoticethatthes kyhas
transformedintoabluegradient.Youcanmodifythose
colorsatanytimebygoingtothetopleftoftheS hader
Editor,a ndchangethedatatypefromO bjectt oW orld.
You’llseeabunchofnodesthere,buttheonlyimportant
partistheM
ixnodewiththeIsCameraRayinput.The
colorrampitselfcanbechangedtoanythingelse.
BaseM
aterial
Togetstarted,you’llfirstneedamaterial.You
canusetheB aseMaterialb uttonfromthe
add-onpaneltoquicklyreplaceanyobject’s
activematerialwithabasicLBSmaterial.
MakingUniqueCopies:Thechangesyoudo
toamaterialwillbeappliedtoalltheobjects
sharingthatmaterial.Tomakeauniquecopy
ofamaterial,createanewmaterialslotwith
the+ buttonandselectanalready-used
materialfromthelist.Then,clickonthe
numberediconnexttothatmaterial’sname
andrenameit.DoinguniquecopiesofanLBS
materiallikethiswillallowyoutobuilddifferentstylesfordifferentobjects.
Now,let’slookattheLBSmaterialintheShaderEditor,asitworksalittledifferentlythanusual.
NodeS
ockets
Normally,greennodesockets areusedtoconnect
Shader-typeBSDFnodes.Inthecaseofthisshader,
however,greensocketsareusedforlayers.Whilethe
colorsarethesame,theinternallogicofthenodesis
completelydifferent.Thus,itisimportanttoo nlyuse
LBSnodeswhenconnectinggreensocketstogether.AllLBSnodeshavearedtitlebaranda
lightbluebackgroundsotheyareeasytorecognize.
Grey ,Yellow andPurple connectorswillworkasusualandwithanykindofBlender
nodes,astheycontainthesametypeofvalue,colorandvectorinformation.
3
LightningBoyShader2.1-UserGuide
Layers
TheLightningBoyShaderisuniquebecauseofitsuseoflayers.MuchlikeinSubstancePainter
andPhotoshop,theyactabitlikesheetsofacetatestackedontopofoneanother,lettingyou
seethelayersunderneathwherelefttransparent.
Youcanchangethenumberoflayersatanytimebyclickingonthenumberattopofthe
LightningBoyShadernode.Eithertypeinthenumberoflayersyouwant,orusetheleftand
rightarrowstoaddorremovelayersoneatatime.
Thelayerswewillbestackingaremorethanmerelayersofpaint,however:theyarefull-fledged
features.Eachofthemisaself-containedshadingmodule—Specular,Outline,Occlusion—and
eachonecomeswithuniquepropertiesyoucanplaywith.Bystackingfeaturesontopofone
another,andchoosinginwhatordertheyarestacked,youcanachieveprecisecontroloveryour
stylizedmaterials.
Features
Bydefault,youcanseethattheLBSmaterialalreadyhas
afewfeaturesconnectedtoit:aC olorinlayer1,aK
ey
Lightinlayer2,andaS
pecularinlayer3.
Therearetwowaysyoucanadjustthosefeatures:either
intheM
aterialPropertiespanelontherightofyour
screen—youjusthavetoexpandtheircontentfirstby
clickingonthelittlearrow—oryoucaneditthemdirectly
intheS haderEditorbyrevealingtheirproperties.
4
LightningBoyShader2.1-UserGuide
RevealingP
roperties
WhenyoucreateanewfeatureintheS haderEditor,itwillbecloseddownandappearasa
singleredbar.Ifyouwishtorevealallthehiddenproperties,p ressH
w
iththenodeselected.
Whilerevealingpropertiesisusefultomakeadjustments,closingthembackdownwhenyou’re
donecanhelpreducetheclutterinyourworkspace,andbetterseewhatlayerseachfeatureis
connectedto.Atanytime,youcanselectanynumberoffeaturesandpressHtoclosethemall
downatonce.Noticehowonlyafewselectinputsandoutputsarevisibleinthatstate.Once
youaremorefamiliarwiththeLightningBoyShaderanditsmanyfeatures,you’llbeableto
quicklyconnectnodestogetherwithoutrevealingtheircontents.Forinstance,leftgreysockets
arealwaysusedforM asksandyellowsocketsforC olor—theyaregenerallythetwoyouare
mostlikelytowanttoconnect.
GlobalS
ettings
Anytimeyouseeafeaturewithanasterisk(*),itmeansit
containsGlobalSettings.WhilethebasicpropertiesonaLBS
nodewillonlyaffectthatnodelocally,editingGlobalSettings
willletyouaffectmultiplenodesatonce.P ressT
ABwiththe
nodeselectedtotoggleGlobalSettingsvisibilityonoroff.
WhatfeaturestheGlobalSettingswillinfluenceisalways
determinedbytheI nstancenameatthetop.Thefieldis
blankbydefault,whichmeanseverysimilar-typenodewill
sharethesameGlobalSettings.Ifyoutypeadifferent
Instancename,itwillnowbeavailableinthedrop-downlist
forothernodestouse.
5
LightningBoyShader2.1-UserGuide
CreatingN
ewF
eatures
IfyoupressS
hift-AintheShaderEditor,you’llnoticeaL
BSsectionatthebottom.Itcontainsa
libraryofnodesbuiltspecificallyforthisshader.Simplyclickonanyofthemtostartaddingnew
features.Thefollowingsectionswillexploreeachofthem—howtheycanbeusedtostylizeyour
material,andwhatkindofuniquepropertiestheyhave.
FEATURE1.L IGHTING
Thefirstsetoffeaturescontrollighting:they’reusedtocontrolwhichmaterialsreceivelight,
fromwhatdirection,andhowthatlightreactsonthesurface.Therearetwomaintypesof
lightingnodesyoucanusewiththeLightningBoyShader:KeyLightsandVirtualLights.
KeyL ight
KeyLightsaretheonlytypeoflightwhichcancastshadows.When
youmakeaKeyLightnode,itwillbelinkedtooneofthelight
objectsfoundintheL ightningBoyShadercollection,underM ain
Lights.Exactlythreelightsareavailable:C haracter,Background,
andExtra.TochangewhichlighttheKeyLightnodelinksto,use
thedrop-downmenuatthetop.
WerecommendusingonelightforCharacters(orimportant
foregroundobjects),theothertolighttheBackground(suchasthe
groundplaneandthesurroundings),andthelastforExtralighting
(rimlightsorspecialeffects).Thisworkflowallowsyoutolightthe
charactersfromanexaggeratedfrontalangle—creatingflatter,
morepleasingshadows—whilestillhavingyourcharactercasta
top-downshadowonthefloor.Butfeelfreetousethethreesetshoweveryouprefer!
6
LightningBoyShader2.1-UserGuide
Thewaylight-linkingisachievedwiththisshaderisbyhavinglightscastonlyoneofthethree
RGBcolors,andthenfilteringoutthatcolorchannelinternallytoisolatethem.Thisiswhylights
aredisabledautomaticallywhenyouclickonS etupBaseScene.Otherwisetheywouldaddtheir
influencetoeachcolorchannelunevenlyandtheKeyLightfeatureswouldnotworkcorrectly.
BelowisanoverviewofeachpropertyontheKeyLight.Thesepropertiesarequitecommonand
willbefoundonmanyotherfeaturesaswell.Wewillonlyexplainthemonceforbrevity,unless
there’sadifferenceinhowaparticularfeatureusesthatproperty.
Color:Thispropertycontrolswhatcolorthefeaturecastsontheobject.Ifyoudon’twanttouse
apurecolor,youcanalsoconnectanimagetextureorpaintoneinBlenderusingmasks.
(PaintingTexturesWithMasks,p.11).
Softness:Thispropertydetermineshowsharporsoftthefeaturelooks.Avalueof1willmake
thefeatureverydiffuse,whileavalueof0willmakeitsharplikeacel-shadedanime.
Range:Thispropertycontrolshowmuchthefeaturecoversthesurface.Avalueof1willextend
theareaasmuchasphysicallypossible,whileavalueof0willreducetheareauntilit
disappears.AKeyLight’sRangewillneverilluminatepast90°ofthelight’sorientation.Togo
pastthisnaturallimit,useaV
irtualLightinstead( VirtualLights,p.9).
Invert:Thispropertyflipstheopaqueareassotheybecometransparent,andvice-versa.Doing
socanbeusefulformaskingpurposes,andforachievingcertaineffectswithS tyles(F
eature6.
Styles,p.18).
Opacity:Thispropertyallowsyoutofadeoutthelayersothatyoustartseeingthelayers
underneath.ReducetheOpacitytozerotomakethefeaturecompletelytransparent,orconnect
ablackandwhiteimagetexturet om askoutcertainsections.
7
LightningBoyShader2.1-UserGuide
Normal:T hispropertyletsyouuseanormalmaptogivemoredetailstoyourobject.Connectit
thesamewayyouusuallywouldinBlender—usingS hift-A,createanImageTextureanda
NormalMapnode,andconnectthemtogetherusingtheyellowColorinput.Then,clickOpento
importyourtexture,changetheColorSpacetoN on-Colora ndconnecttheNormaloutputtothe
KeyLight’s Normalinput.
GlobalSettings:S incetheKeyLightfeaturehasanasterisk(*)nexttoitsname,itmeansit
containsGlobalSettings.A salways,p ressT
ABt oaccessthem.ThefirstoptionisaColorwitha
Slider.IncreasethevalueofthatslidertooverridetheKeyLight’slocalcolorwiththeGlobal
Color.AsforOpacity,useittomakeallKeyLightsinthescenemoretransparent.Remember
thatyoucanchangewhichKeyLightsareaffectedbytheGlobalSettingsbychangingthe
Instancenameatthetop.
Specular
Specularisthebrighthighlightyouseeonshinyormetallic
surfaces.Thereisalreadyaspecularincludedbydefaultonthe
LBSMaterial,butyoucanquicklya ddagloweffectbyaddinga
secondone(eitheronthelayeraboveorbelow)andchangingthe
SoftnessandRangetomakeitmorediffuse.LiketheKeyLight
node,theSpecularcanlinktoeithertheCharacter,Backgroundor
ExtralightcontainedintheLightingBoyShadercollection.
Offset:ThispropertycheatstheSpecularpositioninrelationto
thelight.YoucanmoveitinanyofthethreeX,YandZaxes.Thiscanbeusefulifyouwantto
createadoubleSpecular,orsimplyoffsetthepositionofthespecularaparticularwaywithout
changingtheactuallightdirection.
8
LightningBoyShader2.1-UserGuide
VirtualL
ights
WhileyoucanonlyhavethreeKeyLightswiththisshader,
youcancreateadditionallightingusingVirtualLights.
InsteadoffilteringoneofthethreeRGBcolors,theway
VirtualLightsworkistheycomparefacenormalsagainstan
objectinthescenetocreateillumination.Thismethod
doesn’tgenerateanyshadows—that’swhytheyarecalled
virtual.However,theadvantageisyoucancreateany
numberofthem.
UnliketheKeyLightfeature,mostoftheVirtualLight’s
propertiesareG lobalSettings,soyou’lllikelywanttoh
it
TABthefirstchanceyougettoseealltheavailableoptions.
Let’slookattheparticularitiesofeachVirtualLight.
Sun:T hey’retheclosestyou’llgettoKeyLights,meaning
theyilluminateinonesingledirectionfromapointinfinitely
distant.ThemaindifferenceistheirRangecangopastthe
natural90°limit,reachingallthewaybehindanobject.
Point:T hislightilluminatesfromasinglepointinspace.
YoucancontrolhowfarthelightreachesusingMax
Distance.UsealowRangevalueifyouwantthelightareato
looksomethingmorelikeaspecular.
Spot:V irtualSpotLightsofferallthesamepropertiesasthe
otherVirtualLights,plustwoextraoptions:ConeSoftness
andConeAngle.Bothwillletyoudefinetheshapeofthespotlight,maskingouteverything
outsideofit.
AddingM
oreV
irtualL
ightsint heS
cene
Whenyoumakeanewscene,you’llfindonlyoneVirtualSun,Point
andSpotLightintheL ightningBoyShadercollection.AnyVirtual
Lightfeatureyoucreateonyourmaterialswilllinktothemby
default.Ifyouneedmore,simplyduplicateanyofthelight
objects—leavingtheminthesamecollection—andrelinkusing
theobjectfieldintheGlobalSettings.BecauseanyVirtualLight
featureyoucreatewillsharethesameGlobalPropertiesby
default,you’llalsoneedtochangetheInstancenamebeforeyou
relinktothenewlightobject.
9
LightningBoyShader2.1-UserGuide
FEATURE2.C OLOR
Thenextfeatureswillallowyoutoaddoradjustcoloronyourmaterial—whetherbysimply
addingasinglelayerofcolor,importinganimagetexturepaintedinanotherprogram,adding
detailsusinganalphatexture,orevenpaintingacomplexmulti-layeredtexturedirectlyin
Blender.
Color
TheColorfeatureletsyouaddcolorandtexturestoyourmaterial.
NoticethatthebasicLBSmaterialusesoneasthebottomlayerto
setthecoloroftheshadows.WhencombinedwithanAlphaMask,
thisfeaturecanbeusedtoaddextradetailssuchasscratchesor
innerlines.
ImageTexture
Ifyouwishtouseatexturepaintedinanotherprogram,importit
usingS hift-A>Texture>ImageTexture,andconnectittotheColor
1input.Youcannowusethattexturelikeanylayeronthe
LightningBoyShader.Alternatively,youcanconnectthetexture
outputdirectlyinaKeyLight’sColorinput,withouttheneedofaColorfeature.
AlphaMask
Youcanrestrictcolortoaspecificareausinganalphatexture.Todoso,importablackand
whiteimageandconnectittotheAlphaMaskinput.Anythingwhitewillstayopaque,anything
blackwillbecompletelytransparent.AlthoughyoucouldalsoconnectitinOpacity,it’sbestto
usetheAlphaMaskforthispurpose,sothatyoucanstillcontrolthelayer’soveralltransparency.
Layers
ThefullpoweroftheColorfeaturecomes
fromitsabilitytocombinemultiplelayers
ofcolorsandpaintthemrightinBlender.
ToaddlayerstoaColornode,simplyclick
onthenumberatthetoplikeyouwould
ontheLightningBoyShadernode.These
layersworkmuchthesame,exceptthey
stackcolorsasopposedtoLBSfeatures.
NoticehowtheColorfeatureonlyhas
yellowandgreyinputsontheleftside—thatmeansthoseareforcolorinformationonly.The
ColorfeaturecombinesthemintoasinglelayerwhichcanthenbeconnectedtotheLightning
BoyShaderviathegreenoutput.
10
LightningBoyShader2.1-UserGuide
PaintingT
exturesW
ithM
asks
Topaintamulti-layeredtexture,createablackandwhiteImageTextureanduseitasamaskfor
eachnewlayer.YoucanduplicatethemusingS hift-D,andthenconnectthemviathe└──
inputs.I tisimportanttousetheyellowoutputsoftheImageTexturenodes,eventhoughthey
areconnectedto└──inputswhicharegrey.Wewillbepaintingblackandwhitemasks,butitis
stillcolorinformation.NotethatonlytheAlphaMaskpropertycanchangethealphachannelof
theColorfeatureasawhole.The└──inputswillmasktheassociatedlayersofcolorsbutthey
willalwaysberestrictedbytheAlphaMask.
Topaintthetexturemasks,changetheModetoT exturePaintatthe
topleftofthemainviewport.ThenpressN andswitchtotheT ool
panel.YoushouldseeallyournewlycreatedmasksintheT exture
Slotssection.Theeasiestwaytopaintmasksistouseawhitecolor
topaintwith,andblackasthesecondarycolor.Thatway,you’llbe
abletouseC trlt oerase.Atanytime,youcanswitchtoadifferent
masktopaintadifferentcolor.TheS paceandL ineS
trokeMethods
aregreatforpaintingmasks,andtheF alloffp ropertywillletyou
achieveasmootherorsharperedge.
Onceyouarehappywiththeresult,m akesure
tosaveyourmaskstonotloseanyworkwhen
youcloseBlender.Changetheviewtothe
ImageEditor(S hift-F10),selecteachtexture
onebyone,anddoImage>SaveAs.Oncethey
havebeensavedsomewhereonce, youcan
easilysaveallyourtexturesatthesametime
usingImage>SaveAllImages.
11
LightningBoyShader2.1-UserGuide
LayerA
djustment
TheLayerAdjustmentfeatureismeanttobeinsertedinbetweenanotherfeatureandthe
LightningBoyShadertoadjustitscolororalphainformation.Todoso,simplydrag-and-dropthe
LayerAdjustmentnodeontheconnectingline—theg reensockets willconnectautomatically.
ItworksexactlylikeStylesinthatregard,whichwe’llexplorelater( F
eature6.Styles,p.18).
ThisfeatureisusefulwhenusedincombinationwithI mageTextures—asetupwouldbeto
connecttheColoroutputtotheyellowinputofaKeyLight,andthenuseaLayerAdjustmenton
aColorfeaturetomakeadarkerversionforthelayerunderneath.Thisway,youcaneasily
controlthedarknessandcoloroftheshadows.Seetheexamplebelow.
Color:U setheColorpropertyalongwithT inta
ndFilltoadjustthecolorsofyourtexture.Tint
willmixthecolordefinedaboveinoverlaymodeontotheoriginalcolor.Fillwillreplacethe
originalcolorwithit.
BrightnessandSaturation:BringBrightnessdownifyouwanttomaketheshadowsdarker.You
canalsouseSaturationtoadjustcolorsifneeded.
MaskSoftnessandRange:Thesepropertieswilladjustthealphainformationoftheconnected
featureonly.Itdoesn’thavemuchuseifyouconnectasimpleImageTexture,butifyouconnect
aKeyLightfeaturetotheLayerAdjustmentinstead,withsomealphatexturepluggedinits
Opacity,thenyoucanusethesetwopropertiestocrunchthealphavalues.
GlobalC olor
TheGlobalColorfeatureismadeupofasingleColorandOpacityproperty,bothcontainedinits
GlobalSettings.Thefeaturecanbeusefulforparticulareffectswhereyouwanttoaffect
multiplematerialsatonce.Itcanbeusedasastand-alonelayerconnecteddirectlyinthe
LightningBoyShadernode,orconnectedtoanotherfeature’sColorinputusingtheColoroutput.
WhenyoucreateaGlobalColor,remembertopressTABoryouwon’tseeanyproperties.
12
LightningBoyShader2.1-UserGuide
FEATURE3.O CCLUSION
YoucanaddAmbientOcclusiontoyourmaterialstwoways:eitherbyusinganexistingtexture,
orbyusingthereal-timescreen-spaceocclusionfromEevee.
AmbientO
cclusion( Baked)
TheAmbientOcclusion(Baked)featureismeant
tobeusedwithablackandwhiteimagetexture.
ClickonOpentoimportyourbakedocclusion,or
chooseatexturealreadyinyourscene.Youcan
thenadjusttheR
angeandS oftnessinthe
materialproperties.TheC olorinputwillletyou
controlwhatcolortheambientocclusion
appears,incaseyouwantsomethingotherthan
black.
AmbientO
cclusion( SS)
TousetheAmbientOcclusion(SS)feature,
connectittoanyopensocketoftheLightningBoyShaderanda ctivateAmbientOcclusionin
theRenderProperties.AdjusttheD istanceasneeded.Thisocclusionwillreactdynamicallyto
yourobjectsmovinginthescene,somethingthebakedimagescannotdo.However,notethat
theS oftnesspropertieswon’tbecomeassharpaswithabakedtexture.Youcanadjustthe
numberofS amplesintheRenderPropertiesofyourscene.
Transparency:A mbientOcclusion(SS)isnotcompatiblewithAlphaBlendtransparency.
HoweveritstillworkswithAlphaHashed.( Transparency,p.25)
13
LightningBoyShader2.1-UserGuide
BakingA
mbientO
cclusioninC
ycles
Itcanbeusefultocombinebothtypesofocclusiononthesamemodel,aseachonehas
differentstrengthsandweaknesses.TobakeanambientocclusiontextureinCycles,follow
thesesteps.
1. Placeallofyourobject’sUVsinthesameUVSpace.Itiscommontousemultiple
texturesforasinglecharacter(boots,face,hands,torso,etc),eachwithahighresolution
texture.However,itcanbetedioustobakeocclusionforeachoftheseelementsoneby
one,soonewaytogoarounditistomakeanewUVmapjustfortheambientocclusion.
Todoso,gotoO
bjectDataProperties>U VMap,andclickonthe+ button.Then,select
yourentireobjectinE ditMode,gototheU
VEditor,anddoU
V>PackIslands.
2. Exportyourcharactertoanewscenewithjustagroundplane.M akesurethatnoother
objectsarepresentinthesceneortheywillinteractwiththeocclusionbake.
3. ApplyaPrincipledBSDFMaterialt oyourobjectandr emoveallmodifiers.S pecifically
makesuretoremovetheSolidifyOutlineifyouareusingone.
4. IntheShaderEditor,createanemptyImageTexture.Y oucanleaveitunconnected—this
iswherethebakedocclusionwillgo.PressNew,andselectthedesiredAOresolution.
Forthefinalbaking,useahighresolutiontexture(atleast4096x4096).Youcanusea
smallertextureatfirsttomakesurethatthebakingworks,asbakingwithhighsettings
cantakealongtime.
5. ChangetheRenderertoCycles.IntheBake
option,makesuretochangetheBakeType
toAmbientOcclusion.
6. WithyourImageTextureselected,click
Bake.W henthecalculationsaredone,the
ImageTextureyouselectedshouldnowbe
filledwiththebakedocclusion.
7. Tosavethebakedocclusion,switchtothe
ImageEditor( Shift-F10),selectyourtexture,
andclickImage>Saveas.Youcannowuse
theresultingtexturewiththeAmbient
Occlusion(Baked)feature.
14
LightningBoyShader2.1-UserGuide
FEATURE4.2 DEFFECTS
The2Deffectsfeaturesareuniqueinthattheyarecalculatedinscreen-space.Thatmeansthey
willlookthesamenomatterhowyouorientthecamera.
2DO utline
ThisOutlinefeaturecanbeusedtogenerateanoutlinearoundyourmesh.Anotherwaytomake
anoutlineistouseaSolidifymodifier( AddSolidifyOutline,p.23) Bothmethodscancombine
nicelyifthe2DOutline’sColorvalueisthesameastheSolidifyoutlinematerial.The2DOutline
offerssomeinterestingoptionsnotavailableusingtheSolidifyoutlinetechnique,suchas
havingalightdynamicallyaffecttheOutline’ssize.However,notethatsinceitisnormal-based,it
isbettersuitedfororganicobjectsandwillnotgivegoodresultsonsharp,squaresurfaces.
Influence
ThispropertycontrolshowmuchaLight
willinfluencethe2DOutline.Toactivate
thisoption,connecttheoutgoingM ask
(greysocket)f romanyLightfeaturetothe
└── input.Fromhereonout,the
Influencevaluewillbeaddedtothe
Outline’sRangevalue—apositivevaluewill
makeitbigger,andanegativevalue
smaller.UsetheS oftnessandR angevalue
oftheconnectedLighttomakea
smootherormoreabrupttransition.Inthe
eventthatyouwanttousethesameLight
astheoneilluminatingyourobject,but
withdifferentSoftnessandRangevalues,simplyduplicatetheLightfeaturebeforeconnectingit
inthe└ ── input.
2DR imL ight
The2DRimLightfeaturewillilluminatetheedgeofyourobjectbasedona
specifiedvectordirection.Sincethiseffectiscalculatedfromthecamera,
theRimLightwillalwayspointinthesamedirection,evenifyourotatethe
view.
Rotation
TheX,YandZrotationvaluescanbeusedtochangetheorientationofthe
RimLight.
15
LightningBoyShader2.1-UserGuide
2DS
pecular
The2DSpecularfeatureallowsyoutomakeaspecularthatwillalways
befacingthesamedirectioninrelationtothecamera.Justlikewiththe
normalSpecularfeature,youcaneasilystackmultipleSpeculars:simply
duplicatethe2DSpecularnodeswithS hift-Da
ndaddthemontopofone
anotherontheLightningBoyShadernode.T heO
ffsetXandYv aluescan
beusedtomovetheSpecularintherightposition.
Matcap
Matcapstandsfor“MaterialCapture”.Itwasdevelopedtoeasilyaddshadingandreflectionsto
anobjectwithouthavingtouseanylights.Itisagreattooltogeneratecheatedreflectionson
materials.
Preset:T heshadercomeswithoneMetallicmatcapbydefault,butyoucanchangethetexture
atanytimebychoosingC ustomTextureinsteadandimportinganymatcapofyourchoice.
UseAsAlpha:Thispropertyisonbydefault,andtransformsyourmatcapimagetextureintoa
grayscalealphamask,givingyoucontrolovertheC olor,Range,Softness.Turningitoffwill
leaveonlyO pacityworking—thisisusefulifyouwanttoretainallthecolorinformationfromthe
matcaptexture,butitishardertoblendwithotherfeaturesthisway.
16
LightningBoyShader2.1-UserGuide
FEATURE5.G RADIENTS
Gradientsareversatileutilitynodes—they’reespeciallygreatformaskingotherfeatures,butcan
alsobeusedtoaddextratouchesoflightorfoginyourscene.
LinearG radient
TheLinearGradientfeatureusesanemptyobjecttopositionalinear
gradientin3dspace.TheemptyislocatedintheL ightningBoyShader>
Gradientsc ollection,andcanbes
caledinZtocontrolrange.Theresulting
layerwillbe100%opaqueatthetipofthearrowandtransparentatthe
bottomend.UseaZScalevalueof0togenerateacompletelysharparea.
SphericalG radient
TheSphericalGradientfeatureusesanemptyobjecttopositionaspherical
gradientin3dspace.TheemptyobjectislocatedintheL ightningBoy
Shader>Gradientsc ollection,andcanbes
caledinanydirectiontocontrol
range.Notethatyouwon’tbeabletogenerateasharpareasimplyby
scalinglikewiththeLinearGradient—toobtainasharpersphericalarea,
lowertheS oftnessv aluelocatedintheGlobalSettingsinstead.
LocalG radient
TheLocalGradientgeneratesalineargradientinO bjectCoordinates.That
meansevenifyourobjectmovesinthescene,itwillalwaysfollowitaround.Unliketheprevious
twoGradients,itspositionandorientationarenotcontrolledbyanemptyobjectbutratherby
theO
ffseta ndR otationproperties.
ZD
epth
TheZDepthfeaturecreatesagradientbasedoncameradistance.Itis
limitedbytheS
tartandE
ndvalueslocatedintheGlobalSettings.
AddingM
oreG
radientsint heS
cene
Whenyoumakeanewscene,you’llfindoneLinearandoneSpherical
GradientobjectintheL ightningBoyShadercollection.AnyGradientsyou
createwilllinktothembydefault.Ifyouneedmore,justduplicateanyoftheseobjects,change
theinstancenameintheGlobalSettings,andrelinkusingtheobjectfield,justlikewithVirtual
Lights( A
ddingMoreVirtualLightsIntheScene,p .9)
17
LightningBoyShader2.1-UserGuide
FEATURE6.S TYLES
Stylesareaspecialtypeoffeaturewhichactslikeaneffectmodifieronanexistingfeature.
Theycannotbeusedasastandalonelayer—toapplyaStyle,d rag-and-dropitontheline
connectingafeaturetotheLightningBoyShadernode.Theg reensockets s houldbe
connected.
Stylescanbeusedonanyfeature,althoughlightswillusuallygivethemostinterestingresults.
Theeffectwillbemostvisibleinthegreytransitiontones.Becauseofthis,werecommend
addingsomeamountofSoftnesstotheconnectedfeaturetocreatemoreofatransition.Ifthe
Stylesdon’tseemtowork,makesuretocheckthatyourconnectedfeatureisnotcompletely
sharp.
Stylesonlymodifytheconnectedfeature’salpha.Thecolorinformationwillremainthesame.
HalftoneS
tyle
TheHalftoneStyletransformstheconnectedfeatureintoacomicbook-likehalftonepattern.
Screen-space:ThispropertywillswitchthetexturecoordinatesfromUVtoCameramode.If
activated,thepatternwilllayflatontheobjectasifprojectedfromthecamera.
Repeat:Thispropertycontrolsthenumberofdots.AhigherRepeatvaluewillmakedetailsfiner.
Thickness:Thispropertycontrolsthewidthofeachdot.
Ratio:Thispropertyscalesthedotshorizontallyfrom0to0.5,andthenverticallyfromfrom0.5
to1.WithaRatioof0.5,eachdotwillalwaysbeperfectlyroundinScreen-space,butmightneed
someadjustingifusingUVcoordinates.
18
LightningBoyShader2.1-UserGuide
HatchS
tyle
TheHatchStyletransformstheconnectedfeatureintoaseriesofparallellinesusinganimage
texture.T
ocreateacrosshatcheffect,stackmultipleLayersofHatchstyles.Youcanfinetune
thelookbychoosingadifferentRotationforeachandvaryingtheLight’sRangeandSoftness.
Screen-space:ThispropertywillswitchthetexturecoordinatesfromUVtoCameramode.If
activated,thepatternwilllayflatontheobjectasifprojectedfromthecamera.
Repeat:Controlsthenumberoflines.AhigherRepeatvaluewillmakedetailsfiner.
Thickness:Controlsthewidthofeachline.
Offset:Movesthelinesperpendicularlytothehatchdirection.
Rotation:Changestheangleofthelines.
Distort:Displacesthelinesbasedonanoisetexture.
DistortScale:C ontrolsthescaleofthenoisetextureusedbytheDistortproperty.Hasnoeffect
ifDistortissetto0.
Erode:M akescertainareasofthehatchdisappearbasedonanoisetexture.
ErodeContrast:C ontrolsthesoftnessofthenoisetextureusedbytheErodeproperty.
ErodeScale:C ontrolsthescaleofthenoisetextureusedbytheErodeproperty.Hasnoeffectif
Erodeissetto0.
19
LightningBoyShader2.1-UserGuide
PainterlyS
tyle
ThePainterlyStyletransformstheconnectedfeatureintolayersofpaintdaubsusingatexture.
Preset:Y oucanchoosebetween4 presetbrushstrokesusingthetexturepathmenu.These
canbeeasilyreplacedbyothertexturesofyourchoiceifyouchooseC ustomTextureinstead.
NotethatthecustomtexturemusttileseamlesslyforthePainterlyStyletowork.
Screen-space:ThispropertywillswitchthetexturecoordinatesfromUVtoCameramode.If
activated,thebrushstrokeswilllayflatontheobjectasifprojectedfromthecamera.
Repeat:Thispropertycontrolsthenumberofbrushstrokes.AhigherRepeatvaluewillmake
detailsfiner.
Softness:Thispropertydetermineshowsharptheedgesofyourpaintstrokeswillbe.Toadjust
thesoftnessofthewholeregion,tryplayingwiththeSoftnessontheconnectedfeatureinstead.
Rotation:Thispropertyrotatesthebrushstrokes.
AnisotropicS tyle
TheAnisotropicStyletransformsastandardSpecularfeatureintoanelongatedspecularand
offerssomeoptionstomakeitlooklikehair.
20
LightningBoyShader2.1-UserGuide
TheAnisotropicStyleusesUVcoordinatestoworkcorrectlysoyou’llneedtomakesureto
unwrapthehairsothattheyflowvertically.
UVMap:Ifyouhavealreadyunwrappedandtexturedthehairofyourcharacteranddon’twant
tochangeit,itispossibletoaddasecondUVMapbygoingtoO bjectProperties>UVMaps.You
canthenlinktothatnewmapusingtheUVMapproperty.
Thickness:ThewaytheAnisotropicfeatureworksisitlimitstheoriginalSpecularusingalong
rectangularmask.Forthisreason,itoftenworksbettertousealargeSpecularRange,which
willdrivethehorizontalscalingoftheanisotropic.Toadjusttheverticalscaling,usethe
Thicknessp roperty—avalueof1willrevealtheoriginalspecular,andlowervalueswillshrinkit
verticallytocreateanincreasinglythinstrip.
Softness:Thispropertydetermineshowsharporsoftyouranisotropicwillbe.Avalueof1will
makeitverydiffuse,whileavalueof0willmakeitsharplikeacel-shadedanime.Toadjustonly
thetipoftheanisotropic,modifytheoriginalSpecularSoftnessinstead.
Range:Thispropertycontrolsthesizeoftheanisotropicspecular.
Fade:Thispropertywillfadeouttheanisotropicasitcomesclosertotheedgeoftheobject.It
isactivatedbydefault,withavalueof1.Tomaketheanisotropiccomeallthewaytotheedge,
changetheFadevalueto0.
Stripes:Thispropertywillmaskoutthespecularusingperpendicularstripes.Atlowervalues,
onlyafewthinlineswillbemaskedout.Asyouincreasethevalue,theanisotropicwillgradually
disappear.
Repeat:ThispropertycontrolsthenumberofStripes.AhigherRepeatvaluewillmakedetails
finer.
21
LightningBoyShader2.1-UserGuide
Deform:Thispropertycreateswavepatternsonthespecular.Thestyleofthewavesisdrivenby
theC
omplexityvalue.
Complexity:ThispropertyonlyhasanimpactiftheDeformparameterissettomorethan0.A
highvaluewillmakeitlooklikerealistichairwithveryfinedetails.Lowervalueswillmakeit
morelikestylisedanimehair.
CameraOffset:TheCameraOffsetvaluecanbeadjustedtomaketheanisotropicmove
verticallyalongtheobjectasyourotatethecamera.Ifyouuseavalueof0,theanisotropicwill
alwaysstayinplace.
GeneralOffset:ThispropertyworkssimilarlytotheCameraOffset,exceptthatitoffsetsthe
anisotropicgloballyfromallcameraangles.
ADDITIONALOPTIONS
OntopoftheS
etupBaseSceneandB
aseMaterialbuttons,whichweshowedintheinitialsetup
phase,thereareafewotherautomatedoptionsintheLBSadd-onpanelwhichcanspeedup
certainstepswhenyou’reworkingwiththeshader.
GroundM
aterial
MuchliketheB aseMaterialbutton,thisoneassignsabasicGroundMaterialtotheselected
objectbyreplacingtheactivematerial.ThedifferenceisthattheGroundMaterialusesthe
BackgroundKeyLighttocastshadows,asopposedtotheCharacterKeyLightlikeontheLBS
Material.Withthismaterialappliedonagroundplane,itispossibletoadjustthelightingona
characterwithoutchangingthedirectionofthecastshadowsthemselves.
CleanU pD
uplicates
Ifyouappendmaterialsfromanotherscene,theGlobalSettingswon’tbelinkedanymore,evenif
theInstancesseemtosharethesamename.ThisbuttonwillfixanyconflictingGlobalSettings.
SortS
haderL
ayers
Thisbuttonletsyouchangethelayerorderonthe
selectedLightningBoyShadernode.Itisespecially
usefulwhenyouwanttoinsertanewfeatureatthe
bottomofalargelayerstackanddon’twantto
recompiletheshaderateverystep.Movethelayers
asneededusingtheupanddownarrows,thenclick
OKtocommit.
22
LightningBoyShader2.1-UserGuide
MatchG
lobalS
ettings
TheLightningBoyShadernodecontainsaR GBCurves
adjustmentinitsGlobalSettings,whichyoucantoggleon
andoffwithT
AB.Bydefault,theInstancenameisblank,
whichmeansthatthecurveaffectsalltheLightningBoy
Shadersinyourscene,allowingyoutodolarge-scalecolor
adjustmentsmoreeasily.
ClickingtheAssignLBSCurvesbuttonletsyouassigna
differentGlobalInstancenametoalltheLightningBoyShader
nodesontheselectedobjects.Itisespeciallyusefulwhen
youwanttoadjusttheRGBCurvesonasingleobjector
characterwithoutaffectingtherestofthescene.
TheRGBCurvespropertyalsohasanO pacitys
lider.It
controlshowmuchinfluencetheadjustmenthasoverthe
material.ConnectMasks(suchastheoutputofaLight)to
keepcertainregionsfrombeingaffectedbytheRGBCurves.
AddS
olidifyO
utline
UsingtheAddSolidifyOutlineintheadd-onpanelcanbeusedtoautomaticallyaddatoon
outlinetoyourobjectusingaSolidifymodifier.Althoughthereexistsa2DOutlinefeature( 2D
Outline,p .15),thismethodremainsoneofthemostsimpleandreliablemethodstocreate
outlinesinBlender.Itispossibletocombinebothtypesofoutlinesseamlesslyaslongasthey
usethesamecolor.
23
LightningBoyShader2.1-UserGuide
WhenusingtheAddSolidifyOutlinebutton,choosebetweenthesetwooptions:
1. Clicktoapplyasingleoutlinecolortotheentireobject.
2. HoldShiftandClicktoapplyau niqueoutlinecolorpermaterial.
Ifyouknowyoujustwanttouseablack
outlineeverywhere,simplyclickthebutton.
However,ifyouthinkyoumightwantmore
control,forexamplekeepsomeoutlines
black,butalsousealighterbrowncolor
nexttoyourcharacter’sskin,thenhold
Shiftwhileclicking.
Inbothcases,aSolidifymodifierwillbe
addedontoyourobject,andyou’llbeable
toedittheColorandThicknessrightinthe
LBSadd-onpanel.Tryplayingwiththe
Clampvalueiftheoutlinelooksweirdor
bloated.IfyoulookintheMaterialtab,
you’llseethatoneormultipleLBSmaterial
Outlineshavebeencreated.Ifyouwentfor
thefirstoption,keepthissinglematerialat
thetopofyourmaterialstackatalltimes.TheSolidifymodifierusesaMaterialOffsetof-1000,
soitwillalwayspickthetopone.Ifyouchoosethesecondoption,you’llneedanoutline
materiala boveeachofyourmaterialsb ecausetheMaterialOffsethasbeensetto-1inthis
case.Keepthisinmindasyoumakenewmaterials,asoutlinematerialswillneedtobecreated
manuallyandaddedontopofanynewLBSmaterial.
Makesuretoalwaysk eeptheword“Outline”inthenameoftheoutlinematerialsandthe
Solidifymodifier,asthisisthekeywordtheadd-onlooksfortomakeitappearintheLBSpanel.
IfyoualreadyhaveSolidifyoutlinesappliedtoyourobjectfromapreviousprojectandwantto
transferthemtoLBS2.1,youcansimplyrenamethemsotheyappearintheLBSpanel.
EveryoutlinematerialcreatedthiswayusesaspecialSolidifyOutlinenode.Itiscustom-made
toworkalongsidetheLightningBoyShaderandsupportsfulltransparency( UsingTransparency
withaSolidifyOutline,p.26).ItcanbecreatedatanytimeusingtheS hift-AmenuintheShader
Editor.
24
LightningBoyShader2.1-UserGuide
TRANSPARENCY
LightningBoyShader2.0alreadyuses
transparencytoblendlayerstogether.Thiscanbe
pushedalevelfurtherbyenablingfull
transparencyontheLightningBoyShadernode
itself.Thisallowsallkindsofinterestingeffects,
suchashavinglayersfloatin3dspace.
Toactivatefulltransparency,gotoM aterial
Properties>Settings>BlendMode,andchangeit
fromO paquetoA lphaBlendorAlphaHashed.The
basecoloroftheshaderwillnowbetransparent
insteadofblack,andtwonewpropertieswill
appearontheLightningBoyShadernode.
AlphaMask:Thispropertywillmakecertainparts
ofyourobjecttransparentbasedontheblackand
whitevalueconnectedtoit.There’snolimitto
whatyoucanconnecthere—theMaskoutput
fromaGradient,analphatexture,a2DOutline
mixedwithaPainterlyStyle—becreative!
ShaderOpacity:Thissliderwillmaketheentireshadercompletelyorpartiallytransparent.
ShadowM
ode
ChangetheS hadowModetoA lphaHashedifyouwant
castshadowstotaketheshadertransparencyinto
account.ItislocatedrightunderB
lendModeinthe
MaterialSettings.
Limitations
AlphaBlendisn’tcompatiblewithS SAmbientOcclusion.AlphaHashedshouldbeusedasa
BlendModeifyouneedscreen-spaceambientocclusiononyourobject.
25
LightningBoyShader2.1-UserGuide
UsingT
ransparencyw
itha
S
olidifyO
utline
IfyoudecidetouseaSolidifymodifiertogenerateoutlinesforyourtransparentobject(A
dd
SolidifyOutline,p .23),youneedtomakesuretoactivatetransparencyontheoutlinematerialas
well.ItworksthesamewayaswiththeLightningBoyShadernode,allyouhavetodoischange
theB lendModeintheM aterialProperties.
Makesuretoduplicateanynodesusedasmasksonbothmaterials:forexample,let’ssayyou’re
usingaGradienttohidepartsofyourobject,thenduplicatethatsamegradientintheoutline
materialandconnectittotheAlphaMask.
TECHNICALSUPPORT
Foranyfeedback,support,orifyouencounterbugsorerrorswhileusingtheshader,reachusat
team@lightningboystudio.comandwe’llbehappytoassistyou.Wehopeyou’llhavefunusing
thisshaderinyourprojects,anddon’tforgettosubscribetoourY
ouTubechannelforadditional
tipsandtricks!
26