Está en la página 1de 14

Unity5MaterialeseIluminacin

IluminacinGlobal(GI)
EltrminoIluminacinGlobal,seutilizaparadenominaraunsistemaquemodelaelrebote
delaluzenotrassuperficiescercanas(luzindirecta),enlugardelimitarsesloalaque
incidedirectamentedirectamenteenunasuperficie(luzdirecta).
Dichamodelizacinpermiteunavisualizacinmsrealistayhomogneadebidoaqueunos
objetosafectanalaaparienciadeotros.
Estatcnica,tradicionalmentelimitadaapelculasdeanimacin,sehacomenzadoautilizar
tambinenlosvideojuegossloparaobjetosquesesabequenosevanamoverdurantela
ejecucindeljuego(objetosestticos),permitiendocalculardemaneraanticipadala
iluminacinmedianteLightmaps(
BakedGI
).
Unity5aadesoporteparaunatcnicallamada
PrecomputedRealtimeGI,
quecontina
necesitandodeunafasedepreclculoysigueestandolimitadaaobjetosestticosaligual
que
BakedGI
,peroqueademshaceunpreclculodetodoslosposiblesrebotesdelaluz
yguardaestainformacinparasuusodurantelaejecucindeljuego.
Tngaseencuentaquelailuminacinfinaldurantelaejecucindeljuegoseaplicadeforma
gradual,demaneraqueuncambiomuybruscoenlascondicionesdeiluminacin,
necesitarvariosdeframesparahacerseefectivo.

LimitacionesdeGI
BakedGI
y
PrecomputedRealtimeGI
tienenlalimitacindequeslosepuedenincluirenel
preclculoobjetosestticos,demaneraquelosobjetosnoestticos,nopuedenhacerque
laluzreboteenotrosobjetosniqueotrosobjetosrebotenluzsobreellos,ylanicamanera
deconseguirloesmedianteelusodeLightProbes.

LightingWindow
ObjectTab
Permiteelegirobjetosogruposdeobjetosycambiarsuconfiguracinenbloquedemanera
consistente.
SepuedeelegirentreLuces,MeshRenderers,TerrenosoTodos.

LightsSection
Baking

Baked,Establecequelaluzserbaked.
Mixed,dondelaluztambinserbakedparaobjetosestticosperoigualmente
iluminarobjetosnoestticos,aunquestosnoproducirnsombrassobreobjetos
estticos.
Realtime,quefuncionaenPrecomputedRealTimeGIy/ocuandonoseutiliceGIen
absoluto.

BounceIntensity
Varalaintensidaddelaluzindirecta.Siseponeacero,sloemiteluzdirecta.

RenderersSection
LigthmapStatic
Indicasielobjetoserbaked(static).Sinosemarcacomoesttico,suiluminacinpuede
sufrirvariacionesdebidaalaslightprobes.

ScaleinLightmap
Sielobjetoesesttico,sepermitevariarsuparticipacinrelativaenlaescaladellightmap,
segnsealaimportanciadedichoobjeto.

SceneTab
MientrasqueObjectTabafectaaobjetosdeformaindividual,SceneTabcontienelos
parmetrosqueaplicandeformadeglobalalaescena.Lascaractersticas
Precomputed
RealTimeGI
y
BakedGI
puedenserdesactivadas.

EnvironmentLightingSection
SkyBox
Imagenqueaparecedetrsdecualquiercosaparasimularunfondolejano.

Sun
UtilizadoparasimulareldiscosolarenSkyboxprocedural.

Ambientsource
Laluzambientalenvuelveatodalasescenayparecenoprovenirdeningunafuente
luminosaparticular.Haytresopciones:

Color.Uncoloruniformeparatodalaescena.
Gradient.Mezclainterpoladadetrescoloresparalaluzdelcielo,elhorizonte,yel
suelo.
Skybox.Usaloscoloresdelskyboxparadeterminarlaluzquellegadesdediferentes
ngulos,deunamaneramsprecisaqueelefectoGradiente.

