When nothing rendersKiedy nic się nie renderuje
The good news about a black render is that it's almost always a connection rather than a value. Nothing in a Lama graph is off by default, so if the whole material has disappeared, the light isn't being turned down somewhere — it's being dropped.
Dobra wiadomość o czarnym renderze jest taka, że to niemal zawsze połączenie, a nie wartość. Nic w grafie Lamy nie jest domyślnie wyłączone, więc jeśli cały materiał zniknął, światło nie jest gdzieś przykręcane — ono jest gubione.
The graph never reaches LamaSurface. Every Lama material node describes a response to light, but only LamaSurface hands that response to the renderer — it's the plug, and a graph without it is a set of parts nothing ever asks for. Follow the chain from your last operator and make sure it ends there.
Graf nigdy nie dociera do LamaSurface. Każdy węzeł materiału Lama opisuje odpowiedź na światło, ale tylko LamaSurface przekazuje tę odpowiedź rendererowi — to wtyczka, a graf bez niej to zestaw części, o które nikt nigdy nie pyta. Prześledź łańcuch od ostatniego operatora i upewnij się, że kończy się właśnie tam.
A Lama graph is a chain, not a row of switches. Deleting a material node at the end of a branch removes one lobe; deleting an operator in the middle cuts everything below it off from LamaSurface at once. When you want a lobe gone, delete the leaf and rewire whatever fed that junction straight through.
Graf Lamy to łańcuch, nie rząd przełączników. Usunięcie węzła materiału na końcu gałęzi zabiera jeden płat; usunięcie operatora w środku odcina naraz wszystko poniżej niego od LamaSurface. Gdy chcesz pozbyć się płata, usuń liść i przepnij to, co zasilało ten węzeł, prosto dalej.
The right nodes, the wrong way roundWłaściwe węzły, źle połączone
These are the expensive ones, because nothing errors. Every node in the graph is a legitimate material, every wire lands on a real input, and the render comes back looking like a material — just not yours. The node editor cannot tell you that a piece of wood has been laminated onto the underside of a sheet of varnish.
To te kosztowne, bo nic nie zgłasza błędu. Każdy węzeł w grafie jest prawidłowym materiałem, każdy przewód trafia w prawdziwe wejście, a render wraca, wyglądając jak materiał — tylko nie twój. Edytor węzłów nie powie ci, że kawałek drewna został zalaminowany na spodzie arkusza werniksu.
What you built, and what you meantCo zbudowałeś, a co miałeś na myśli
Three graphs that look reasonable in a node editor. The broken wiring is on the left, the correction on the right.
Trzy grafy, które w edytorze węzłów wyglądają rozsądnie. Błędne połączenia po lewej, poprawka po prawej.
All three graphs contain the correct nodes. That's the point — a Lama material can be built out of exactly the right parts and still be wrong, because the parts carry no memory of which way round you meant them.
Wszystkie trzy grafy zawierają właściwe węzły. I o to chodzi — materiał Lama można zbudować z dokładnie właściwych części i wciąż mieć go źle, bo części nie pamiętają, w którą stronę je zaplanowałeś.
LamaLayer's two inputs got swapped — the substrate went in as the top material and the coat as the base. Nothing complains, because both are perfectly valid materials in either slot. The top input is the thing you'd touch if you ran a finger across the surface; wire it that way round.
Dwa wejścia LamaLayer zostały zamienione — podłoże trafiło jako materiał górny, a powłoka jako baza. Nic nie protestuje, bo oba są całkowicie poprawnymi materiałami w każdym z tych slotów. Górne wejście to ta rzecz, której dotknąłbyś, przesuwając palcem po powierzchni; tak to podłącz.
A branch that isn't wired into anything still sits in the graph looking finished. If the base went into an operator you later abandoned, or into an input you've since re-plugged with something else, it never reaches LamaSurface and the coat renders alone over nothing. Trace backwards from the surface, not forwards from the nodes — that way you only ever walk wires that actually arrive.
Gałąź, która nie jest do niczego podłączona, wciąż siedzi w grafie i wygląda na skończoną. Jeśli baza poszła do operatora, który potem porzuciłeś, albo do wejścia, w które od tamtej pory wpiąłeś coś innego, nigdy nie dociera do LamaSurface, a powłoka renderuje się sama nad niczym. Śledź wstecz od powierzchni, nie w przód od węzłów — wtedy chodzisz wyłącznie po przewodach, które naprawdę dochodzą.
Layers that fight each otherWarstwy, które walczą ze sobą
The graph is wired correctly and every node is the one you wanted. What goes wrong now is arithmetic between layers: two of them doing the same job, or one quietly taking light the other needed.
Graf jest podłączony poprawnie i każdy węzeł jest tym, którego chciałeś. To, co teraz idzie źle, to arytmetyka między warstwami: dwie robiące tę samą robotę albo jedna po cichu zabierająca światło, którego druga potrzebowała.
The base kept a reflection of its own after a LamaDielectric coat went on top of it. In a fixed stack a specular slot is always present and always yours to fill, so it's easy to arrive in Lama still filling it — but a coat is a reflection, and the thing underneath usually wants to be the matte or metallic part only. Take the reflection out of the base and let the coat do that job.
Baza zachowała własne odbicie po tym, jak nałożyłeś na nią powłokę LamaDielectric. W stałym stosie slot na specular jest zawsze obecny i zawsze do twojego wypełnienia, więc łatwo trafić do Lamy, wciąż go wypełniając — ale powłoka jest odbiciem, a to, co pod nią, zwykle ma być wyłącznie częścią matową albo metaliczną. Wyjmij odbicie z bazy i pozwól, żeby zrobiła to powłoka.
That's the coat doing its job. LamaLayer gives the base only the light the top didn't take, and it treats an emissive base the same way — a lacquer over a glowing panel really does dim it. If the glow is meant to sit on top of the material rather than under it, this is the one place LamaAdd is the honest answer rather than the dangerous one.
To powłoka robi swoje. LamaLayer daje bazie tylko to światło, którego nie wzięła góra, i tak samo traktuje bazę emisyjną — lakier na świecącym panelu naprawdę go przygasza. Jeśli poświata ma siedzieć na materiale, a nie pod nim, to jedyne miejsce, gdzie LamaAdd jest uczciwą odpowiedzią, a nie niebezpieczną.
Each layer takes its share before anything below it sees the light, so coats compound: the second one doesn't halve what reaches the base, it takes its cut of whatever the first one already left. Two glossy layers over a diffuse base can leave the base contributing almost nothing, which reads as a material that has gone strangely dark. Ask whether that second coat is a real physical layer or a highlight you could have got from the first.
Każda warstwa bierze swój udział, zanim cokolwiek pod nią zobaczy światło, więc powłoki się nakładają: druga nie połowi tego, co dociera do bazy — bierze swoją część z tego, co pierwsza już zostawiła. Dwie błyszczące warstwy nad matową bazą potrafią sprawić, że baza nie wnosi prawie nic, co czyta się jako materiał, który dziwnie pociemniał. Zapytaj, czy ta druga powłoka to prawdziwa fizyczna warstwa, czy rozbłysk, który dało się wyciągnąć z pierwszej.
It renders, it's just wrongRenderuje się, tylko źle
The last group are the ones that survive a look-through. The material renders, it holds together, and something about it is off in a way that's hard to point at — usually because a decision you made once is only being applied to part of the graph.
Ostatnia grupa to te, które przechodzą pobieżne obejrzenie. Materiał się renderuje, trzyma się kupy, a coś w nim jest nie tak w sposób trudny do wskazania — zwykle dlatego, że decyzja, którą podjąłeś raz, stosuje się tylko do części grafu.
Bump in a Lama graph is per node — LamaDiffuse, LamaConductor and the rest each carry their own bump input. Wire a map into one of them and the others keep shading against the smooth geometric surface, which reads as detail that only half exists. Feed the same map to every node in the stack, unless you mean the difference: a smooth coat over a bumpy base is exactly what varnish does.
Bump w grafie Lamy jest per węzeł — LamaDiffuse, LamaConductor i reszta mają własne wejście bump. Podłącz mapę do jednego z nich, a pozostałe dalej cieniują się względem gładkiej geometrii, co czyta się jako detal istniejący tylko w połowie. Podaj tę samą mapę każdemu węzłowi w stosie — chyba że chodzi ci właśnie o różnicę: gładka powłoka na nierównej bazie to dokładnie to, co robi werniks.
LamaSSS measures in real-world distances, which means the scale your scene is modelled at is part of the result — the same trap Mean Free Path sets, in a different node. Carrying numbers across from another material carries the numbers but not the assumptions around them. The subsurface deep dive covers what those distances actually mean.
LamaSSS mierzy w rzeczywistych odległościach, co oznacza, że skala, w jakiej modelowana jest twoja scena, jest częścią wyniku — ta sama pułapka, którą zastawia Mean Free Path, tylko w innym węźle. Przeniesienie liczb z innego materiału przenosi liczby, ale nie założenia wokół nich. Dogłębna analiza subsurface tłumaczy, co te odległości naprawdę znaczą.
Every material node in the stack is another lobe the renderer has to sample at each hit, so layers multiply the work rather than dividing it. A three-node graph is cheap; a graph you kept adding coats to in order to solve look problems is not. If a layer exists because a value was hard to dial in rather than because the material physically has it, it's worth deleting.
Każdy węzeł materiału w stosie to kolejny płat, który renderer musi próbkować przy każdym trafieniu, więc warstwy mnożą pracę, zamiast ją dzielić. Graf z trzech węzłów jest tani; graf, do którego dokładałeś powłoki, żeby rozwiązać problemy z wyglądem, już nie. Jeśli warstwa istnieje dlatego, że trudno było dobrać wartość, a nie dlatego, że materiał fizycznie ją ma, warto ją usunąć.
Checking a graph before you blame itSprawdzanie grafu, zanim go obwinisz
In a fixed stack you debug by scanning parameters. In a graph you debug by walking wires, and the order matters — every step below is cheap and rules out an entire class of problem before you touch a value.
W stałym stosie debugujesz, przeglądając parametry. W grafie debugujesz, chodząc po przewodach, a kolejność ma znaczenie — każdy krok poniżej jest tani i wyklucza całą klasę problemów, zanim dotkniesz jakiejkolwiek wartości.
- Follow the chain to LamaSurface before you touch a value. Most black renders and missing layers are a wiring problem, and no amount of parameter tweaking fixes a branch that never arrives.
- Plug one material node straight into LamaSurface at a time. A lobe you can see on its own is a lobe you can judge. This is the fastest way to find out which node is actually wrong, and it costs you one connection.
- At every junction, say the operator out loud. Mix puts materials in different places, Layer puts one over another, Add sums them at full strength. If the sentence you just said isn't the material you wanted, that's your bug.
- On every Layer, confirm which input is top and which is base. Swapped inputs never error and rarely look obviously wrong — they look slightly off, which is the hardest kind of wrong to chase.
- Only now start changing numbers. If the graph is right and it still isn't the material, that's a look problem — and look problems are worth solving with values rather than with more nodes.
- Prześledź łańcuch do LamaSurface, zanim dotkniesz jakiejkolwiek wartości. Większość czarnych renderów i brakujących warstw to problem połączenia, a żadna ilość kręcenia parametrami nie naprawi gałęzi, która nigdy nie dochodzi.
- Podłączaj po jednym węźle materiału prosto do LamaSurface. Płat, który widzisz osobno, to płat, który możesz ocenić. To najszybszy sposób, by dowiedzieć się, który węzeł naprawdę jest zły, a kosztuje cię jedno połączenie.
- Przy każdym węźle wypowiedz operator na głos. Mix kładzie materiały w różnych miejscach, Layer kładzie jeden na drugim, Add sumuje je z pełną siłą. Jeśli zdanie, które właśnie wypowiedziałeś, nie jest materiałem, którego chciałeś, to jest twój błąd.
- Przy każdym Layerze potwierdź, które wejście jest górne, a które to baza. Zamienione wejścia nigdy nie zgłaszają błędu i rzadko wyglądają wyraźnie źle — wyglądają lekko nie tak, a to najtrudniejszy rodzaj błędu do ścigania.
- Dopiero teraz zacznij zmieniać liczby. Jeśli graf jest poprawny, a to wciąż nie ten materiał, to problem z wyglądem — a problemy z wyglądem warto rozwiązywać wartościami, nie kolejnymi węzłami.
This page is about graphs. The pitfalls that live in a node's parameters — Add against Layer as an energy question, which way a LamaMix mask runs, why a tinted coat needs Top Thickness, and what happens to a metal built from the wrong node — are in the comparison guide, alongside a light-budget widget at Mix vs Add vs Layer that shows the energy arithmetic directly.
Ta strona jest o grafach. Pułapki mieszkające w parametrach węzła — Add kontra Layer jako pytanie o energię, w którą stronę biegnie maska LamaMix, dlaczego zabarwiona powłoka potrzebuje Top Thickness i co się dzieje z metalem zbudowanym ze złego węzła — są w przewodniku porównawczym, obok widgetu budżetu światła w sekcji Mix kontra Add kontra Layer, który pokazuje arytmetykę energii wprost.
PxrSurface vs Lama
What Lama is, how its nodes map onto the PxrSurface stack, and how to tell which of the two a job actually needs.
Czym jest Lama, jak jej węzły mapują się na stos PxrSurface i jak rozpoznać, którego z tych dwóch naprawdę wymaga dane zadanie.