Dlaczego rendering się zawiesza, wywala lub trwa bardzo długo? Poradnik - 3ds Max

Data publikacji: 25-04-2018  |  Data aktualizacji: 31-03-2020  | Autor: Mateusz Ciećwierz

Dlaczego rendering się zawiesza, wywala lub trwa bardzo długo? Poradnik - 3ds Max


Jeśli wykonujesz wizualizacje to jest bardzo duża szansa na to, że prędzej czy później napotkasz problemy z wieszającym się renderem. Sytuacje mogą być różne, ale zazwyczaj kończą się tym samym, czyli brakiem możliwości przeliczenia renderu. Czasami po kliknięciu przycisku Render program potrafi od razu się zawiesić, czasami w połowie procesu liczenia, a innym razem może zatrzymać się na pewnym etapie liczenia i już na nim pozostać.

Jako użytkownik 3ds Maxa będę opisywał tutaj sytuacje, które pojawiają się w tym programie, ale jestem pewien, że wiele z nich może się powtarzać niezależnie od wykorzystywanego oprogramowania. Rady, które przeczytasz w tym artykule prawdopodobnie da się wykorzystać w każdym innym oprogramowaniu 3d.

3ds Max zawiesza się - dlaczego?

Warto zacząć od tego, że obecnie nowsze wersje 3ds Maxa są dużo bardziej stabilne niż jeszcze te sprzed około 6-7 lat. Wersje 2012, 2013 potrafiły się po prostu zawieszać podczas pracy w programie bez żadnego powodu i nie było na to żadnej recepty. W tym tekście skupię się jednak na sytuacjach, gdy program zawiesza się ewidentnie podczas renderowania i jakie mogą być tego przyczyny. Jeśli napotkamy taki problem to warto zadać sobie kilka pytań.

Czy w scenie są materiały z innych silników renderujących?

Jeśli np. korzystamy z V-raya, to trzeba unikać sytuacji gdy w naszej scenie są materiały np. Standard, Arch&Design, Corona lub jakiekolwiek inne. Jest szansa, że mając takie materiały w scenie render policzy się, ale jest bardzo duża szansa na to, że będzie liczył się dłużej, mogą pojawić się jakieś dziwne kolorowe plamy lub proces renderowania będzie się zawieszał.
Jak najprościej zapobiec takiej sytuacji? Można korzystać z różnych skryptów, które pozwolą nam w automatyczny sposób przekonwertować chociaż część materiałów. W wypadku V-raya istnieje narzędzie - V-Ray Scene Convenventer, które umożliwi przekonwertowanie np. materiałów typu Standard lub Corona.

Dlaczego rendering się zawiesza, wywala lub trwa bardzo długo? Poradnik - 3ds Max - 01

Jeśli np. importujemy scenę z innego programu, to prawdopodobnie będą znajdować się w niej różnego rodzaju materiały. Najprostszym rozwiązaniem jest w tym wypadku zaznaczenie wszystkich obiektów i przypisanie im jednego zwykłego materiału V-ray. Mamy wtedy 100% pewność, że nie nie ukryje się przed nami jakiś inny materiał.

Czy w scenie są światła z różnych silników renderujących?

Podobnie jak w sytuacji z materiałami musimy unikać łączenia ze sobą świateł V-ray, Corona, Standard itp. Chociaż w wypadku świateł typu Standard mamy możliwość ustawienia go tak by współgrał z V-rayem. Bardzo łatwo dodać do swojej sceny kilka niechcianych świateł np. wraz z modelami z zewnętrznych bibliotek, więc warto zwrócić na to od razu uwagę gdy je dodajemy. W przeciwieństwie do materiałów wszelkiego rodzaju światła bardzo łatwo odnaleźć w scenie. Wystarczy, że na początek użyjemy opcji “Unhide all” by mieć pewność, że wszystkie elementy są widoczne, a następnie możemy włączyć listę obiektów i sprawdzić czy znajduje się na niej jakieś niechciane oświetlenie.

Przykład różnego typu świateł w jednej scenie widocznych na liście:Dlaczego rendering się zawiesza, wywala lub trwa bardzo długo? Poradnik - 3ds Max - 02

Czy w scenie są modele z zewnętrznych bibliotek?