AmbientIntensity.
Elbrillodelaluzambientalenlaescena.

AmbientGI
EspecificaelmododeGI(PrecomputedRealtimeoBaked)quesedeberautilizarpara
manipularlaluzambiente.Estapropiedadnotieneefectosinosehabilitanambosmodos
paralaescena.

ReflectionSource
Permiteespecificarsiseutilizarelskyboxparacalcularlosefectosdereflexinose
utilizaruncubemappersonalizado.

ReflectionIntensity
Elgradoenelquelafuentedereflexin(skyboxocubemappersonalizado)servisibleen
objetosreflectivos.Candosuvalores1(pordefecto),provocanotablescambiosenelbrillo
aparentedelassuperficies,enfuncindelngulodeobservacinentrelacmarayel
objetoobservado.

ReflectionBounces
Unrebotedelaluzreflejadaocurrealldondeunareflexinprovenientedeunobjetoes
reflejadaporotroobjeto.Dichasreflexionessoncapturadasatravsdelusodesondasde
reflexin.Estapropiedadpermiteestablecercuantasvecesestareflexinvayvuelveentre
unobjetoyotro.Siseponea1,slosetieneencuentalareflexininicial(delskyboxo
cubemappersonalizado)

PrecomputedRealtimeGISection
Realtimeresolution
Estoestableceelnmerodetexelquesernutilizadosporunidaddelongitudparaobjetos
queestnsiendoiluminadosporiluminacinglobalentiemporeal.Dependiendodeltamao
delobjeto,unvalorde1sueledarbuenosresultados,peroparaunterrenooungranobjeto,
usualmentesedeseabajarlaescaladelaresolucin.Sepuedeutilizartantolos
Lightmap
Parameters
o
ScaleinLigthmap
delMeshRendererparareducirlaresolucin.Esta
propiedadtambindesactivalaresolucinindirectasiambosRealtimeyBakedGIestn
activos.

BakedGISection
BakedResolution
Estoestableceelnmerodetexelquesernutilizadosporunidaddelongitudparaobjetos
queestnsiendoiluminadosporBakedGI.Sesueleestablecerunaresolucin10veces
mayorquelaRealtimeresolution

IndirectResolution
Resolucindelosclculosdeiluminacinindirecta.EselequivalentebakeddeRealtime
resolution.SlodisponiblecuandoPrecomputedRealtimeGIestinactiva.

FinalGather
Aumentalaresolucinycalidaddellightmap,peroacostadeunmayortiempodebakingen
eleditor.

GeneralGISection
Directionalmode
Ellightmapalmacenalainformacinacercadelaluzpredominanteenlaluzquellegaa
cadapuntodelasuperficiedelosobjetos.Enmododireccional,segeneraunsegundo
ligthmapparaalmacenarladireccindominantedelaluzquellegaaesassuperficies.Esto
permitequelosmaterialesconmapasdenormalesfuncionencorrectamentecon
iluminacinglobal.EnDirectionalSpecularMode,sealmacenainformacinadicionalque
permitereflexionesespeculares.EnNondirectionalambasopcionesmencionadasse
desactivan

IndirectIntensity
Setratadeunvalorqueescalaelbrillodelaluzindirectatalycomoespercibidaenel
lightmapfinal.

BounceBoost
Multiplicadorqueincrementalacantidaddeluzquerebotadeunassuperficiesaotras.

Defaultparameters
Permiteguardarelconjuntodevaloresdelosparmetrosenunficherodeconfiguracino
utilizarunperfilpordefecto.

