Wolna encyklopedia

Houdini (pełna nazwa Houdini 3D Animation Tool) to zaawansowany program do animacji komputerowej rozwijany przez Side Effects Software z siedzibą w Toronto, Canada. Zasadniczą cechą programu, odróżniającą go od innych pakietów, jest jego czysto proceduralna natura.

Houdini obejmuje większość zagadnień związanych z produkcją grafiki trójwymiarowej:

Podobnie do innych programów tego typu, Houdini jest środowiskiem otwartym, umożliwiającym używanie kilku popularnych języków skryptowych, takich jak Tcl/Tk. Houdini posiada również swój własny język, podobny do C Shell, czyli Hscript. Od wersji 9.0 Houdini obsługuje także język Python (za pomocą nowego API o nazwie HOM), który zastąpić ma Hscript w przyszłych edycjach programu.

Elementy sceny (Digital assets) tworzone są w Houdinim za pomocą serii operatorów (tzw. OPs) składanych w łańcuchy. Taki proceduralizm ma kilka zalet: pozwala konstruować wysoce skomplikowane obiekty geometryczne i organiczne w stosunkowo malej ilości kroków, umożliwia nieliniowy rozwój sceny (w każdej chwili możemy wrócić do dowolnego etapu pracy i poprawić go); nowe operatory można także tworzyć z już istniejących. Ta możliwość jest ciekawą alternatywą dla wykorzystania języków skryptowych w aplikacjach 3D do dostosowania ich możliwości do swoich potrzeb. Houdini używa tego paradygmatu we wszystkich miejscach programu: do mapowania tekstur, tworzenia i aplikacji shaderów, poprzez symulacje cząsteczkowe i animacji, aż do procesu renderingu i kompozycji.

Operatory Houdniego dzielą się na kilka grup (tzw. kontekstów):

Operatory łączą się w łańcuchy zwane "sieciami" (networks) lub "drzewem operatorów". Informacje wewnątrz operatorów podawane są kolejnym elementom, które modyfikują i posyłają dalej. Dane te mogą przy tym reprezentować geometrię 3D, bitmapy [bitmapa]], cząsteczki, informacji o siłach i parametrach dynamiki, zmienne reprezentujące własności powierzchni w shaderach, krzywe animacji a nawet dźwięk lub wszelkie kombinacje powyższych. Podobny schemat działania zastosowano wi wielu aplikacjach graficznych takich jak kompozytor Shake lub Nuke.

Skompilowane sieci można grupować tworząc jeden meta-operator do wielokrotnego wykorzystania w tej i w następnych scenach. Proces ten umożliwia użytkownikom tworzenie własnych wysoce narzędzi bez potrzeby programowania. W istocie OPeratory nie są niczym innym jak graficznym (visual) oraz interaktywnym językiem programowania dostępnym dla artystów.

Houdini jest wyjątkowo bogatym programem a jego niezliczone narzędzia egzystują w kilku kontekstach. Nakłada to niestety większe wymagania na początkującego użytkownika. Houdini ma z tego powodu opinię wyjątkowo trudnego, ale wszechmogącego programu.

Houdiniego może pracować na różnorodnych danych wejściowych. Dostępne są między innymi: urządzenia MIDI, surowe dane ASCII albo pochodzące z protokółu TCP, urządzenia audio (włączając w to wbudowaną detekcję fenomów oraz wysokości tonu), urządzenia wskazujące (mysz) itd. Houdini potrafi także generować muzykę i dźwięk przestrzenny. Między innymi do tego służy kontekst "CHOP", za który w roku 2002 firma Side Effects Software otrzymała "Technical Achievement Academy Award" - czyli Oscara za osiągnięcia techniczne.

VEX (Vector Expression) jest jednym z języków skryptowych Houdiniego. Jest podobny do języka RSL, czyli standardu zdefiniowanego przez firmę Pixar w specyfikacji Renderman. RSL jest językiem opisu własności powierzchni, który służy programom zgodnym ze powyższą specyfikacją do obliczania koloru powierzchni w trakcie renderingu. VEX nie ogranicza się do tego użycia. Poza tworzeniem shaderów powierzchni, świateł i cieni, umożliwia bowiem pisanie własnych operatów SOPs, POPs, CHOPs i COPs. Obecna implementacja VEX wykorzystuje także architekturę SIMD

Historycznie Houdini wykorzystywany był głównie przy animacji efektów cząsteczkowych, natomiast za jego główną słabość uważano animację postaci. W rezultacie używano go niemal wyłącznie przy pracach nad efektami specjalnymi. Ostanie wersje programu wprowadziły jednak wiele usprawnień w dziedzinie animacji. Houdini użyty był już w kilku filmach do pracy nad postaciami, takich jak The Wild - duża produkcja The Walt Disney Company, jak również Ant Bully.

Houdini sprzedawany jest z wysokiej klasy rendererem do zastosowań filmowych, Mantrą, który podobnie jak w przypadku języka VEX, ma wiele podobieństw do programu Pixar PhotoRealistic RenderMan. Jednym z dostępnych trybów pracy jest rendering mikro-poligonalny, umożliwiający wykonanie wysokiej jakość odkształceń powierzchni w trakcie renderingu (displacement). Mantra pracuje także w trybie scan-line oraz ray-tracing. Shadary dla Mantry powstają w VEX, lub są konstruowane graficznie za pomocą operatorów VOP. Mantra (podobnie jak sam Houdini) obsługuje również tzw. point-clouds, które umożliwiają efektywne obliczenia efektów takich jak subsurface scattering] czy ambient occlusion. Mantra posiada także tryb volume rendering (renderowania gazów, chmur etc), oraz tzw. Physically Based Rendering - czyli technikę opartą na fizycznym modelu światła.

Historia wersji

Linki zewnętrzne

Źródło: „haslo,Houdini_(program)