Z pojęciem renderowania spotykamy się bardzo często – mówiąc chociażby o filmach czy grach wideo. Co to tak dokładnie znaczy?
Czym jest więc komputerowy rendering? W dużym skrócie, tworząc jakikolwiek produkt cyfrowy – film, program, grę czy nawet stronę internetową, wytwór ten zawsze zapisywany jest w postaci tekstowej. Mówimy tutaj o odpowiednim kodzie komputerowym.
W taki sposób nie można tego jednak przedstawić użytkownikowi. Żeby mógł się cieszyć danym produktem, trzeba wpierw przerobić go z kodu na formę wirtualnego obrazka. To właśnie nazywamy renderowaniem. Zazwyczaj, odpowiada za to specjalny program komputerowy lub część programu nazywana mechanizmem renderującym, silnikiem renderującym lub rendererem. Omówione zostaną teraz mechanizmy i sposoby renderowania w różnych mediach cyfrowych.
Renderowanie to proces, który ściśle kojarzy nam się z filmami i grami komputerowymi. Mało osób jednak wie, że zachodzi on też w przypadku stron internetowych. Co więcej, nie jest to w żaden sposób naciąganie tego pojęcia – renderowanie zachodzi tu w podobny sposób, jak w przypadku innych treści.
Stronę internetową pisze się zazwyczaj w języku HTML lub XHTML. Języki te pozwalają na wprowadzenie treści czy ustalenie podstawowych parametrów. Przykładowo, można w nich stworzyć przycisk, którego kliknięcie odsyła użytkownika na określoną inną stronę.
Nie można już jednak ustalić ani rozmiaru ani koloru tego przycisku, nie mówiąc już o bardziej zaawansowanych parametrach, jak podświetlenie po najechaniu myszą. Inaczej mówiąc, nie można określić jak strona powinna się renderować. Tutaj z pomocą przychodzą tak zwane arkusze stylów. Są to osobne pliki, które wykorzystują język CSS. Określić w nich można niemal wszystkie parametry, które odpowiadają za wygląd poszczególnych fragmentów danej strony internetowej.
Jest to zdecydowanie bardziej popularny kontekst, w którym wykorzystuje się słowo rendering/renderowanie. Ktoś mógłby tutaj jednak zapytać: zaraz, właściwie co tu trzeba renderować? Przecież jak nagram film, to mam go od razu w formie wizualnej.
Częściowo jest to prawda. W momencie, gdy nagramy film (na przykład wspomnienie z wakacji nagrane telefonem) to często nic więcej z tym filmem nie trzeba robić. Możemy przecież zgrać taki film na komputer i do woli go sobie odtwarzać. Wyrenderować go trzeba w momencie, gdy planujemy wprowadzić w nim jakiekolwiek zmiany. Po dodaniu dodatkowych elementów, skorygowaniu kolorów czy po prostu zwykłym pocięciu i montażu klipów, trzeba to potem wszystko „skleić” i przetworzyć na jeden gotowy plik. Mówiąc prościej: trzeba to wyrenderować.
Tu też mamy do czynienia z renderowaniem. Polega ono w tym przypadku na dokonaniu przez przez program pewnych obliczeń i przełożenia podanych informacji na trójwymiarową scenę.
Współcześnie coraz większą popularność zdobywa tzw. Ray Tracing. Technologia ta polega na analizie torów padania promieni światła i skupianiu się na tych, które powinny zostać zaobserwowane przez użytkownika. Umożliwia to osiągnięcie niemal idealnego fotorealizmu trójwymiarowych scen. Zajmuje za to bardzo pokaźne ilości mocy obliczeniowej.
Ray Tracing spotkamy obecnie między innymi w grach komputerowych czy filmach animowanych. W tych pierwszych osiągnięty został za pomocą technologii opracowanej przez firmę NVIDIA. Mowa tu oczywiście o Real Time Ray Tracing, lub inaczej RTX.
Zdjęcie główne: Souro Souvik/unsplash.com