ReflectionProbes
Laspelculasdeanimacinsecaracterizancomnmenteporofrecerunsistemade
reflexionesaltamenterealistasquedanunasensacindevinculacinentrelosobjetosdela
escena.Estaprecisinenlasreflexionessuponeuncostedeprocesamientoquenoesun
problemaenelmbitodeunapelcula,perosloesenelmundodelosvideojuegos,yaque
elusodeobjetosreflectantesentiemporealseveseveramentelimitado,esporestoquese
hanutilizadomapasdereflexinparasimularlasreflexionessobrelosobjetos.Aunqueesto
funcionasielespaciocircundantedeunobjetoreflexivonocambia,serompeelrealismoen
elmomentoenelquecambiaelentorno.
Lassondasdereflexinpermitenmuestrearelentornoenlugaresestratgicosdela
escena.Cuandolosobjetosreflexivospasancercadedichassondas,tomandeellassu
mapadereflexiones(cubemap)yloaplicansobreelmapadereflexionesdesupropio
material.

Cubemapgeneradoporunasondadereflexin

Hayvariostiposdesondasdereflexin,tantoestticas(elcubemapesbakedoffline)como
dinmicas(seactualizaentiemporeal).Lasondastrabajandeunamaneraparecidaa
comolohacenlascmaras,pudiendoexcluirdemaneraselectivaciertosobjetosmediante
losparmetrosCullingMaskyClippingPlanes.

CuandoseeligelaopcinAutoenlaventanadeIluminacin,lassondasactualizarnde
maneraasncronasumapadereflexionesamedidaquesemuevanlosobjetosdela
escena.

Materiales
Unity5introduceunnuevotipodeshaderllamadoStandardshader.Esteshaderest
diseadoparareemplazarunbuennmerodeviejosshadersutilizadosenversiones
anterioresdeUnity.Demaneramssignificativa,reemplazaatodoslosshadersqueeran
utilizadospararenderizarmaterialesdelmundoreal,talescomomadera,piedra,metal,etc.
Envezdeutilizarutilizarmltiplesmodelosamedidaquepodranfuncionarono(
Diffuse,
Specular,BumpedSpecular,Reflective,etc.),
laideaquehaydetrsdePBSesalcanzarun
aspectovisualconsistenteyplausiblebajodiferentescondicionesdeiluminacin,almismo
tiempoqueseminimizasudificultaddeutilizacin.
Conelstandardshader,losdiferentesrequerimientosnecesariospararepresentar
diferentestiposdematerialesendiversascondicionesdeiluminacinsecombinanenunun
nicoshader,loquepermiteutilizarlosmismosclculosdeiluminacinentodaslasreas
delaescena,loqueofreceunadistribucindelaluzysombrascreble,consistentey
realistaatravsdetodoslosmodelosqueutilicenesteshader.
Endefinitiva,cuandoseutilizaesteshader(eselshaderpordefecto)paracrearunnuevo
material,yanoesnecesarioelegirentreunalargalistadeshadersdisponiblesquesoporten
diferentestiposdecaractersticas(reflexivos,transparentes,bump,etc)Elstandardshader
lassoportatodas,ydichascaractersticassonactivadasono,simplementemediantela
utilizacin(ono)delosslotsdetexturasyparmetroseneleditordelmaterial.
ElshaderstandardtambinincorporaunmodelodeiluminacinllamadoPhysicallyBased
Shading(PBS)quesimulalainteraccinentrelosmaterialesylaluzquemimetizala
realidad.PBShasidoposibleenelmundodelosgrficosentiemporealdesdehace
relativamentepocotiempoyalcanzasumximorendimientoensituacionesdondelaluzy
losmaterialesnecesitaninteractuardemaneraintuitivayrealista.
Paraalcanzarestosresultadosseutilizandiferentesprincipiosfsicosdelaluz,comosonla
conservacindelaenerga,dondelosobjetosnoreflejanmsluzdelaquereciben,
reflexionesFresnel,dondetodaslassuperficiessonmsreflectivasabajongulode
incidenciaycmolassuperficiesseocluyenasmismas.
ElstandardshaderhacequelosmaterialesPBSseanmuyaccesiblesparalosusuariosde
Unity.Estdiseadodesdeelpuntodevistadelosmaterialesarquitecturalesduros,y
puedesimularalamayoradelosmaterialesdelmundorealtalescomopiedra,cristal,
cermica,metal,goma,etc.Puedeinclusohacerunpapelaceptablealahorade
representarmaterialesblandos,comopiel,cabelloytela.