Korzystanie z różnego rodzaju gotowych modeli jest nieuniknione. Wielokrotnie zdarzy się również, że będą to modele nie do końca wykonane w profesjonalny sposób. Jak najbardziej prawdopodobne jest, że cała scena może zacząć się wieszać podczas renderowania i nie tylko przez np. jeden model lampy lub innego obiektu. Co możemy zrobić w takiej sytuacji? Jeśli mamy podejrzenia, że render nie chce się liczyć właśnie z tego powodu, to polecam skasować wszystkie podejrzane modele i spróbować wtedy przeliczyć wizualizację. Jeśli nic to nie da, to proponuję skasować kolejną część sceny. i tak w kółko aż uda się ustalić, o który model chodzi. Nie jest to najszybsza metoda, ale niestety czasami jest to jedyne rozwiązanie.

Czy mam wystarczająco dużo pamięci RAM?

Ok, a co w sytuacji gdy jesteśmy pewnie, że wszystkie światła, materiały i modele są w porządku, a mimo tego render nie chce się liczyć? Może się to objawiać np. tym, że proces liczenia Light Cache trwa dużo dłużej niż zazwyczaj lub gdy w ogóle obliczenia trwają w nieskończoność. Może również się zdarzyć, że sam render liczy się dużo dłużej niż zazwyczaj lub po prostu scena się zawiesza np. w połowie. W takim wypadku istnieje bardzo duża szansa, że brakuje nam pamięci RAM. Jest bardzo prosty sposób by to sprawdzić. Podczas procesu liczenia się naszej sceny możemy włączyć Menadżer zadań (klikając np. Ctrl+Alt+Delete) i zobaczyć jak wygląda zużycie naszego procesora i pamięci.


Jeśli wygląda podobnie do przykładu powyżej to wszystko jest w porządku. Czyli procesory (wątki) pracują na 100% swoich możliwości, a pamięć RAM nie jest wykorzystywana w 100%. To co może nas zaniepokoić to sytuacja, gdy zużycie procesorów bardzo się waha np od 20-30%, a pamięć ram wykorzystana jest w 100%. W takim wypadku prawdopodobnie będzie nam też bardzo ciężko zrobić cokolwiek na komputerze ponieważ będzie reagował bardzo wolno i ciągle się zawieszał na kilka lub kilkanaście sekund.

Co to znaczy i co możemy z tym zrobić? Prawdopodobnie mamy w naszej scenie za dużo poligonów (np. ciężkich modeli jak drzewa), za dużo wykorzystaliśmy tekstur o b.dużych rozdzielczościach typu 4k lub korzystamy z Displacement (opcja ta bardzo lubi spowalniać render). Są dwie drogi w takiej sytuacji. Albo staramy się optymalizować naszą scenę, albo zwiększamy pamięć ram, którą posiada nasz komputer. Naturalnie tańszą i lepszą opcją będzie optymalizacja sceny. Jeśli wyrobimy w sobie odpowiednie nawyki to prawdopodobnie uda nam się znacznie ograniczyć ilość wymaganej pamięci RAM. Kilka wskazówek dotyczących optymalizacji sceny znajdziecie w tym artykule “10 rad jak przyspieszyć działanie programu 3ds Max”. Głównie warto się skupić na wykorzystywaniu V-ray proxy ponieważ to zazwyczaj umożliwia nam zaoszczędzenie bardzo dużo pamięci. Ewentualnie korzystanie z mniejszych tekstur tam gdzie nie jest to potrzebne, ale nie będzie to aż tak odczuwalne jak np. zamienienie kilku drzew na V-ray proxy. Oczywiście może się zdarzyć, że mamy po prostu bardzo ciężką scenę i sama optymalizacja nie rozwiąże problemu. W takim wypadku pozostaje nam dokupienie kilku dodatkowych kości pamięci.

Mam nadzieję, że te wskazówki pomogą wam uniknąć problemów w postaci wieszających się renderów, a nawet jeśli je napotkacie, to że uda się je szybko rozwiązać.

Jeśli ten tekst pomógł Ci rozwiązać podobny problem to daj znam znać w komentarzach poniżej.

Zachęcamy również do zapoznania się z naszymi kursami online z programu 3ds Max, które znajdziesz pod tym adresem.

Pozdrawiam! :)

Autor

Mateusz Ciećwierz Architekt, grafik 3d

Absolwent Wydziału Architektury Politechniki Warszawskiej. Założyciel serwisu CG Wisdom. Autor ponad 25 kursów z oprogramowania 3ds Max i V-ray. Fan gier, komiksów i starych samochodów.

Przeczytaj o programie 3ds Max na naszym blogu

Chcesz poznać program 3ds Max? Sprawdź nasz darmowy kurs online!