ContentandContext
CuandoseconsideralailuminacinenUnity,estilsepararelcontenido(content),esdecir,
elobjetoarenderizar,yelcontexto(context),queeslailuminacinyaexistenteenla
escenayqueafectaracmoseriluminadoelobjeto.
Debidoalainteraccinentrelosdiferentesobjetosdelaescena,nohayunseparacin
drsticaentreelcontenidoyelcontexto,yaqueunobjetoqueseveafectadoporun
contexto,puedeasuvezinfluenciarenotrosobjetos,conlocuallmismopuedeserparte
delcontextodeiluminacinparaellos.

Contexto
Elcontextopordefectoestformadoporelskyboxcomofuentedeluzambientalyfuente
dereflexiones,yporunaluzdireccionalparacrearlailuminacinglobaldelaescena,de
maneraquecualquierobjetocolocadoenunaescenainicialmentevacatengatodoslos
elementosnecesariosparavisualizarsecorrectamente.
Aunqueelskyboxpuedeserparteintegraldelsetupdeiluminacindelaescena,sobretodo
enescenasexteriores,amenudosenecesitacontrolardemaneramsprecisalas
reflexionesdeunobjetoparaquereflejedemanerafielsuentornoparticular.Paraellose
utilizanlassondasdereflexin,quemuestreanunpuntodeterminadodelaescenayaplican
alosobjetoscircundanteselmapadereflexionesadecuadoalentorno.Losmeshrenderers
delosobjetossepuedeentoncesajustarparaobtenerelmapadereflexionesdelskybox,
delasreflectionprobesounamezcladeambos.

Contenido
Elcontenidoeseltrminoutilizadoparadescribirlosobjetosdelaescenaqueestnsiendo
renderizadosycuyaaparienciaeselresultadodeuncontextodeiluminacinqueacta
sobrelosmaterialesaplicadosalosobjetos.
Laconfiguracinserealizaatravsdelinspectordelmaterialdelobjeto,dondeseexponen
todoslosparmetros,incluyendotexturas,modosderenderizado,mscaras,mapas
secundarios,etc.ElStandardShaderestdirigidoporlosdatosdeentrada,demodoque
sloseutilizanaquellascaractersticasquenotenganelslotdetexturavaco.Elprocesode
optimizacinestransparenteparaelusuario.
Lastexturasparalosmaterialessepuedengenerarmedianteuneditordeimgenes2Do
medianteunprogramademodelado3D,dondeinclusosepodranutilizarmodelosdealta
resolucinparagenerarmapasdeoclusinynormalesdemaneraadicionallastexturasde
color,especular,etc.
Generalmenteningunadelastexturasdeberancontenerinformacindeiluminacin.Una
delasventajasdelosmaterialesPSBesquelosobjetosreaccionanalaluzdelamanera
esperada,loquenoseraposiblesilosmapasyacontuvieseninformacindeiluminacin.

OcclusionCulling
Occlusionculling
esunacaractersticaquedeshabilitaciertosobjetosenlaescenacuando
nosonvisiblesparalacmaradebidoaqueestnsiendoocluidosporotros.Estonoocurre
demanerapredeterminada,yaquesiempresedibujanprimerolosobjetosmslejanos,y
losmscercanossevanpintandoencimadeaquellos(aesteefectoseledenomina
overdraw
).
Occlusionculling
esunconceptodiferentede
FrustrumCulling,
elcualslo
desactivalosmeshrenderersdeaquellosobjetosqueestnfueradelfrustrumdela
cmara,peroquenonodeshabilitaaquellosestnocultosdebidoa
overdraw
.Utilizar
OcclusionCulling
seaadealbeneficiodel
frustrumculling.

Vistanormal
:

Vistaconoclusindefrustrum.Estoesautomticoysiempreocurre:

VistaconOcclusionCulling.Provocaque,adicionalmente,losobjetosocluidosnoserendericen:

ElprocesodeOcclusionCullingutilizaunacmaravirtualparacrearunajerarquade
objetospotencialmentevisibles.Estainformacinesutilizadaposteriormenteporcada
cmaradeljuegoparaidentificarquesvisibleyqunoloes,reduciendoelnmerode
drawcalls
eincrementandoelrendimientodeljuego.
LainformacindeOcclusionCullingestbasadaenlasubdivisinenceldasdelaescena.
Estaestructuradeceldasformaunrbolbinario,yUnitycreadosdeestasestructuras,una
paraobjetosestticos(
ViewCells)
yotraparaobjetosmviles(
TargetCells)
.
Esimportantetenerencuentaquealcrearlosobjetosdeljuegosedebeequilibrarel
tamaodedichosobjetosenrelacinaltamaodelasceldas.Loidealesquelasceldasno
seandemasiadopequeascomparadasconeltamaodelosobjetos,ytampocose
deberantenerobjetosqueocupenmuchasceldas.
Avecessepuedemejorarelprocesodecullingdescomponiendolosobjetosgrandesen
otrosmspequeos,ysinembargo,seguiragrupandoconjuntamentepequeosobjetos
parareducirelnmerodedrawcalls,yaquemientrastodosdependandelamismacelda,el
procesodeocclusioncullingnoseverafectado.Estosepuedeapreciarmejorutilizandola
vistaoverdraw

ConfigurarOcclusionCulling
LaconfiguracindeOcclusioncullingnecesitaqueserealicenvariospasosdemanera
manual.Loprimeroesdescomponerlaescenaenpiezassuficientementemanejables.
Tambinestildisponerlaescenaenreaspequeasybiendefinidasqueestnocluidas
porotrasquetengangrandesobjetostalescomomurosoedificios.Laideaesquecada
mallaindividualseaactivadaodesactivadabasadaendatosdeoclusin.Siporejemplohay
unobjetoquecontienetodoslosmueblesdeunahabitacin,escasiseguroqueninguno
serocluido,porloquetendramssentidoquelasmallasdelosmueblesfueran
individuales,demaneraquepuedanserocluidasenfuncindelpuntodevistadela
cmara.
Sedebenetiquetarcomo
OccluderStatic
losobjetosdela
escenaquesedeseenocluir.Lamaneramsrpidadehacer
estoesmediantemultiseleccin,ymarcarloscomo
Occluder
Static
y
OccludeeStatic
.
Cuandosedeberaseleccionar
OccludeeStatic?
Losobjetos
transparentesquenoocluyen,ascomoobjetospequeosque
difcilmenteocluyanaotros,deberansermarcadoscomo
Occludees
,peronocomo
Occluders.
Estosignificaquesern
consideradosocluidosporotrosobjetos,peronosernconsideradoscomo
oclusores(
occluders
)ellosmismos,loqueayudarareducirelclculodeoclusin.

VentanadeOcclusionCulling
PararealizarlamayoradelasoperacionesinvolucradasconOcclusionCulling,sedebera
utilizarlaventanadeOcclusionCulling,dondesepuedetrabajartantoconmallasoclusoras
comoconreasdeoclusin.

PestaaObject
EnlapestaadeObjetossetieneaccesoaloselementosdeconfiguracinrelevantespara
losmeshrenderersqueestnseleccionadosenlaescena:

Tambinpermiteconfigurarlasreasdeoclusin:
Conrespectoalasreasdeoclusin,demanera
predeterminada,sinosecreanstas,losclculosde
oclusinsernaplicadosatodalaescena.
Sisecrean,losclculosdeoclusinnosernaplicados
cuandolacmaraseposicionefueradeellas.Es
importanteconfigurarlasreasdeoclusinparacubrir
aquellaszonasdondepotencialmentepodrasituarsela
cmara,teniendoencuentaquecuantomsgrandesea
elrea,loscostesdelclculosernmayores.

Pestaabake
Estapestaaposeeunbotn
SetDefaultParameters
quepermitenresetearalosvalores
predeterminados.Estosvaloressuelenseradecuadosparalamayoradelasescenas,

aunqueamenudosepuedenconseguirmejoresresultadosajustandolosvalorespara
adecuarlasaloscontenidosdelaescenaconcreta.
Elparmetro
SmallestOccluder
defineeltamaodel
objetooclusormspequeo.Pordebajodeesevalor,no
seefectuarnclculosdeoclusin.
SmallestHole
representaeltamaodelhuecoms
pequeoatravsdelcualsesuponequepuedeverla
cmara.Pordebajodeesevalor,seaplicarnclculosde
oclusinapesardequepudiesenhaberhuecos.
ElsistemadeOcclusionCullingutilizaelparmetro
BackfaceThreshold
paraoptimizarlosclculosde
oclusin,eliminandodetallesinnecesariosacercadelas
carasposterioresdelosobjetos.Elvalorpredeterminado
de100esbastanteconservadorynuncaeliminalas
carasposterioresdelconjuntodedatos.Unvalorms
agresivo,porejemplo5,reducirdrsticamentelosdatosbasadosenposicionescon
objetoscuyascarasposterioresseanvisibles.Laideaesquenormalmentelacmarano
vermuchascarasocultas,porejemplolacaraposteriordelterrenooelinteriordeun
slidoinaccesible.
Elbotn
Bake
darcomienzoalprocesodeclculodeoclusin,quecuandotermine,
permitirvisualizaryprobarelresultadoenlapestaadevisualizacin.Sidichoresultado
nofuesesatisfactorio,sepulsarelbotn
Clearp
araborrarlosclculospreviamente
realizados.

OcclusionArea
Paraaplicar
OcclusionCulling
aobjetosmvilessedebecrearun
OcclusionArea
y
modificarsutamaoalespaciodondeestarnsituadoslosobjetosmviles,quepor
supuesto,nopodrnestarmarcadoscomoestticos.Las
OcclusionAreas
secrean
aadiendouncomponente
OcclusionArea
aunGameObjectvaco,ymarcandolaopcin
Is
TargetVolume
.

Laopcin
IsViewVolume
definedndepuedeestarlacmara.Sisemarca,seocluirnlos
objetosestticosdentrodelrea.
Unavezaadidaelrea,elvolumensedividirenceldas.Paravercmosecalcula,
seleccionar
Edit
ypulsarenlaopcin
ViewVolumes
enelpanelde
OcclusionCulling.

Probandolaoclusin
Despusdeconfigurarlaoclusin,sepuedeprobaralhabilitar
OcclusionCulling
enelpanel
de
preview
ymoviendolacmaraporlaescena.
Amedidaquesemuevelacmara(seestonoen
Play
),se
puedeapreciarcmolosobjetossedesvanecen.Sepueden
detectarerroressisevenobjetosqueaparecenderepenteal
moverlacmara.Siestoocurriese,sepuedesolucionarbien
cambiandolaresolucin(siseestnmanejando
Target
Volumes
),bienmoviendoligeramentelaposicindelosobjetos
problemticos.
Cuandoelprocesodeclculotermina.sepodrnobservarunaseriedecuboscoloreados
enelrea.Loscubosazulesrepresentanlasdivisionesdeceldaspara
TargetVolumes.
Los
cubosblancosrepresentanlasdivisionesdeceldaspara
ViewVolumes.
Siseestablecieron
losparmetroscorrectos,seapreciarquealgunosobjetosnoserenderizan.Estoes
porqueobienestnfueradelfrustrumdelacmaraobienestnsiendoocluidosporotros
objetos.
Cuandoseconcluyelaoclusin,sinoseapreciaquehayanadaqueestsiendoocluido,se
deberaintentarsubdividirlosobjetosdelaescenaenpiezasmspequeas,demanera
quepuedanocuparcompletamentelasceldasenlasqueelreaestsubdividida.

OcclusionPortals
Seutilizanparacrearprimitivasquepuedenabrirseo
cerrarseentiempodeejecucin,atravsdeunscript
porejemplo.

También podría gustarte